Test your integration
Overview
| Phase | Goal |
|---|---|
| 1 - Mock app | Build Intent integration on any Android device - no Peach Payments terminal required |
| 2 - UAT terminal | Test on Sunmi hardware with UAT Payment App |
| 3 - Production | Publish POS APK to Sunmi; Peach Payments enables on fleet |
Phase 1 - Mock Payments App (any Android device)
Use the Mock Payments App to develop and test your POS against simulated Payment App responses before you have a terminal.
- Download and install the Mock APK on any Android phone or tablet.
- Install your POS app on the same device.
- No UAT account required for mock-only development.
- No Maven registry token required - add
com.peach:intent_apifrom the public GitLab Maven repository.
Run through sale, refund, void, and lookup callbacks against the mock host.
Phase 2 - UAT terminal
- Request a UAT account and login PIN from support.
- Download and install the UAT Payment App APK on your Sunmi device.
- Install your POS app on the same terminal.
- Log in to the UAT Payment App with your PIN.
UAT approval rules
| Amount | Result |
|---|---|
Round values (for example, R 100.00, R 50.00) | Live approval |
Non-round values (for example, R 10.50) | Decline (emulator behaviour) |
Use non-round amounts to test decline handling in your POS. For Intent error codes during failed flows, see Intent error codes.
Test matrix
| ☐ | Scenario |
|---|---|
| ☐ | Sale - approved (round amount) |
| ☐ | Sale - declined (non-round amount) |
| ☐ | Sale - cancel before card tap |
| ☐ | Refund (if applicable) |
| ☐ | Void (if applicable) |
| ☐ | Crash recovery / lastTransaction() |
| ☐ | merchantTransactionId visible in Dashboard |
| ☐ | disableReceiptingOnOutcome auto-return to POS |
| ☐ | Webhook handling (if applicable) |
Phase 3 - production handoff
When the test matrix is complete, proceed to Deploy your POS app (Sunmi).
Peach Payments confirms readiness and enables your app on merchant terminals.