Testing Shopify Payments
To test your Shopify Payments setup, activate test mode and use test credit cards to simulate payments.
You can test Shopify Payments only if you've chosen a paid plan.
Test mode isn't supported for merchants in France. Instead, merchants in France can place a test order by using the Shopify Bogus Gateway.
On this page
Test mode
Test mode is a feature of Shopify Payments. You can use it to test how your customers pay for their orders, and to test how you and your staff process those orders. While test mode is activated, you can't use real credit cards to pay for orders. Some local payment methods, such as Sofort and iDEAL, aren't available in the checkout when test mode is activated. For these reasons, you shouldn't activate test mode on a store that's in production.
Test mode isn't available to test payments with Shopify POS card readers, Shop Pay, Shop Pay Installments or PayPal Wallet.
After you are finished testing Shopify Payments, deactivate test mode so that your customers can pay for their orders using their real credit cards.
If you're not using Shopify Payments and you want to test the checkout process, then you can place a test order by using the Shopify Bogus Gateway.
Activate test mode for Shopify Payments
Before you can create test orders, you need to activate test mode for Shopify Payments.
Steps:
Desktop
From your Shopify admin, go to Settings > Payments.
In the Shopify Payments section, click Manage.
In the Test mode section, select Enable test mode.
Click Save.
iPhone
- From the Shopify app, tap the … button, and then tap Settings.
- In the Store settings section, tap Payments.
- In the Shopify Payments section, tap Manage.
- In the Test mode section, select Enable test mode.
- Tap Save.
Android
- From the Shopify app, tap the … button, and then tap Settings.
- In the Store settings section, tap Payments.
- In the Shopify Payments section, tap Manage.
- In the Test mode section, select Enable test mode.
- Tap Save.
Next steps:
You can create orders and then simulate transactions by using a test credit card number. There are test numbers to create successful transactions, failed transactions, and transactions in different currencies.
Simulate successful transactions
To simulate a successful transaction, use the following information when you are asked for credit card details at checkout:
- Name on card: Enter at least two words.
- Expiry date: Enter any date in the future.
- Security code: Enter any four digits to test American Express, and enter any three digits to test all other cards.
- Card number: Use any of the following numbers:
Card type | Test card number |
---|---|
Visa | 4242424242424242 |
Mastercard | 5555555555554444 |
American Express | 378282246310005 |
Discover | 6011111111111117 |
Diners Club | 30569309025904 |
JCB | 3566002020360505 |
BCcard and DinaCard | 6555900000604105 |
UnionPay | 6200000000000005 |
Cartes Bancaires/Visa | 4000002500001001 |
Cartes Bancaires/Mastercard | 5555552500001001 |
eftpos Australia/Visa | 4000050360000001 |
eftpos Australia/Mastercard | 5555050360000080 |
Simulate failed transactions
If you want to view the credit card error messages that might display to a customer during checkout, then use the following test credit card numbers to simulate different failed transactions:
- Use credit card number 4000000000000002 to generate a generic card declined message.
- Use credit card number 4000000000009995 to generate an insufficient funds decline message.
- Use credit card number 4000000000009987 to generate a lost card decline message.
- Use credit card number 4000000000009979 to generate a stolen card decline message.
- Use credit card number 4000000000000069 to generate an expired card message.
- Use credit card number 4000000000000127 to generate an incorrect CVC message.
- Use credit card number 4000000000000119 to generate a processing error message.
- Use credit card number 4242424242424241 to generate an incorrect number message.
- Use credit card number 4000000000000259 to simulate a disputed transaction.
- Use an invalid expiry month, such as 13, to generate an invalid expiry month message.
- Use an expiry year in the past to generate an invalid expiry year message.
- Use a two-digit security code number to generate an invalid security code message.