Testing
Test your Mobile SDK integration end to end using the payabl. sandbox — no real money moves, and every payment method has test data to exercise success, failure, and cancellation flows.
Sandbox environment
Point both your backend and the SDK at the sandbox:
- Backend: create sessions against the sandbox endpoint —
https://pay4.sandbox.payabl.com/pay/mobile/init(see Setup Your Server). - SDK: set the sandbox environment in your payment configuration:
| Platform | Sandbox | Production |
|---|---|---|
| Android | PBLEnvironment.SANDBOX | PBLEnvironment.PRODUCTION |
| iOS | .sandbox | .production |
Sandbox talks to sandbox only. A session created on the sandbox endpoint works only with the SDK's sandbox environment, and a production session only with the production environment — a mismatch will fail.
Test scenarios
For every payment method you integrate, verify all three outcomes before going live:
- Successful payment — order updated, customer sees confirmation.
- Cancelled payment — customer backs out; your app returns to a sensible state.
- Failed payment — your app surfaces the failure and lets the customer retry.
Test cards (Pay by Card & Hosted Payment Page)
Use these cards in the sandbox. Expiry: any future date (e.g., 12/27). CVV/CVC: any 3 digits (e.g., 123).
Success scenarios
| Card network | Card number | Expected result | Notes |
|---|---|---|---|
| Mastercard | 5232050000010003 | Completed | Successful authorization |
| VISA | 4149011500000147 | Completed | Successful authorization |
| Amex | 378282246310005 | Completed | Successful authorization |
Decline scenarios
| Card network | Card number | Expected result | Error code | Error meaning |
|---|---|---|---|---|
| VISA | 4024007119078466 | Failed | 51 | Insufficient funds |
| VISA | 4532904789286871 | Failed | 41 | Lost card / Do Not Honor |
Declines are delivered as a failed payment result carrying the error code. Look up any code in the Error Code Reference.
Instant Bank Transfer (bank simulator)
Any 3-letter country and currency code is accepted, but we recommend the following combination for a reliable end-to-end sandbox test:
- In your
/mobile/initrequest, passcountry: "DEU"andcurrency: "EUR". - Start the Instant Bank Transfer flow — the bank selection page opens with Germany preselected.
- Select N26 from the bank list.
- You're taken to an external browser to complete the process; when you finish, you're redirected back to your app via your deep link, and the result is delivered to your handler.
Test all three outcomes (complete, cancel, fail) from the app, and verify the app return: background and it opens the browser, then complete the payment — your app should relaunch via the deep link and deliver the result. See the deep-link setup on the Instant Bank Transfer pages (Android | iOS).
Verifying the webhook
The authoritative Instant Bank Transfer status arrives server-to-server at your notification_url. To verify webhook delivery during testing:
- Point
notification_urlat your own endpoint and check your server logs, or - For a quick test without your own endpoint, use a disposable listener such as webhook.site — set the generated URL as
notification_urlin your/mobile/initrequest and watch the notification arrive.
Use disposable webhook listeners for sandbox testing only — never in production, as payment notifications would be visible to anyone with the link.
Google Pay
To test Google Pay in the sandbox you need a physical device (emulator support is limited):
- Device runs Android 9+ and is in a Google Pay-supported region.
- Log in with your Google Account and add a card from Google's test card suite to Google Wallet.
- Run payments in the sandbox before going live.
For prerequisites, registration, and the production-access process, see Google Pay.
Apple Pay
Apple Pay testing requires the certificate exchange with payabl. to be completed for the sandbox environment first. The exchange covers both environments: two CSRs are exchanged (one for sandbox, one for production), and payabl. sets up a separate merchant account for each environment. See the full process on the Apple Pay page, or contact [email protected].
Once the sandbox setup is in place:
- Sign in on a test device with a sandbox tester Apple ID and add Apple's test cards to Wallet — see Apple Pay sandbox testing.
- Use your sandbox Apple Merchant ID in your payment configuration.
Updated 15 days ago
