A payment integration is a distributed system with money in it. Most production incidents come from a small, well-known set of mistakes, and all of them are avoidable at integration time.
Always send an idempotency key
Networks time out. Clients retry. Without an idempotency key on create requests, one retry becomes one duplicate payout. With it, the retry safely returns the original result.
Treat webhooks as the source of truth
The synchronous API response tells you a request was accepted, not that money moved. Final state should always come from a signature-verified webhook, processed idempotently, with the endpoint responding quickly and doing heavy work asynchronously.
Reconcile daily anyway
Even with perfect webhook handling, a scheduled reconciliation against the platform's transaction report catches the rare gap before a customer does.
Talk to our payment team about your markets.
Contact Us