Reconciliation is the recovery path when a browser return, API timeout, webhook delay, or out-of-order event leaves your local state uncertain. It must be safe to run repeatedly.

Daily reconciliation

  1. List payments, transactions, refunds, invoices, and disputes for the time window.
  2. Match each record to your order or account using stored resource IDs and metadata.
  3. Compare amount, currency, status, and timestamps.
  4. Retrieve ambiguous resources by ID and record the request ID.
  5. Queue unmatched or contradictory records for review.

Safe repairs

Repair local projections from authoritative resources and verified events. Never create a replacement payment to repair an unknown result, never fulfill an amount that does not match your order, and never erase an unmatched record without an audit trail.