Using Shopify API credentials

Hi everyone,

Just trying to set up my Shopify account in a node, and the documentation seems to be somewhat outdated.

Here’s what I have on the Shopify side:

When I fill in the fields in n8n’s interface, I get an error message:

{
"message": "401 - {"errors":"[API] Invalid API key or access token (unrecognized login or wrong password)"}",
"name": "Error",
"stack": "Error: Request failed with status code 401 at createError (/usr/local/lib/node_modules/n8n/node_modules/axios/lib/core/createError.js:16:15) at settle (/usr/local/lib/node_modules/n8n/node_modules/axios/lib/core/settle.js:17:12) at IncomingMessage.handleStreamEnd (/usr/local/lib/node_modules/n8n/node_modules/axios/lib/adapters/http.js:269:11) at IncomingMessage.emit (node:events:539:35) at IncomingMessage.emit (node:domain:475:12) at endReadableNT (node:internal/streams/readable:1345:12) at processTicksAndRejections (node:internal/process/task_queues:83:21)"
}

I am new here and not a dev, and can’t find why it doesn’t work. If anyone has some tips, that’d be helpful!

Hey @RomHav,

Welcome to the community :tada:

I remember seeing something a while back tha Shopify have removed support for Private Apps, We do have a fix ready for this that is being tested but has not yet been released. Sadly at the moment the only thing I can think of would be to manually build out the requests using the HTTP Request node which is not ideal.

Hi @Jon!

Duly noted, thanks a lot! :+1:

No problem at all, I have popped a note on the internal ticket we have to nudge it along a bit.

1 Like

While they did remove private apps, you can still authenticate with an API key. However, it now uses a special header to send the key rather than the old api key and password method: Access tokens for custom apps in the Shopify admin

Is it possible to create a custom authentication for an existing integration like shopify, while still making use of all the APIs that are coded? That would seem easier than coding the entire thing in an http request. I would just have to tell the shopify integration to pass the X-Shopify-Access-Token and then it should be usable.

Hey @napter,

Welcome to the community :tada:

In the Shopify node if you select the Access Token option it should use the X-Shopify-Access-Token header, This looks to have been released in 0.187.0 last month if you do not see it as an option it could be worth an update… If you are using Desktop though this change is not currently available but will be in the next release.