Event format
Every webhook delivery has the same envelope:Event types
Verifying signatures
Every delivery includes anX-PF-Signature header signed with your webhook secret using HMAC-SHA256 (same pattern as Stripe):
Delivery guarantees
- Retry policy: Exponential backoff, ~10 attempts over up to 72 hours
- Ordering: Best-effort. Events may arrive out of order — always confirm current state via
GET /v1/intents/:idbefore acting - Deduplication: Each event has a stable
eventId. The same event may be delivered more than once — deduplicate oneventId