Order object now has thecartToken fieldYou can now retrieve the token tied to the "cart" that generated an order directly from the GraphQL Admin API. A field that returns the same value as the REST Admin API's cart_token .
Order object, a cartToken field has been added.cart_token withthe same value.
The token that links a cart to an order was only available from the REST Admin API's cart_token . Even if you had standardized on GraphQL, you still had to use REST alongside it just for this one value.
Order.cartToken can now be retrieved directly from GraphQL. Because it returns the same value as in REST, you can move your existing reconciliation logic straight over to the GraphQL side.
Order side. This lets you tie the cart (before purchase) and the order (after purchase) together with the same key.
| Item | REST Admin API | GraphQL Admin API |
|---|---|---|
| Field name | cart_token(snake_case) |
cartToken(camelCase) |
| Where it appears | Order resource | Order Object |
| Returned value | Same Token of the cart that created the order | |
| Availability | Available previously | Newly added |
| API version | Not specified | The changelog tag is 2026-07 |
Since the changelog includes no query example, the following is a general illustration of how to fetch the new field on the Order object. Verify the actual field structure against the reference for the target version.
cart_token can now be consolidated into GraphQL. It's enough to add, to the same query you use to fetch the order list, cartToken as a single line.cartToken returns the same value as REST's cart_token . Only the naming becomes camelCase; matching logic and compatibility with stored data remain intact.
The changelog tag is 2026-07. To use it, you must specify this version or later. Note that apps pinned to an older version may not see it yet.
Code that used REST alongside GraphQL solely for this value can be moved to GraphQL. This reduces dual-API setups and unifies authentication and rate limiting into a single path.
What the value becomes (whether it turns null) for "orders that don't go through a cart"—such as manually created, POS, or draft-originated orders—is, according to the changelog,not specified. It's safest to add handling that assumes null.
cartToken can serve as a common key linking "same cart → same order." It's well suited for later JOINing confirmed orders with the logs and behavioral data accumulated at the cart stage. The token itself is not a confidential value, but since it's an ID that could let someone uniquely infer an order, handle it with care when writing logs.
cart_token , you had to call REST through a separate path, duplicating the aggregation pipeline.cartToken , then JOIN it with the token in your cart-side logs. Reconstruct which cart became which order from the GraphQL response alone.cart_token , so you can reuse your existing reconciliation table as is. Handle it on the assumption that it can be null for non-cart orders.cart_token alone wasn't available in GraphQL, forcing you to keep REST, so the migration couldn't be fully completed.cartToken and retire the REST call. Unify authentication, rate control, and error handling into a single GraphQL path.2026-07 or later before switching over. If you stay pinned to an old version, the field won't be visible.cartToken and save it, making it the common key for reconciliation with the cart token on the external platform side.cartToken) is now in the GraphQL Admin API's Order can be retrieved directly from.cart_token , soyou can consolidate cart-to-order reconciliation into GraphQL, reducing your reliance on REST by one."