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 transactions. There are two ways to place a test order in a development store:

You can't test using real transactions in a development store. Real transactions are transactions that are processed through a payment provider that is not in test mode, and that use real payment information such as a valid credit card number. If you need to test with real transactions, then you need to transfer the development store to a paid plan.

You can also create an order using the Shopify Admin REST API or GraphQL API. Creating an order using an API bypasses the 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:

  1. If you have a credit card payment provider enabled, then deactivate it before continuing. Click Manage > Deactivate (this button also shows the name of your payment provider, for example Deactivate Shopify Payments), then confirm your deactivation.

  2. You will now see the Third-party providers section. In that section, click Choose third-party provider.

  3. On the Third-party payment providers page, choose (for testing) Bogus Gateway.

  4. Click Activate (for testing) Bogus Gateway.

  5. Go to your online store and place an order as a customer would. At checkout, enter the following credit card details instead of genuine numbers:

Card details to enter when testing your checkout with the bogus gateway
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:

  • Enter 1 to simulate a successful transaction
  • Enter 2 to simulate a failed transaction
  • Enter 3 to simulate an exception (this generates a message indicating that an error has occurred with the provider)
CVV Enter any 3-digit number (for example, 111.)
Expiry Date Enter any date in the future.
  1. After you're done testing, click Choose another provider on the Payment providers page in your Shopify admin to reset your payment provider.

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:

  1. In the Shopify Payments section, click Manage.

  2. In the Test mode section, select Enable test mode.

  3. 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:
Simulate a successful transactions with these card 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, see the payment provider's documentation.

If you are 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 payment gateway settings 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 Handing off 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.