Test and go live procedure 🚀
While integrating, you have access to a sandbox account during user acceptance testing. Use this account to test fake payments to verify your integration.
View sandbox transactions and webhooks in the Peach Payments sandbox Dashboard.
Test cards and credentials
Use the following test cards and credentials to test integrations.
Card payments
- Card payments are only available on Checkout.
- When testing multi-currency processing in sandbox, you must use either 92.00 or 15.99 as the transaction amount to simulate a successful transaction.
Test cards are available for both versions of 3-D Secure.
3-D Secure 2
Scenario | Returns method data | Card scheme | Result |
---|---|---|---|
Frictionless | ✅ | Visa: 4200000000000091 Mastercard: 5200000000000007 Maestro: 6761301000993772 American Express: 374500262001008 | Successful frictionless authentication (Visa ECI=05, Mastercard ECI=02, TransactionStatus=Y) |
Frictionless | ✅ | Visa: 4200000000000109 Mastercard: 5200000000000023 Maestro: 6706981111111113 American Express: 377277081382243 | Attempt (Visa ECI=06, Mastercard ECI=01, TransactionStatus=A) |
Frictionless | ❌ | Visa: 4200000000000026 Mastercard: 5200000000000056 Maestro: 6799851000000032 American Express: 375987000000062 | Successful frictionless authentication (Visa ECI=05, Mastercard ECI=02, TransactionStatus=Y) |
Frictionless | ❌ | Visa: 4200000000000059 Mastercard: 5200000000000106 Maestro: 6007930123456780 American Express: 373953192351004 | Attempt (Visa ECI=06, Mastercard ECI=01, TransactionStatus=A) |
Error | ❌ | Visa: 4012001037461114 Mastercard: 5434580000000006 Maestro: 6761301000941201 American Express: 375987000169875 | Technical Error (no ECI, TransactionStatus=U) |
Error | ❌ | Visa: 4012001037141112 Mastercard: 5457350076543210 Maestro: 6761301000946341 American Express: 375987000169883 | User not enrolled (Visa ECI=06, Mastercard ECI=01, TransactionStatus=N) |
Error | Not applicable | Visa: 4532497088771651 Mastercard: 5497260847316287 Maestro: 6761257707836567 American Express: 343923092050144 | Card not participating |
Challenge | ✅ | Visa: 4200000000000042 Mastercard: 5200000000000015 Maestro: 6799998900000060018 American Express: 343434343434343 | (determined by challenge) |
Challenge | ✅ | Visa: 4200000000000067 Mastercard: 5200000000000049 Maestro: 6773670009114879 American Express: 375987000000021 | (determined by challenge) |
Challenge | ❌ | Visa: 4200000000000018 Mastercard: 5200000000000064 Maestro: 67034200554565015 American Express: 375987000169867 | (determined by challenge) |
Challenge | ❌ | Visa: 4200000000000075 Mastercard: 5200000000000072 Maestro: 6759888888888888 American Express: 371449635398431 | (determined by challenge) |
3-D Secure 1
Card scheme | Card number | 3-D Secure |
---|---|---|
Visa | 4711100000000000 | Enabled |
Visa | 4200000000000000 | Disabled |
Visa | 4012888888881881 | Enabled |
Visa | 4111111111111111 | Simulates external mode |
Visa | 4242424242424242 | Disabled |
Mastercard | 5212345678901234 | Enabled |
Mastercard | 5105105105105100 | Disabled |
Mastercard | 5454545454545454 | Disabled |
American Express | 375987000000005 | Enabled |
American Express | 377777777777770 | Disabled |
American Express | 311111111111117 | |
Diners | 30082246403846 | Disabled |
For all the test cards in the table above:
- For Visa, Mastercard, and Diners cards, the CVV is any three digits. For American Express cards, the CVV is any four digits.
- For the expiry date, any future date is acceptable.
- These test cards simulate a successful transaction.
Pay by Bank
When testing in the sandbox environment, use the Capitec Pay testing credentials to test Capitec Pay.
To test Pay by Bank for other EFT payment methods in Checkout in the sandbox environment (in a simulator), when the bank's user interface appears, click the DEVELOPMENT SERVER title, select the status to simulate, and click Continue.
Capitec Pay
To test Capitec Pay against a simulator in the sandbox environment, include "customParameters[enableTestMode]":"true"
in the Payments API request body; this is not required when testing on Checkout.
High-risk merchants must provide verified ID numbers that the customer cannot edit. They cannot offer the phone number option.
Use the following ID or phone numbers to test certain Capitec Pay payment request scenarios:
Scenario | ID number | Phone number | Result code |
---|---|---|---|
Client not registered on the banking app | 1111111111106 | 0111111106 | 000.400.102 |
Default transaction limit exceeded | 1111111111109 | 0111111109 | 800.100.162 |
Consent request created successfully | 1111111111119 | 0111111119 | 000.200.000 |
Use the following ID or phone numbers to test certain Capitec Pay transaction status scenarios:
Scenario | ID number | Phone number | Result code |
---|---|---|---|
Payment consent declined by client | 1111111111137 | 0111111137 | 100.396.101 |
Payment consent request timed out | 1111111111138 | 0111111138 | 900.100.400 |
Payment failed | 1111111111139 | 0111111139 | 800.100.100 |
Client reported payment consent request as fraud | 1111111111140 | 0111111140 | 000.100.220 |
Payment successful | 1111111111214 | 0111111214 | 000.100.110 in sandbox and 000.000.000 in live |
- To execute tests against the actual endpoints, contact support.
- Testing this way requires manual intervention and synchronisation between you, Peach Payments, and Capitec.
Peach EFT
Test Peach EFT in Payments API in a simulator in the sandbox environment.
When the bank selector user interface appears, click SIMULATOR, select the status to simulate, and click Continue.
Payflex
Payflex must add you to their allowlist before you can test.
When testing in the sandbox environment, use the following details:
- Email: Any email address
- ID number:
9503095194084
- Test card number:
4111 1111 1111 1111
- Test card name: Anything
- Test card CVV: Any three digits
- Test card expiry date: Any future date
- Phone number:
0123456789
- OTP:
911911
ZeroPay
When testing in the sandbox environment, use the following details:
- ID number:
9512235170089
- OTP:
0000
Scan to Pay
-
Download any Scan to Pay app available in your region on your phone:
-
Switch to the Scan to Pay test environment in the app by scanning this QR code.
-
Add any of the following test cards to your Scan to Pay wallet:
- Debit cards:
- Any 18-digit card starting with
50010001000105
with any bank PIN =00
response (success) - Any 18-digit card starting with
50010001000101
with any bank PIN =51
response (insufficient funds) - Any 18-digit card starting with
50020001000103
with any bank PIN =91
response (issuer or switch inoperative or bank unavailable)
- Any 18-digit card starting with
- Credit cards:
- Any 18-digit card starting with
50020001000105
with any bank PIN =00
response (success) - Any 18-digit card starting with
50020001000101
with any bank PIN =51
response (insufficient funds) - Any 18-digit card starting with
50020001000103
with any bank PIN =91
response (issuer or switch inoperative or bank unavailable)
- Any 18-digit card starting with
- Debit cards:
-
Select Scan to Pay as the payment method and scan the QR code presented to you on the payment page.
-
Pay for your order using one of the stored cards in your wallet.
-
Do not close the browser after completing the payment in the app.
Apple Pay
- Apple Pay is only available on Checkout.
- You must have an Apple developer test account to test Apple Pay.
Test cards for sandbox are available on https://developer.apple.com/apple-pay/sandbox-testing/.
Google Pay
Google Pay is only available on Checkout.
To test Google Pay in the sandbox environment (in a simulator), use any live card. Your card is not charged because you're in the sandbox environment. Click Google Pay, select your card, click Continue, select the status to simulate, and click Pay.
1Voucher
When testing in the sandbox environment, request test vouchers from support.
Mobicred
You must request test credentials directly from Mobicred.
RCS cards
To test RCS cards against a simulator in the sandbox environment, include "customParameters[enableTestMode]":"true"
in the Payments API request body; this is not required when testing on Checkout. In the sandbox environment, the payment process bypasses the OTP and success screens, redirecting the user to the shopperResultUrl
.
Use the following amount values with the card.number
set to 6010240000000000
to test certain payment request scenarios:
Scenario | Amount | Result code |
---|---|---|
Payment successful | 1.00 | 000.100.110 |
Payment consent expired while in progress | 0.75 | 100.396.101 |
Payment consent declined by client | 0.80 | 100.396.101 |
M-PESA
To test M-PESA, contact support for test credentials.
blink by Emtel
To test blink by Emtel against a simulator in the sandbox environment, include "customParameters[enableTestMode]":"true"
in the Payments API request body; this is not required when testing on Checkout.
Use the following phone numbers to test certain payment request scenarios:
Scenario | virtualAccount.accountId | Expected result code |
---|---|---|
Client does not exist for the given mobile number | 51111213 | 200.100.501 |
Pending transaction response from debit API | 51111215 | 000.200.000 |
Session expired response from debit API | 51111206 | 900.300.600 |
Use the following phone numbers to test certain blink by Emtel transaction status scenarios:
Scenario | virtualAccount.accountId | Expected result code |
---|---|---|
Insufficient funds | 51111322 | 800.100.203 |
Payment successful | 51100000 | 000.100.110 in sandbox and 000.000.000 in live |
When testing the successful payment scenario on sandbox using the
51100000
number, when you get to the confirmation message screen, wait for the confirmation request to expire to simulate a successful payment.
- To execute tests against the actual endpoints, contact support.
- Testing this way requires manual intervention and synchronisation between you, Peach Payments, and Emtel.
MCB Juice
To test MCB Juice against a simulator in the sandbox environment, include "customParameters[enableTestMode]":"true"
in the Payments API request body; this is not required when testing on Checkout.
You cannot test a successful transaction end-to-end.
Use the following amounts to test certain failure scenarios:
Scenario | Amount | Expected result code |
---|---|---|
Consent expired | 1.25 | 100.380.501 |
General error | 1.40 | 900.100.201 |
Go live
When you have completed integration and testing and your payments integration is working in the sandbox environment, switch to your live credentials to begin accepting live payments.
Live credentials and API endpoints
- Your live credentials differ from your sandbox credentials. You must swap these credentials before going live.
- The live API endpoints differ from that of the sandbox API endpoints. Ensure that you have updated to the live API endpoints in your code:
Updated 21 days ago