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:
PlatformSandboxProduction
AndroidPBLEnvironment.SANDBOXPBLEnvironment.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 networkCard numberExpected resultNotes
Mastercard5232050000010003CompletedSuccessful authorization
VISA4149011500000147CompletedSuccessful authorization
Amex378282246310005CompletedSuccessful authorization

Decline scenarios

Card networkCard numberExpected resultError codeError meaning
VISA4024007119078466Failed51Insufficient funds
VISA4532904789286871Failed41Lost 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:

  1. In your /mobile/init request, pass country: "DEU" and currency: "EUR".
  2. Start the Instant Bank Transfer flow — the bank selection page opens with Germany preselected.
  3. Select N26 from the bank list.
  4. 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_url at 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_url in your /mobile/init request 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.


Did this page help you?