
Shopify Admin Order Lookup And Summary
- 7 installs
- 173 repo stars
- Updated June 26, 2026
- 40rty-ai/shopify-admin-skills
shopify-admin-order-lookup-and-summary is a Claude Code skill that retrieves and summarizes full order details for a customer by email, order number, or phone number.
About
This skill retrieves and summarizes complete Shopify order details for a customer looked up by order number, email, or phone. A support agent uses it to answer questions about order status, shipping tracking, and refunds without opening the admin UI. It is read-only and returns a formatted per-order summary or raw JSON.
- Retrieves full Shopify order details by order number, email, or phone
- Returns financial status, fulfillment, line items, tracking, and refunds in one query
- Read-only; supports human or JSON output for downstream scripts
Shopify Admin Order Lookup And Summary by the numbers
- 7 all-time installs (skills.sh)
- Ranked #1,587 of 2,715 Automation & Workflows skills by installs in the Skillselion catalog
- Data as of Aug 1, 2026 (Skillselion catalog sync)
shopify-admin-order-lookup-and-summary capabilities & compatibility
Free skill; requires an authenticated Shopify store session with read_orders and read_customers scopes.
- Capabilities
- order lookup · order summary · customer support lookup
- Works with
- github
- Use cases
- orchestration
- Runs
- Runs locally
- Pricing
- Bring your own API key
- Requires keys
- SHOPIFYSTOREADMINAUTHVIASHOPIFYCLI
What shopify-admin-order-lookup-and-summary says it does
Retrieves complete order details for a customer without requiring navigation through the Shopify admin UI.
Order number lookups require the `#` prefix (e.g., `#1001`), which maps to the `name` field in the GraphQL query.
npx skills add https://github.com/40rty-ai/shopify-admin-skills --skill shopify-admin-order-lookup-and-summaryAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 7 |
|---|---|
| repo stars | ★ 173 |
| Last updated | June 26, 2026 |
| Repository | 40rty-ai/shopify-admin-skills ↗ |
What it does
Look up and summarize a Shopify customer's order details for support without navigating the admin UI.
Who is it for?
Support agents answering customer queries about order status, shipping tracking, and refunds.
Skip if: Bulk analytics or reporting across many orders; it is tuned for per-customer lookups.
When should I use this skill?
A customer asks about their order and you have their order number, email, or phone.
What you get
A single query returns the full order context (status, line items, shipping, tracking, refunds) for the matched customer.
- Formatted per-order summary (order number, status, customer, line items, shipping, tracking, refunds) or raw JSON order
By the numbers
- 3 lookup modes (order_number, email, phone)
- default limit of 5 orders returned
Files
Purpose
Retrieves complete order details for a customer without requiring navigation through the Shopify admin UI. Useful for support agents answering customer queries about order status, shipping tracking, and refunds. This skill operates directly on the Shopify-native data layer, returning full order context in a single operation.
Prerequisites
- Authenticated Shopify CLI session:
shopify auth login --store <domain> - API scopes:
read_orders,read_customers
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| store | string | yes | — | Store domain (e.g., mystore.myshopify.com) |
| format | string | no | human | Output format: human or json |
| dry_run | bool | no | false | Preview operations without executing mutations |
| lookup_by | string | yes | — | order_number, email, or phone |
| lookup_value | string | yes | — | The value to search for (e.g., #1001, jane@example.com, +15551234567) |
| limit | integer | no | 5 | Maximum number of orders to return |
Workflow Steps
1. OPERATION: orders — query Inputs: first: <limit>, query: "name:<order_number>" or "email:<email>" or "phone:<phone>" depending on lookup_by Expected output: Full order objects with financial status, fulfillment status, line items, shipping address, tracking, refunds
GraphQL Operations
# orders:query — validated against api_version 2025-01
query OrderLookup($first: Int!, $query: String) {
orders(first: $first, query: $query) {
edges {
node {
id
name
createdAt
processedAt
displayFinancialStatus
displayFulfillmentStatus
totalPriceSet {
shopMoney { amount currencyCode }
}
subtotalPriceSet {
shopMoney { amount currencyCode }
}
totalShippingPriceSet {
shopMoney { amount currencyCode }
}
totalRefundedSet {
shopMoney { amount currencyCode }
}
customer {
id
defaultEmailAddress {
emailAddress
}
firstName
lastName
phone
}
shippingAddress {
address1
address2
city
province
country
zip
phone
}
lineItems(first: 50) {
edges {
node {
title
quantity
variant {
sku
price
}
fulfillmentStatus
}
}
}
fulfillments {
trackingInfo {
number
url
company
}
status
createdAt
}
refunds {
createdAt
totalRefundedSet {
shopMoney { amount currencyCode }
}
}
note
tags
}
}
}
}Session Tracking
Claude MUST emit the following output at each stage. This is mandatory.
On start, emit:
╔══════════════════════════════════════════════╗
║ SKILL: order-lookup-and-summary ║
║ Store: <store domain> ║
║ Started: <YYYY-MM-DD HH:MM UTC> ║
╚══════════════════════════════════════════════╝After each step, emit:
[N/TOTAL] <QUERY|MUTATION> <OperationName>
→ Params: <brief summary of key inputs>
→ Result: <count or outcome>On completion, emit:
For format: human (default):
══════════════════════════════════════════════
OUTCOME SUMMARY
Orders found: <n>
Errors: 0
Output: none
══════════════════════════════════════════════For format: json, emit:
{
"skill": "order-lookup-and-summary",
"store": "<domain>",
"started_at": "<ISO8601>",
"completed_at": "<ISO8601>",
"dry_run": false,
"steps": [
{ "step": 1, "operation": "OrderLookup", "type": "query", "params_summary": "lookup_by: <type>, lookup_value: <value>, limit: <n>", "result_summary": "<n> orders", "skipped": false }
],
"outcome": {
"orders_found": 0,
"errors": 0,
"output_file": null
}
}Output Format
Human-readable formatted summary for each order found (not a CSV). For each order, Claude presents: order number, date, financial and fulfillment status, customer details, line items, shipping address, tracking numbers, and any refunds. For format: json, the raw order objects array.
Error Handling
| Error | Cause | Recovery |
|---|---|---|
| No orders returned | No match for lookup value | Verify lookup value format (order number must include #, e.g., #1001) |
lookup_by invalid | Value is not order_number, email, or phone | Use one of the three accepted values |
| Rate limit (429) | Too many requests | Reduce limit or wait and retry |
Best Practices
1. Order number lookups require the # prefix (e.g., #1001), which maps to the name field in the GraphQL query. 2. Phone lookups must use E.164 format (e.g., +15551234567); partial numbers will not match. 3. Email lookup returns all orders for that customer — set limit to retrieve more than the default 5 if the customer has many orders. 4. For format: json, pipe the output to jq to extract specific fields for downstream scripts. 5. This skill is read-only — use the refund-and-reorder skill if you need to process a refund after looking up the order.
Related skills
FAQ
How do I look up an order by number?
Order number lookups require the # prefix (e.g., #1001), which maps to the name field in the GraphQL query.
Does it modify anything?
No, the skill is read-only and only queries order data.