Help w/ the Mystery: How to fix "This action requires merchant approval for read_checkouts scope" Er

Topic summary

Issue: Calls to the versioned Admin REST Checkout endpoint (admin/api/2023-01/checkouts/) return “This action requires merchant approval for read_checkouts scope,” while an unversioned GET to /admin/checkouts.json appears to work with a custom/private app using read_orders.

Key clarification: Access to the Checkout API requires the app to be approved as a sales channel. Custom/private apps created from a merchant admin do not have access to the read_checkouts scope, which is why it isn’t present in credentials. The error reflects missing sales channel approval rather than a misconfiguration of scopes.

Follow-up question: How to obtain sales channel authorization to build a custom checkout?

Guidance provided:

  • Build a sales channel app and follow Shopify’s sales channel requirements and getting started guide (links provided).
  • Alternatively, build a custom storefront using the Storefront API, which supports cart and checkout creation, with dedicated docs and forum.

Outcome/status: No code-side fix; resolution is architectural. Action items are to pursue sales channel approval or use the Storefront API path. Discussion remains open for implementation steps. (A screenshot was referenced to show missing scope; not essential to the solution.)

Summarized with AI on January 30. AI used: gpt-5.

I’m going through a weird error when making a simple GET request using the Shopify REST Admin API. When I query with a GET request:

{store_url}/admin/checkouts.json

I can get all the checkouts. Now, when I query:

admin/api/2023-01/checkouts/

I get this error <strong>*{ "errors": "[API] This action requires merchant approval for read_checkouts scope." }*</strong>

I'm using the same store, same key. Its access scope is read_orders, a custom/private app. Of course there exists no read_checkouts scope in the credentials configuration (screenshot attached).
![Screenshot 2023-02-03 at 17.28.04.png|1182x870](upload://9MSoguyz23k2vNjkonQtGPNQvZV.png)

Any clue?

I tried swapping using the checkout id, checkout token, checkout key. I also tried calling the orders endpoint using the checkout token and id. No luck so far.
1 Like

Hi @mattpatagon :waving_hand:

To use the Checkout API), the app must be approved as a sales channel rather than a custom app created from a merchant-admin.

Hope that helps!

How do I get this authorization to have a sales channel? I am interested in doing my own checkout within shopify. What do I need to have to get this sales channel authorization?

Hey @didiaps ,

Requirements for building a sales channel can be found in the previous linked documentation, and are expanded on in this getting started guide. I’d suggest reviewing those docs on building a sales channel, as it breaks down requirements, contains important steps, considerations and details.

If you are looking to build a custom storefront on a store that leverages the Storefront API to create and update the cart object, create checkouts, among other available features, the following developer docs are provide a detailed overview and helpful guides to get started. There is also a dedicated community forum for questions around these features here: Storefront API and SDKs.

Cheers!
Shopify Developer Support