’m building a custom customer account experience using:
-
Hydrogen: Hydrogen docs
-
The Customer Account API: Customer Account API reference
The goal is to replicate the order details view that Shopify shows in the new customer accounts (the /account/orders/{id} pages), including returns- and fulfillment‑related information.
Issue
When I inspect the network requests for the Shopify‑hosted customer account order details page (URL looks like:
https://{shop}.myshopify.com/account/orders/{order_id}
), I see a GraphQL response for the order object that includes a number of fields that do not exist in the public Customer Account API schema or documentation.
Examples of fields visible in the Shopify‑hosted order page response:
-
returns.timelineEvents -
customerFulfillmentStatus -
editSummary -
Various subfields on
returnInformation,returns, and other order‑level metadata
However:
-
These fields don’t appear in the Customer Account API Order object docs, and
-
If I try to request them from my Hydrogen app using the Customer Account API client, they are not in the schema / result in validation errors.
This means I cannot reproduce the same level of detail in my custom Hydrogen customer account that Shopify shows in its own new customer account UI.
What I’m seeing technically
When I call the Customer Account API order query from my Hydrogen app, I get a response roughly like this (simplified)
{
“order”: {
“id”: “gid://shopify/Order/7870325456983”,
“name”: “#1005”,
“confirmationNumber”: “IVRVM1PEN”,
“processedAt”: “2026-03-30T13:23:21Z”,
“currencyCode”: “JPY”,
“billingAddress”: { “…”: “…” },
“shippingAddress”: { “…”: “…” },
“transactions”: [ /* … / ],
“currentTotalPrice”: { “amount”: “66000.0”, “currencyCode”: “JPY” },
“subtotal”: { “amount”: “60000.0”, “currencyCode”: “JPY” },
“totalShipping”: { “amount”: “0.0”, “currencyCode”: “JPY” },
“totalTax”: { “amount”: “6000.0”, “currencyCode”: “JPY” },
“financialStatus”: “PAID”,
“fulfillmentStatus”: “UNFULFILLED”,
“returns”: {
“nodes”: []
},
“returnInformation”: {
“nonReturnableSummary”: {
“nonReturnableReasons”: [“UNFULFILLED”]
},
“returnFees”: [ / … */ ]
}
// …
}
}
But the Shopify‑hosted order detail view is clearly using a richer schema that includes, for example:
-
returns.timelineEvents(timeline/history of the return process) -
customerFulfillmentStatus -
editSummaryand possibly other edit- or adjustment‑related data
None of these appear in the publicly documented Customer Account API schema, and I can’t select them in my queries.
Why this matters
-
The new Customer Account API is positioned as the way to build a custom customer account front-end (for example with Hydrogen).
-
Merchant‑facing Shopify UI for customer accounts already shows these extra fields in the order details view.
-
To provide a consistent experience for customers, we need access to the same information:
-
Return timelines (
returns.timelineEvents) -
Customer-facing fulfillment status (
customerFulfillmentStatus) -
Edit summaries / adjustments (
editSummary) -
Any other relevant pieces that are present in Shopify’s own internal response but missing from the public schema.
-
Right now, there’s no documented way to:
-
Query these fields via the Customer Account API, or
-
Get the same structured return/fulfillment timeline that Shopify shows in the hosted account UI.
Questions for the Shopify team
-
Are fields like
returns.timelineEvents,customerFulfillmentStatus, andeditSummaryintentionally internal-only, or are they planned to be exposed in the public Customer Account API? -
If they’re meant to be available, is this a bug / documentation gap, and can they be added to the Customer Account API order schema docs?
-
Is there any supported workaround today to obtain:
-
A structured return/returns timeline for a given order, and
-
The same customer-facing fulfillment status that the new customer account UI uses?
-
-
Is there a recommended way to keep parity between the new Shopify customer accounts order details page and a Hydrogen-based custom customer account?
Environment
-
Building a Hydrogen storefront: Hydrogen
-
Using the Customer Account API (new customer accounts, OAuth flow) from the Hydrogen server
-
Storefront is connected to the same shop where I observed the internal
/account/orders/{id}GraphQL response
I’m happy to provide:
-
Minimal sample queries (Customer Account API vs internal UI call),
-
Full (anonymized) GraphQL responses,
if that helps to investigate.
Thanks in advance — even a confirmation that these are internal-only vs. planned public fields would help me decide whether to build a workaround or wait for API parity.