Testing orders in development stores
By placing a test order, you can make sure that your development store's checkout process and settings for order processing, inventory, shipping, email notifications, and taxes are all correct. Development stores can process unlimited test orders.
On this page
Ways to test orders
You can test orders in a development store in the following ways:
- Use Shopify's Bogus Gateway to simulate a transaction
- Enable test mode for your payment provider, and place test orders through the development store's checkout:
You can also create test orders using the following APIs:
If you're using the Admin API to test orders, then you need to set the test
property or field to true
.
Limitations
There are limitations when you test orders in a development store:
- You can't test orders using real transactions. Real transactions are transactions that are processed through a payment provider that isn't in test mode, and that use real payment information such as a valid credit card number.
- You can't test gift cards, because they're processed as real transactions.
- You can't test orders using manual payment methods. This includes cash and custom payments on Shopify POS.
- You can't test orders using draft orders that you create in the Shopify admin.
To test with these transaction types, you need to transfer the development store to a paid plan.
- You can't test using draft orders you create in your Shopify admin. You need to place test orders using the development store's checkout.
Testing using Shopify's Bogus Gateway
To simulate a transaction on your development store's online checkout, you can set up Shopify's Bogus Gateway. Bogus Gateway is a payment provider that any store can use to create test orders.
To create an order, you need to enter test payment information at checkout. You can simulate different types of transactions, depending on what information you enter.
Steps:
From your Shopify admin, go to Settings > Payments.
If you have a credit card payment provider activated, then deactivate it before continuing. Click Manage > Deactivate (this button also displays the name of your payment provider, for example Deactivate Shopify Payments), and then confirm your deactivation.
-
Do one of the following:
- If you have a third party payment provider activated, then deactivate it.
- If you have Shopify Payments activated:
- In the Shopify payments section, click Manage > Manage payment methods.
- At the bottom of the page, click Switch to a third-party provider, and then click Switch to a third-party provider again to confirm.
- If you don't have Shopify Payments activated, then in the Shopify payments section, click See all other providers.
- If Shopify Payments isn't available in your country, then in the Payment providers section, click Choose a provider.
Select (for testing) Bogus Gateway from the list.
Click Activate (for testing) Bogus Gateway.
Click Save.
Go to your online store and place an order as a customer would. At checkout, enter the following credit card details to test different checkout scenarios:
Field name | Details to enter |
---|---|
Name on card | Enter Bogus Gateway
|
Credit card number |
Enter each of these in turn to simulate different types of transaction:
|
CVV | Enter any 3-digit number (for example, 111 .) |
Expiry Date | Enter any date in the future. |
- After you're done testing, click Manage next to (for testing) Bogus Gateway in your Shopify admin.
- Click Deactivate (for testing) Bogus Gateway to remove this gateway from your checkout.
Testing using Shopify Payments test mode
To test your Shopify Payments setup, enable the test mode and use test credit cards to simulate payments.
Enable test mode for Shopify payments
Before you can create test orders, you need to enable the test mode for Shopify payments.
Steps:
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.
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 three digits.
- Card number: Use any of the following numbers:
Card type | Test credit number |
---|---|
Visa | 4242424242424242 |
Mastercard | 5555555555554444 |
American Express | 378282246310005 |
Discover | 6011111111111117 |
Diners Club | 30569309025904 |
JCB | 3530111333300000 |
Simulate failed transactions
If you want to see the credit card error messages that might be displayed to a customer during checkout, then you can use these test credit card numbers to simulate different failed transactions:
- Use credit card number 4000000000000002 to generate a card declined 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, for example 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.
Test mode for third-party payment providers
Some third-party payment providers offer a test mode that you can enable in the Shopify admin. Third party payment providers must have an Enable test mode option enabled in their settings to be tested in a development store. For more information about using test mode with a specific third-party payment provider, refer to the payment provider's documentation.
When a payment gateway is in test mode, requests from Shopify include the test
attribute. If test
is set to true
, then the payment is processed as a test payment and no actual transaction is made.
If you're a third-party payment provider and want to add the Enable test mode option to your settings, then you need to add payment sandbox URLs to your payments app extension in the Partner Dashboard.
Testing with real transactions
If you need to test your development store using real transactions, then you need to transfer your store to a paid plan. For more information, refer to Transferring development stores to clients.
If you want to switch a development store to a paid plan but still be the store's owner, then choose a plan in the Shopify admin.