Recently on our staging environment for shopify, checkout was disabled for some reason unknown to us.
I've been using Shopify Admin API with orders API, and we've a use case where we don't want the customers to pay for what they purchase, and we just want to create an order.
The support team, when previously checkout was disabled, told us to pass "test": true parameter in the orders API whenever there's no shopify checkout. However, for "test": true, there won't be a revenue generated from those orders for the business. So I would like to know if "test": false is passed (for real orders without checkout), would my shopify checkout get disabled for prod account too?
Recently when our checkout was disabled, following was the email response we got from Shopify team:
I have re-enabled the checkout once more for you. I notice you are using the REST API to place these test orders, have you been following our guide on How to manage test orders with the REST Admin API? There’s some useful tips in there. You will want to keep in mind that manual payment gateways and Cash on delivery would count as real orders causing checkout to be disabled. As well when using the REST Admin you need to be sure to set the status of each order to TEST. Unfortunately I am not able to determine specifically which order caused the system to disable the checkout. But it should be whichever order looks to the system like a real order being processed. This could be that the order was not set as a test order, or that a manual payment method was used. In general when testing orders on development stores your best bet is to follow one of our many technical guides on process, in order to prevent having the checkout disabled.
Here's from what I know - Shopify disables checkout for development stores to prevent people from misusing the dev environment for real orders. Hence, when their system thinks that an order is real, it disables the checkout. However, on prod, since you'd be a paying merchant (not a dev store), placing orders from the API should not disable your checkout even if you do not have test: true in the API orders.