Create a test invoice
Use a unique invoice reference and invoice lines for every test.
Testing
Use Test mode, ak_test keys, sample invoices, and signed webhook events to verify your complete customer journey.
Use a unique invoice reference and invoice lines for every test.
Check successful, in-progress, failed, retried, and expired payments through hosted checkout.
Send the same event ID more than once and confirm your system updates the order once.
Use invoice_ref to connect the checkout, invoice, webhook, and settlement records.
Test checklist
Receive checkout.session.completed. Confirm the amount, currency, and invoice reference before you fulfil.
Keep the order open while finalized is false. Give your customer a clear status.
Confirm failed or expired sessions never release an order.
Change one byte in the raw body or timestamp. Your handler must reject the delivery before it updates the order.
Retry session and invoice-line writes with the same Idempotency-Key and body. A changed request needs a new key.
Test data
Use an ak_test_ key with the normal API. Test payments are synthetic: they never contact a bank, wallet, teller, or live settlement system. Start a checkout, select Mobile Money, Bank transfer, or Cash, then use the test outcome endpoint to exercise your webhook receiver. Use pending when you need to keep the payment open.
ak_test_...INV-2026-001POST /api/v1/test/payment-attempts/{reference}/simulatepending, paid, failed, expired, cancelled, reversed, manual_review, amount_mismatchcurl https://api.quiddpayments.com/api/v1/test/payment-attempts/s_test_example/simulate \
-H "Authorization: Bearer ak_test_example" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: test-outcome-s-test-example-paid" \
-d '{"outcome":"paid"}'https://api.quiddpayments.comDeveloper tools
Review endpoint fields, examples, status codes, and schemas.
OpenAPIDownload the schemaGenerate clients and review the integration contract.
MarkdownRead the guide in MarkdownUse a portable guide in your engineering workflow.
LLMsUse llms.txtGive developer tools a compact integration map.
CollectionImport test requestsRun examples for the core payment journey.
Versioning
Quid Payments adds optional response fields without disrupting your integration. We provide a migration note before required fields, event names, signature rules, or error-code meanings change.
Checkout sessions, invoice lines, payment methods, cash deposits, webhooks, and errors.
You receive a clear upgrade path before required fields or final checkout rules change.
Before you launch
invoice_ref through checkout, webhook, and settlement records.