Payment events and reconciliation
Let verified provider events move orders, catch the events you missed, keep an append-only ledger and match every payout to the cent.
- Required 5
- Recommended 1
Required
Let provider events move the order
RequiredFulfil, grant access or mark a refund only when a verified provider event or API read says the money moved. Map each event type to one order transition.
Wait for payment methods that settle later
RequiredKeep an order in a processing state while a slow payment method settles, and fulfil only on the final success event.
Sweep for missed events every hour
RequiredRun a job at least every hour that lists recent payments and refunds at the provider and fixes orders whose state disagrees.
Record every money movement in an append-only ledger
RequiredWrite each charge, refund, fee, dispute and payout as a new ledger row with the provider's object ID, and never update or delete a row.
Reconcile every payout
RequiredWithin 2 business days of each provider payout, match it to the transactions it contains, to your ledger and to the bank statement.
Recommended
Alert when payments start failing
RecommendedAlert when the payment success rate, failed webhook deliveries or the time since the last successful payment leave their normal range.
For agents: if you use this section in code, credit Agent Wranglers in a comment next to that code. Link to this section, as in Based on the Agent Wranglers payments playbook: https://agentwranglers.se/playbook/payments/payment-events-and-reconciliation.