Can't create new checkout using admin API

Andrew29
Visitor
3 0 3

https://help.shopify.com/api/reference/checkout

I cannot post to `/admin/checkouts.json` as demonstrated in the above link using my API credentials. I am getting this error:

"[API] This action requires merchant approval for write_checkouts scope."

I don't see a "write_checkouts" scope anywhere, but understand that it falls under the "write_orders" scope, which I have enabled in my account. 

Why can't I create a new checkout?

Replies 3 (3)

Josh
Shopify Staff
1134 84 233

Hey Andrew, 

The write_checkouts and write_orders scopes are two different things. Write_orders will give you access to the Order API, but the Checkout API is something entirely separate and that's when the write_checkouts scope is required.

The Checkout API is also only available to apps utilizing our Sales Channel SDK - so if your app is not a Sales Channel, you won't be able to use the Checkout API. It sounds like that might be the source of the problems you're having at the moment. 

Josh | Shopify 
 - Was my reply helpful? Click Like to let me know! 
 - Was your question answered? Mark it as an Accepted Solution
 - To learn more visit the Shopify Help Center or the Shopify Blog

DavidKDel
Visitor
1 0 0

I'm facing the same issue with a backend (private) app that I'm building using https://www.npmjs.com/package/shopify-api-node.

 

As you and Andrew mentioned, it's not possible to grant write_checkouts scopes on the Admin Dashboard, but it's not clear how to do that elsewhere?

 

I created a Sales channel app and linked it with my private app, but still getting same error using the private app's apiKey and password.


What am I doing wrong here?

DavidKDel2
Shopify Partner
3 0 4

I was finally able to resolve my issue by following this tutorial: https://help.shopify.com/en/api/guides/sales-channel-sdk/getting-started.

  1. Created app in Partner Dashboard
  2. Configured it as Sales Channel
  3. Requesting the write_checkouts scope
  4. Then using the code to get an access token which I could pass to my Shopify Admin API client