Test an Outpay Checkout Integration Locally
Validate an Outpay payment adapter locally across API, webhook, expiry, and reconciliation layers without trusting browser redirects or fake blockchain claims.
Test layers
- Unit-test request serialization and error mapping.
- Mock
POST /api/v1/checkoutsand assert a stable idempotency key is sent. - Test a simulated timeout followed by an identical retry, and confirm the response is replayed rather than duplicated.
- Test a signature mismatch, a stale timestamp, and a duplicate delivery ID.
- Test the full
checkout.paidpayload against a disposable order database. - Run migration and test commands only against a disposable PostgreSQL instance — never a shared or production database.
bun run db:migrate
bun run test
bun run buildThe application repository also documents a local Redis workflow and a port-3001 browser smoke test. A public tunnel is needed to exercise the real provider-webhook path locally; there is no turnkey tunnel command in the verified source — see testing.
No test network exists
Do not represent a testnet or a fake USDC token as supported. The verified catalog is Base mainnet and the native USDC contract only.
Related documentation
- Testing — the broader test-environment reference.
- Production checklist — what to confirm once these tests pass.
Handle Expired Outpay Checkouts and Late Payments
Recover safely when a customer sends USDC after an Outpay checkout expires, preserving transaction evidence and avoiding false fulfilment.
Outpay Production Checklist for USDC Checkout Integrations
Review credentials, payment matching, webhook reliability, operational controls, and beta limitations before accepting real customer orders.