USDC payment reconciliation with webhooks
Connect onchain confirmations to order IDs, fulfillment, accounting records, and exception handling.
Give every payment an internal reference
Create a unique payment reference linked to the cart, invoice, customer, currency amount, token amount, wallet, network, and expiration time. This becomes the bridge between your application and the blockchain transaction.
Treat webhooks as notifications
Verify webhook authenticity, process events idempotently, and fetch authoritative payment status before fulfillment when appropriate. Networks can be delayed, so model pending, confirmed, expired, underpaid, and failed states explicitly.
Build an audit trail
Store the order ID, transaction hash, confirmed amount, token, network, timestamps, and status changes. Keep manual review paths for mismatched amounts and document a separate refund transaction when funds must be returned.