Esc

Start typing to search.

Improvado
Sign In

Shopify GraphQL - Troubleshooting

Written by Ilya Sudakov

Updated on Sep 22, 2026

While extracting data from Shopify GraphQL, you may encounter several issues. Understanding these common errors can help streamline the setup process and facilitate quick resolutions.

Missing access scope

Error message:

Error
Your Shopify connection is missing a required access scope. Shopify error: Access denied for name field. Required access: read_locations access scope or read_markets_home access scope.

The Shopify app behind the connection was not granted a scope that one of the selected fields needs. Shopify checks scopes per field, so the extraction fails as a whole even when only one selected field is refused, and the rest of the report returns no data until the field is granted or removed. The scope named in the error is the one that is missing, and the field name in the message is Shopify’s API field name rather than the Improvado column title.

Which fields require an extra scope

The scope most often missing is read_locations, required by the location name fields:

  • Orders — Retail Location Name
  • Order Refund Line Items — Location Name

Retail Location Name is populated only for point-of-sale orders, so a store that sells online only never trips this error even without the scope. Because it fails the whole report for the stores that do have POS orders, Improvado does not select it by default — it has to be added to the extraction deliberately.

Any other field Shopify gates behind a scope produces the same message and names its own scope, so the steps below apply to all of them.

Solution

  1. If you connected through Improvado’s Shopify GraphQL integration (OAuth, Shopify App Store, or Custom Distribution App), reconnect the connection from your Connected sources list. Improvado already requests read_locations, so reconnecting grants it. Scopes are recorded when a connection is created, so a connection made before a scope was added keeps the old set until it is reconnected — even if it is otherwise healthy and shows as Active.
  2. If you connected with your own Shopify app (Client ID and Secret, or an Admin API access token), add the scope named in the error to that app’s access scopes in the Shopify Dev Dashboard, release a new version, install it on the store, and then reconnect the connection in Improvado.
  3. If you do not need the refused field, remove it from the extraction field selection instead. The rest of the report then extracts normally.

Once the scope is granted or the field is removed, re-run the extraction over the affected date range to collect the periods that failed.

Note
If none of the provided solutions worked, feel free to raise a request via the Service Desk

Was this article helpful?