Cart-level attributes added via cart/update.js are available in checkout and order-status extensions after “Add to Cart,” but appear empty when using “Buy it Now.”
Buy It Now (express checkout) bypasses the add-to-cart step, so cart attributes may not be set or carried into checkout in this flow.
Proposed workaround: use line item properties (per-product/variant metadata) via cart/add.js. These properties are accessible in checkout extensions and work with both Add to Cart and Buy It Now.
Constraint: the original data is generic (cart-level, not tied to a specific item). The thread asks how to structure such non-item data and whether line item properties support private values (like the cart attribute “__” prefix). No guidance was provided on these points.
Outcome: No resolution; behavior appears by design rather than a documented bug. Open questions remain on storing cart-level metadata for express checkout and applying privacy to line item properties.
Note: Code snippets are central to the issue and the suggested implementation.
Summarized with AI on December 10.
AI used: gpt-5.
When I click “Add to Cart”, and follow the checkout flow, I can access the attribute in both checkout-ui extension, and order-status-ui extensions using something like: