Magento 2 Experten — Hyvä Theme, Tailwind CSS & SEO aus einer Hand ›

Checkout in Hyvä: Structure and the Most Important Customization Points

Checkout in Hyvä: Structure and the Most Important Customization Points

~8 Min. Lesezeit Zuletzt aktualisiert am August 9, 2026

Checkout is the most business-critical part of any shop - customizations should be handled correspondingly carefully. This chapter shows how Hyvä structures checkout, and where the safe customization points are.

The Hyvä checkout at a glance

Luma uses a complex, Knockout-based JavaScript component system for checkout, with dynamically loaded steps. Hyvä replaces that with a much simpler structure: individual PHP/Alpine templates for cart summary, address, shipping method, payment method, and order summary, run through sequentially server-side.

State that lives across multiple steps

Unlike the team page (chapters 17-22), where all state lives within a single page, checkout needs to retain state across several server requests (e.g. the chosen shipping method, while moving on to the payment method). That doesn't happen via Alpine (which only knows client-side, page-local state), but via Magento's regular session and quote mechanisms - exactly like in Luma.

Tipp: Rule of thumb: Alpine manages interactivity within a checkout step (e.g. an expandable "redeem voucher" field), while the transition between steps still runs through regular Magento controllers/requests.

Safe customization points

  • Layout XML: showing/hiding individual payment method templates via referenceBlock.
  • Custom template overrides (chapter 10) for individual sections like the order summary.
  • Extra Alpine interactivity within a step, e.g. a live validation hint while entering an address.

Risky customizations

Achtung: The flow of the checkout steps itself, payment processing, and order creation shouldn't be rebuilt "quickly" via template overrides - these involve security-relevant validation and payment provider integrations whose behavior can easily break if parts are overridden in isolation without understanding the full data flow. For deep checkout customizations, it's worth reading the Hyvä checkout documentation before starting with overrides.

What transfers from the team page

The pattern "ViewModel supplies data, template displays it with the escaper, Alpine handles pure UI interactivity" (chapters 17-22) also applies in checkout - just applied per step, not to the entire checkout process at once.