Test your POS Integrations API integration

Test against the sandbox base URL and a UAT terminal before going live. See POS Integrations API for the sandbox base URL, API key, and response codes.

Magic test amounts

AmountExpected behaviour
50.05 ZAR (exact amount)First a failed transaction, then an approved transaction
Ends in .55An array of failed transactions
Ends in .65Tap the card - first a failed transaction, then a successful transaction
Ends in .51Declined sale
Ends in .69Timeout - expect a failed transaction

Suggested test matrix

Scenario
Sale - approved
Sale - declined
Sale - 50.05 ZAR - first failed, then approved transaction
Sale - amount ending .55 - array of failed transactions
Sale - amount ending .65, tap card - first failed, then successful transaction
Sale - amount ending .51 - declined
Sale - amount ending .69 - timeout, expect a failed transaction
409 - terminal busy, retry when the terminal is free
503 - terminal offline, retry when Remote payments online appears again
Webhook received and matched to the order via merchantTransactionId
Webhook posData.requestId matches the requestId from your payment request
More than one webhook arrives for the same requestId, for example after an incorrect PIN
Refund (if applicable) - confirm the transactionId from the sale webhook is stored and usable
Duplicate webhook delivery
Full-day Reconciliation API recovery, as a fallback if a webhook is missed
merchantTransactionId visible in Dashboard

For each failure scenario, record what the webhook reports, what the Reconciliation API returns, and whether a refund is required.

Production handoff

When the test matrix is complete, contact Peach Payments to confirm readiness before you go live.


Did this page help you?