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?