GraphiQL app permission error

I installed the GraphiQL explorer app with all admin and storefront permissions. When querying the ShopifyPaymentsAccount object, I get a permissions error. I am logged in as the store owner.

1 Like

Hey @Michael_Zareno :waving_hand: - happy to take a look into this! Would you be able to share the full GraphQL query you’re using and your Shop’s ID/myshopify.com URL? I can take a look on our end here to see if we can determine what’s causing the issue/try to replicate it.

Hope to hear from you soon!

Hi Alan,
I’m working in the Shopify GraphiQL app. The site is:

The query is a simple one:

query MyQuery {
shopifyPaymentsAccount {
payouts(query: “id:123546239282”) {
edges {
node {
id
}
}
}
}
}

The response:

{
“errors”: [
{
“message”: “Access denied for payouts field.”,
“locations”: [
{
“line”: 3,
“column”: 5
}
],
“path”: [
“shopifyPaymentsAccount”,
“payouts”
],
“extensions”: {
“code”: “ACCESS_DENIED”,
“documentation”: “Shopify API access scopes”
}
}
],
“data”: {
“shopifyPaymentsAccount”: null
},
“extensions”: {
“cost”: {
“requestedQueryCost”: 3,
“actualQueryCost”: 3,
“throttleStatus”: {
“maximumAvailable”: 4000,
“currentlyAvailable”: 3997,
“restoreRate”: 200
}
}
}
}

I uninstalled and reinstalled the app, selecting all permissions in the admin and storefront scopes. I’ll change that after development, which is going to be with n8n. We have working workflows in n8n already, but we want to migrate them away from the REST API.

Mike

Thanks @Michael_Zareno - I was able to do some more digging into this on my end and there does seem to be something odd happening here. We might have to move this to DM since there is some shop-specific info we’ll have to share, but I’ll loop back with you as soon as I have more info here.

Speak soon!

I have the same issue, also have granted all access scopes while installing the app and am logged in as shop admin.
Please let me know when you find a solution or explaination.

I can access the balance, but not balance transactions or payouts.
Example query for payouts that returns an access denied error:

query MyQuery {
shopifyPaymentsAccount {
bankAccounts(first: 5) {
nodes {
payouts(first: 10) {
nodes {
status
net {
amount
currencyCode
}
}
}
}
}
}
}

Response:

{
“errors”: [
{
“message”: “Access denied for payouts field.”,
“locations”: [
{
“line”: 5,
“column”: 9
}
],
“path”: [
“shopifyPaymentsAccount”,
“bankAccounts”,
“nodes”,
0,
“payouts”
],
“extensions”: {
“code”: “ACCESS_DENIED”,
“documentation”: “Shopify API access scopes”
}
}
],
“data”: {
“shopifyPaymentsAccount”: null
},
“extensions”: {
“cost”: {
“requestedQueryCost”: 24,
“actualQueryCost”: 6,
“throttleStatus”: {
“maximumAvailable”: 2000,
“currentlyAvailable”: 1994,
“restoreRate”: 100
}
}
}
}

I am also getting this same error. It has been driving me crazy for the past few days and I am unsure what is going on.

Even running a simple payout request gets me an access denied. I’ve tried on 3 different Shopify stores and nothing charged.

{
  shopifyPaymentsAccount {
    payouts {
      nodes {
        net {
          amount
        }
      }
    }
  }
}
{
  "errors": [
    {
      "message": "Access denied for payouts field.",
      "locations": [
        {
          "line": 3,
          "column": 5
        }
      ],
      "path": [
        "shopifyPaymentsAccount",
        "payouts"
      ],
      "extensions": {
        "code": "ACCESS_DENIED",
        "documentation": "https://shopify.dev/api/usage/access-scopes"
      }
    }
  ],
  "data": {
    "shopifyPaymentsAccount": null
  },
  "extensions": {
    "cost": {
      "requestedQueryCost": 3,
      "actualQueryCost": 3,
      "throttleStatus": {
        "maximumAvailable": 20000,
        "currentlyAvailable": 19997,
        "restoreRate": 1000
      }
    }
  }
}

Looking deeper into the scopes, I see I have access to view shopify payments, which should allow access to payouts

query AccessScopeList {
  currentAppInstallation {
    accessScopes {
      handle
    }
  }
}
{
  "data": {
    "currentAppInstallation": {
      "accessScopes": [
        {
          "handle": "read_fulfillments"
        },
        {
          "handle": "read_payment_customizations"
        },
        {
          "handle": "read_payment_gateways"
        },
        {
          "handle": "read_payment_mandate"
        },
        {
          "handle": "read_payment_terms"
        },
        {
          "handle": "read_products"
        },
        {
          "handle": "read_shopify_payments"
        },
        {
          "handle": "write_shopify_payments_accounts"
        },
        {
          "handle": "read_shopify_payments_bank_accounts"
        },
        {
          "handle": "write_shopify_payments_dispute_evidences"
        },
        {
          "handle": "write_shopify_payments_dispute_file_uploads"
        },
        {
          "handle": "write_shopify_payments_disputes"
        },
        {
          "handle": "unauthenticated_read_content"
        },
        {
          "handle": "unauthenticated_read_product_listings"
        },
        {
          "handle": "read_shopify_payments_accounts"
        },
        {
          "handle": "read_shopify_payments_dispute_evidences"
        },
        {
          "handle": "read_shopify_payments_dispute_file_uploads"
        },
        {
          "handle": "read_shopify_payments_disputes"
        }
      ]
    }
  },
  "extensions": {
    "cost": {
      "requestedQueryCost": 2,
      "actualQueryCost": 2,
      "throttleStatus": {
        "maximumAvailable": 20000,
        "currentlyAvailable": 19998,
        "restoreRate": 1000
      }
    }
  }
}

Just bumping this as we’re approaching 2 weeks without a solution, and a number of users have a similar issue

Bumping again! I would love to have solution for this issue!

helloo! it seems that all scopes of all Shopify GraphiQL Apps have been modified to this:

‘data": {
    ‘currentAppInstallation": {
      ‘accessScopes": [
        {
          ‘handle": “read_content”.
        },
        {
          ‘handle": ’read_products’
        },
        {
          ‘handle": ’unauthenticated_read_content’
        },
        {
          ‘handle": ’unauthenticated_read_product_listings’
        }
      ]
    }

Also, I can’t change the permissions by uninstalling the app and reinstalling it with all the scopes enabled.

Hey folks - :waving_hand: - still looking into the larger issue, but hope to have an update soon - thank you for your patience on this.

@victor I’m not seeing those changes on my end here, my GraphiQL app is still retaining the scopes I’ve set for it. Are you still encountering the issue there?

If so, just let me know and if you can share your shop’s ID/myshopify.com URL, I can for sure take a look into this for you.