Skip to main content
Subscribe to the settlement events below and treat each one as a prompt to read the resource. GET /v2/partners/config reports the event catalog and delivery policy for your deployment under capabilities.webhooks; read it at startup.

Act on these events

Intermediate settlement worker states are internal and are never delivered to partner endpoints. If you need finer granularity than these events give you, poll the payment or the deposit instead.

Handle every event the same way

1

Verify, then dedupe

Verify the signature over the raw body, then deduplicate on the event id under a unique constraint in the same transaction as your business update.
2

Read the resource

Derive your effect from a fresh GET, not from the payload. A duplicate or out-of-order delivery then converges on the same answer instead of corrupting it.
3

Return fast, process after

Return a 2xx quickly and do the work asynchronously.
4

Alert on abandonment

A failed delivery retries. An abandoned one does not, and only helps if someone is watching.
An endpoint with an empty subscribedEvents receives every public partner event for the environment. Narrow it deliberately, and make your consumer ignore unknown event names rather than throwing, because new events are added over time.

Rehearse these cases in sandbox

Sandbox runs the same verification, state machine and reconciliation as production. Start by confirming the account can settle at all: a null profile means it cannot be named as a payment recipient or issued a deposit address.
Run each case against the state your production code will actually be in. A case that passes because you were watching the database is not a pass.

Some paths cannot be rehearsed

Environments covers what else is isolated and what to prove before you switch a base URL.

Next: Webhooks

The full event catalog, signature verification and retries.