Section settings returning wrong values via Render API after cart update

Topic summary

A developer reports that section settings (checkboxes like order_note, estimated_shipping) in a cart-drawer component are returning incorrect values when re-rendered via Shopify’s Render API after cart updates.

The Problem:

  • Settings are correctly saved as disabled in the Theme Editor
  • On full page reload, settings display correctly
  • After cart updates (e.g., quantity changes), using ?sections=cart-drawer causes all settings to revert to their default true values instead of the saved configuration

Proposed Workaround:
One responder suggests storing setting values in global Liquid variables and reading them via JavaScript from the body tag, or hardcoding settings into the section render response. Code examples were provided but not fully visible.

Status: The issue remains unresolved with no confirmation whether this is expected API behavior or a bug.

Summarized with AI on October 26. AI used: claude-sonnet-4-5-20250929.

I’m facing an issue where a section (cart-drawer) has checkbox settings like order_note, estimated_shipping, etc. These are saved as disabled in the Theme Editor.

On full page reload, the settings are correct. But when I update the cart (like increasing quantity) and re-render the section using the Render API (?sections=cart-drawer), all the settings return to their default true values.

So even though order_note is disabled in the editor, section.settings.order_note shows true in the rendered HTML.

Can you confirm:

  • Is this expected behavior?

  • How can I get the correct, saved settings when rendering via the API?

Thanks

Hi,

Hope this will help

  • Step 1: Store setting values in global Liquid variables
  • Step 2: In your JS, read saved values from body tag
  • Step 3: OR hardcode settings into section render response
    Example code

  • Use Metafields or Ajax Context (Optional)