Shopify
Get Shopify Order Status
Checks the payment and fulfilment status of one order using its number and email.
Unverified
What the model is told
Check an order in Shopify. Ask the customer for their order number (without the # symbol) and the email address used for the order, then call this tool. It only returns an order when both match, so if nothing comes back, tell the customer you could not find a match and ask them to check the details. The response lists the order date, whether it was cancelled, payment status, fulfilment status, the total and the items. Do not read out anything beyond what the customer asks for.
Request
POSThttps://YOUR_SHOP.myshopify.com/admin/api/2026-10/graphql.json
Headers
Content-Typeapplication/jsonX-Shopify-Access-TokenYOUR_SHOPIFY_ADMIN_ACCESS_TOKEN
Body
{
"query": "query($q: String!) { orders(first: 1, query: $q) { nodes { name createdAt cancelledAt displayFinancialStatus displayFulfillmentStatus totalPriceSet { shopMoney { amount currencyCode } } lineItems(first: 10) { nodes { title quantity } } } } }",
"variables": {
"q": "name:{{orderNumber}} email:{{email}}"
}
}Parameters
orderNumber stringThe order number the customer quotes, without the # symbol.email stringThe email address on the order. Both the order number and the email must match.
Engage payload
{
"source": "VOICE_AI",
"tool": {
"id": "e4ed3efb-dc85-47e6-ae9b-7fadc07370f8",
"type": "HTTP_REQUEST",
"label": "Get Shopify Order Status",
"name": "get_shopify_order_status",
"customName": false,
"description": "Check an order in Shopify. Ask the customer for their order number (without the # symbol) and the email address used for the order, then call this tool. It only returns an order when both match, so if nothing comes back, tell the customer you could not find a match and ask them to check the details. The response lists the order date, whether it was cancelled, payment status, fulfilment status, the total and the items. Do not read out anything beyond what the customer asks for.",
"parameters": [
{
"name": "orderNumber",
"type": "string",
"description": "The order number the customer quotes, without the # symbol."
},
{
"name": "email",
"type": "string",
"description": "The email address on the order. Both the order number and the email must match."
}
],
"config": {
"endpoint": {
"method": "POST",
"url": "https://YOUR_SHOP.myshopify.com/admin/api/2026-10/graphql.json"
},
"headers": [
{
"name": "Content-Type",
"value": "application/json"
},
{
"name": "X-Shopify-Access-Token",
"value": "YOUR_SHOPIFY_ADMIN_ACCESS_TOKEN"
}
],
"body": "{\n \"query\": \"query($q: String!) { orders(first: 1, query: $q) { nodes { name createdAt cancelledAt displayFinancialStatus displayFulfillmentStatus totalPriceSet { shopMoney { amount currencyCode } } lineItems(first: 10) { nodes { title quantity } } } } }\",\n \"variables\": {\n \"q\": \"name:{{orderNumber}} email:{{email}}\"\n }\n}",
"timeout": null
}
}
}IDs are regenerated on every copy.