How to Fetch a Shopify Order by Order Number Using HTTP Request Node in n8n?

Hi everyone,

I am building an n8n workflow that connects ManyChat with Shopify so customers can check their order status automatically.

In my current setup, the workflow asks the user for their order number, then the system tries to fetch the order details from Shopify.

However, I discovered that the Shopify node only fetches a limited number of recent orders, which causes an issue when users check older orders. The workflow runs successfully, but it cannot find the correct order.

I was advised to use the HTTP Request node to query the Shopify API directly instead of relying on the Shopify node or AI filtering.

However, I’m not sure how to properly configure the HTTP Request node for this.

Specifically, I would like to understand:

  • How to search Shopify orders using the order number (name field like #1234)

  • How to include fulfilled and closed orders

  • How to structure the API request correctly in n8n

If anyone has done this before, it would be very helpful if you could share:

  • A short Loom video

  • A YouTube tutorial

  • Or any documentation explaining the setup.

Thank you in advance for your help! :folded_hands:

1 Like

Hi @Samar_Abbas

I would keep it simple and use HTTP Request + Shopify GraphQL Admin API here.

1 Like

Hi @Samar_Abbas -

You need to figure how to generate an API Key from Shopify. Let us know how that goes and if you get stuck.

Once your API Key is in working order I’ve thrown together a simple template below that should help guide you. fulfilled and closed orders would be expected to be returned regardless as no additional parameters have been set to filter search results.

This isn’t a full in depth explanation - it’s a brief step to get you in the right direction. The second piece of help I would say is refer into API Parameters and what is supported from Shopify in order to retrieve for your use case. You need to change the URL Parameters within the URL and variables Appropriately. For instance, from the Many Chat output - you’ll need to take the OrderID Variable and assign it within the URL Path so the ID retrieved from the user is passed and queried via the API call.

https://{your-store-name}.myshopify.com/admin/api/{version}/orders.json?name={encoded-order-name}&status=any

name= → This filters by the exact name field (the public order number).

  • If the order number is #1234, encode the # as %23 → name=%231234

  • If the user provides just the digits (e.g. 1234), many integrations prepend # automatically: name=%23{{orderNumber}}

Effectively you need to manually create a web request from scratch, this takes abit of know-how but using AI would guide you in the right direction (or even generate the N8N Template for you) to suit your needs.

Feel free to ping me if you get stuck.

2 Likes

Hi @Jekylls, thank you for your detailed response. I had already created an app on Shopify before using OAuth2, and if I am not wrong, this time I have to use the Access Token option. I tried it but I am having a hard time generating an API key from Shopify.

I would your help in any shape.

Looking forward to hear from you.