Magento 2 Checkout Extended: Multi-Column Checkout with Sticky Sidebar, Newsletter, and Qty Controls (Hyva + Luma)
Replace the dated Magento accordion checkout with a clean, configurable multi-column layout. Panth Checkout Extended adds a sticky order summary sidebar, newsletter opt-in, an optional order note, a saved-address picker for logged-in customers, qty +/- controls, coupon code in the sidebar, a sidebar place-order button, four card styles, an accent color picker, border radius control, and custom CSS/JS injection. Every option is togglable from the admin panel with no code changes required.
Product page: kishansavaliya.com/magento-2-checkout-extended.html
What is Panth Checkout Extended? It is a Magento 2 checkout extension that replaces the default two-step accordion checkout with a configurable multi-column layout, a sticky sidebar, and a set of UX improvements that are all controllable from the admin panel.
What does it add to my store?
- A configurable 1, 2, or 3 column layout so shipping, payment, and the order summary can sit side by side.
- A sticky order summary sidebar that keeps the place-order button, coupon code, and newsletter checkbox visible as the customer scrolls.
- Qty +/- increment controls in the order summary, respecting product-level qty increments.
- A newsletter subscription checkbox at checkout for guest and logged-in customers.
- An optional order note field (off by default) whose text lands on the order, in the admin comment history and in the order confirmation email.
- An address book picker that lets logged-in customers switch between saved shipping addresses in a popup.
- Four card styles (Elevated, Bordered, Flat, Glassmorphism), an accent color picker, and a border radius control.
- Custom CSS and JS textareas in admin for quick tweaks without a theme override.
Which themes are supported? Both Luma (native) and Hyva storefronts that run the standard Magento checkout. It does not apply to the separate Hyva Checkout product.
What does it need? Magento 2.4.4 to 2.4.9, PHP 8.1 to 8.4, and the free mage2kishan/module-core package.
Get a free quote for your project in 24 hours for custom modules, Hyva themes, performance work, M1 to M2 migrations, and Adobe Commerce Cloud.
|
Top Rated Plus on Upwork 100% Job Success • 10+ Years Magento Experience Adobe Certified • Hyva Specialist |
Magento Development Team Custom Modules • Theme Design • Migrations Performance • SEO • Adobe Commerce Cloud |
Visit our website: kishansavaliya.com | Get a quote: kishansavaliya.com/get-quote
- Who Is It For
- Key Features
- Compatibility
- Installation
- Configuration
- Theming with CSS Variables
- How It Works
- FAQ
- Support
- About Panth Infotech
- Quick Links
- Stores where the default checkout hurts conversion because the place-order button is buried and shoppers have to scroll past a long accordion form.
- Merchants who want a modern checkout UI without hiring a developer for every small styling change. The accent color, border radius, and card style are all admin settings.
- B2B stores where buyers order by part number and want the product SKU visible in the order summary.
- Stores that want newsletter signups at checkout without a separate integration. The checkbox is built in and works for both guests and logged-in customers.
- Hyva storefronts running the standard Magento checkout that want multi-column layout and sidebar improvements.
- 1, 2, or 3 column layout selectable from the admin panel without touching a template.
- Sidebar position left or right.
- Sticky sidebar keeps the order summary panel fixed as the customer scrolls.
- Body classes added automatically so you can target any configuration state with CSS.
- Place-order button in the sidebar so it is always visible, not buried at the bottom.
- Coupon code moved to the sidebar out of the payment step.
- Newsletter checkbox in the sidebar for a passive, always-visible opt-in.
- Cart items auto-expanded on page load, no click needed.
- Discount input auto-expanded and ready at page load.
- Checkbox in the order summary sidebar with a configurable label and default checked state.
- Works for guest and logged-in customers using payment extension attributes for clean transport.
- Skips duplicate subscriptions silently.
- Failures are caught and logged and never block order placement.
- +/- buttons next to each item in the order summary.
- Respects product-level
qty_increments(e.g. 0.5 or 5 step). - Updates cart via AJAX with totals refreshing in place.
- Stock-aware - the + button disables at max available stock.
- Order note (optional, off by default): a textarea with a live character counter in the order summary, with admin-configurable label, placeholder and maximum length. When Panth_AdvancedCart handles order notes, its note is used instead and this one stays hidden.
- The note is cleaned server-side (tags and control characters stripped, trimmed, clamped to the maximum length) and saved as the order's customer note, so it shows in the admin order view, is added to the order's Comments History, and is printed in the order confirmation email.
- Works for guest and logged-in customers through the
panth_order_notepayment extension attribute, the same transport as the newsletter checkbox. - Address book picker: logged-in customers with saved addresses get an Address book button next to New Address in the shipping step. It opens a centred popup listing every saved address as a selectable card, with the current address pre-selected, Save Address to switch and Add New Address to open the standard form.
- Keyboard and screen-reader friendly: the popup traps focus, closes on Escape or a click on the scrim, and every string is translatable.
- Card styles: Elevated (shadow), Bordered, Flat, Glassmorphism.
- Accent color - admin color picker with server-side hex validation. Exposed as
--panth-checkout-accentCSS variable. - Border radius - pixel-level control. Exposed as
--panth-checkout-radiusCSS variable. - Shipping row highlight - the selected shipping-method row gets an accent border and a tinted background. Rebindable via
--panth-co-row-hoverand--panth-co-row-selected(the older--panth-checkout-row-hoverand--panth-checkout-row-selectednames still work as inputs). - One design geometry - 1440px page width, 48px header, 46px inputs and shipping rows, 380px summary column, 12px cards and 10px controls at the default radius, all exposed as
--panth-co-*tokens. - Custom radios and checkboxes drawn by the stylesheet so they follow the accent colour and look the same in every browser.
- Type scale - one checkout-wide hierarchy (26 title / 16 section / 26 total / 15 button / 14 body / 13 label and action / 12 hint, nothing below 12px), rebindable via the
--panth-co-fs-*tokens or the older--panth-checkout-fs-title,--panth-checkout-fs-section,--panth-checkout-fs-total,--panth-checkout-fs-button,--panth-checkout-fs-body,--panth-checkout-fs-label,--panth-checkout-fs-action,--panth-checkout-fs-hint. - Step indicators - optional numbered badges above each checkout section.
- Field modes - Compact (multiple fields per row) or Full Width (one field per row).
- Placeholder toggle and Tooltip toggle for form fields.
- Billing title visibility toggle.
- Auto-save shipping info as the customer types, so the payment step loads instantly.
- Real-time billing sync when "same as shipping" is checked.
- Product SKU display in the order summary.
- Clickable product names linking back to the product page.
- Default shipping method pre-selection by composite code (e.g.
flatrate_flatrate). - Hide single shipping method when only one option is available.
- Sort shipping by price cheapest first.
- Default payment method pre-selection by code (e.g.
checkmo). - Item count in the page heading ("N Items in Cart") that follows the live totals.
- Signed-in line at the top of the shipping step for logged-in customers ("Signed in as ..." with a Sign out link).
- Bank transfer note under the Bank Transfer Payment method title ("Payment details are sent with your order confirmation.").
- Thumbnail fallback - summary thumbnails refresh from the cart data after every change and fall back to the catalog placeholder image instead of a broken image.
- CSS custom-property layer: every colour, radius, size and font size is a
--panth-co-*token with its default on.panth-checkout-extended; a theme overrides them onbody.panth-checkout-extendedwithout!important. - Custom CSS textarea injected inline on the checkout page only.
- Custom JS textarea injected via RequireJS with a
try/catchwrapper. - ACL resource
Panth_CheckoutExtended::configfor granular admin permissions. - Per-store-view scope - all settings respect Magento's standard scope hierarchy.
- MEQP-compliant with constructor dependency injection only, no ObjectManager.
- No core file modifications - clean plugin and observer architecture.
- Translation ready using Magento's
__()function throughout. - Full Page Cache compatible - the checkout page itself is not cached by default in Magento.
| Requirement | Versions Supported |
|---|---|
| Magento Open Source | 2.4.4, 2.4.5, 2.4.6, 2.4.7, 2.4.8, 2.4.9 |
| Adobe Commerce | 2.4.4, 2.4.5, 2.4.6, 2.4.7, 2.4.8, 2.4.9 |
| Adobe Commerce Cloud | 2.4.4 to 2.4.9 |
| PHP | 8.1.x, 8.2.x, 8.3.x, 8.4.x |
| Luma Theme | Native support |
| Hyva Theme | Supported when running the standard Magento checkout |
| Required Dependency | mage2kishan/module-core ^1.0 (free, installed automatically) |
composer require mage2kishan/module-checkout-extended
bin/magento module:enable Panth_Core Panth_CheckoutExtended
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento setup:static-content:deploy -f
bin/magento cache:flush- Download the latest release from Packagist or from the product page.
- Extract it to
app/code/Panth/CheckoutExtended/in your Magento install. - Make sure
Panth_Coreis installed too (required dependency). - Run the commands above starting from
bin/magento module:enable.
bin/magento module:status Panth_CheckoutExtended
# Expected: Module is enabledAfter install, open:
Admin -> Stores -> Configuration -> Panth Extensions -> Checkout Extended
Go to Stores -> Configuration -> Panth Extensions -> Checkout Extended. All settings are scoped per store view.
| Setting | Group | Default | Description |
|---|---|---|---|
| Enable Checkout Extended | General | Yes | Master toggle. When No, the storefront reverts to the default Magento checkout. |
| Setting | Group | Default | Description |
|---|---|---|---|
| Columns | Layout | 3 | Number of columns: 1 (stacked), 2 (content + sidebar), or 3 (shipping, payment, and summary side by side). |
| Sidebar Position | Layout | Right | Place the order summary sidebar on the Left or Right. |
| Sticky Sidebar | Layout | No | When Yes, the order summary stays pinned as the customer scrolls. |
| Setting | Group | Default | Description |
|---|---|---|---|
| Card Style | Style | Elevated (Shadow) | Visual treatment for checkout cards: Elevated, Bordered, Flat, or Glassmorphism. |
| Accent Color | Style | #1a1a2e | Admin color picker. Drives buttons and highlights through --panth-checkout-accent. Non-hex values fall back to the default. |
| Accent Hover Color | Style | empty | Colour of primary buttons on hover. Empty derives a shade 15 percent darker than the Accent Color. Output as --panth-checkout-accent-hover. |
| Border Radius (px) | Style | 12 | Corner radius for cards and form elements. Output as --panth-checkout-radius. |
| Step Indicators | Style | No | When Yes, numbered badges appear above each checkout section. |
| Setting | Group | Default | Description |
|---|---|---|---|
| Qty Increment Controls | Cart & Order Summary | No | When Yes, +/- buttons appear next to each item. Respects product qty_increments. Updates via AJAX. |
| Show SKU | Cart & Order Summary | No | Shows the product SKU below each item name in the summary. |
| Product Link | Cart & Order Summary | No | Makes item names in the summary clickable, linking to the product page. |
| Setting | Group | Default | Description |
|---|---|---|---|
| Enable Newsletter Checkbox | Newsletter Subscription | Yes | Shows a newsletter opt-in checkbox in the sidebar at checkout. |
| Checkbox Label | Newsletter Subscription | Subscribe to our newsletter | Label text shown next to the checkbox. Translatable. |
| Checked by Default | Newsletter Subscription | Yes | When No, the box is unchecked by default, suitable for GDPR strict opt-in markets. |
| Setting | Group | Default | Description |
|---|---|---|---|
| Enable Order Note | Order Note | No | Shows an optional note textarea in the order summary. The note is saved on the order, added to its Comments History and printed in the order confirmation email. Config path panth_checkout_extended/order_note/enabled. |
| Field Label | Order Note | Order note | Label shown above the textarea. Translatable. Config path panth_checkout_extended/order_note/label. |
| Placeholder | Order Note | Anything we should know about your order? | Placeholder text inside the empty textarea. Config path panth_checkout_extended/order_note/placeholder. |
| Maximum Length | Order Note | 500 | Maximum number of characters, enforced in the browser (maxlength plus a live "n/500" counter) and again on the server. Config path panth_checkout_extended/order_note/max_length. |
The address book picker has no settings: it appears automatically for logged-in customers who have at least one saved address.
If Panth_AdvancedCart is installed and its Order Notes feature is on, that note is used and this one stays hidden, whatever the Enable Order Note setting says. Only one note textarea ever renders. The module still styles the AdvancedCart note (panth-order-note-* classes); its own note uses panth-co-order-note-* classes.
| Setting | Group | Default | Description |
|---|---|---|---|
| Field Mode | Form Styles | Compact | Compact: multiple fields per row. Full Width: one field per row. |
| Use Placeholders | Form Styles | No | When Yes, label text is mirrored into field placeholders. |
| Show Tooltips | Form Styles | No | When Yes, tooltip icons with help text appear next to form fields. |
| Setting | Group | Default | Description |
|---|---|---|---|
| Default Shipping Method | Shipping | (empty) | Pre-selects a shipping method by composite code, e.g. flatrate_flatrate. |
| Hide Single Method | Shipping | No | When Yes and only one shipping method is available, the radio selector is hidden. |
| Sort by Price | Shipping | No | When Yes, shipping methods are sorted cheapest first. |
| Setting | Group | Default | Description |
|---|---|---|---|
| Default Payment Method | Payment | (empty) | Pre-selects a payment method by code, e.g. checkmo. |
| Setting | Group | Default | Description |
|---|---|---|---|
| Show Billing Title | Billing | Yes | When No, the "Billing Address" section title is hidden. |
| Setting | Group | Default | Description |
|---|---|---|---|
| Custom CSS | Custom Code | (empty) | Raw CSS injected inline on the checkout page. Do not include style tags. |
| Custom JS | Custom Code | (empty) | Raw JavaScript injected via RequireJS at checkout, wrapped in try/catch. Do not include script tags. |
Every colour, radius, size and font size used by the checkout stylesheet is a --panth-co-* custom property declared with its default on .panth-checkout-extended (the checkout body, specificity 0,1,0). Every rule in the stylesheet reads those tokens only. A theme overrides them with a plain rule on body.panth-checkout-extended, which wins regardless of stylesheet load order; no !important and no selector matching is needed. Module selectors are capped at body.panth-checkout-extended plus a few further parts, so a theme rule of the same shape placed after the module stylesheet wins for anything that is not covered by a token.
The admin Accent Color, Accent Hover Color and Border Radius (px) settings keep winning: the dynamic styles block writes --panth-checkout-accent, --panth-checkout-accent-hover, --panth-checkout-radius and --panth-checkout-radius-sm on :root and on .panth-checkout-extended, and the matching tokens default to them (--panth-co-accent: var(--panth-checkout-accent, #1a1a2e) and so on). When Accent Hover Color is empty, the hover value is a shade 15 percent darker than the accent, so primary buttons darken on hover like the rest of a typical storefront. --panth-checkout-radius-sm is max(4, radius - 2), so the default radius 12 gives 12px cards and 10px controls. In practice: cards take the admin value and controls take the admin value minus 2. The design is drawn for 12 and 10, so keep the admin value at 12 (the default). A store that still has 8 from an older setup gets 8px cards and 6px controls, which looks subtly tighter than the design. The tint, edge and ring colours are derived from the accent with color-mix() (with a plain rgba fallback for older engines), so changing the accent in the admin panel restyles selected rows, the active payment card and the focus ring as well.
The names that shipped in 1.0.10 keep working as inputs: --panth-checkout-accent, -accent-hover, -radius, -radius-sm, -row-hover, -row-selected and the type scale --panth-checkout-fs-title, -fs-section, -fs-total, -fs-button, -fs-body, -fs-label, -fs-action, -fs-hint. Each one is the default of the matching --panth-co-* token, so an existing override on body.panth-checkout-extended (or on body) still applies. New overrides should target the --panth-co-* names.
Design defaults: the checkout renders on one geometry: a 1440px page (--panth-co-page-max) with 40px side insets (--panth-co-page-pad), a 48px header (--panth-co-header-h), 46px inputs, selects, discount field and Apply button (--panth-co-ctl-h), 46px shipping method rows, a 380px order summary column (--panth-co-sidebar-w) with a 32px column gap (--panth-co-col-gap), and 12px cards with 10px controls at the default admin radius of 12. Change any of them by overriding the token; a theme that needs a narrower page sets --panth-co-page-max alone and the header, heading and columns follow.
Remaining !important: the stylesheet keeps 26 !important declarations. Each one exists only to beat an inline style written by a Magento widget (the collapsible's display: none, the core thumbnail's inline size) or a third-party stylesheet layer that itself uses !important on inputs and buttons; none of them is needed to beat a plain theme rule, so a token override or a body.panth-checkout-extended rule placed after the module stylesheet is always enough.
Example for a fictional brand (Acme Store):
body.panth-checkout-extended {
--panth-co-accent: #b91c1c;
--panth-co-accent-dark: #991b1b;
--panth-co-page-bg: #fafaf9;
--panth-co-card-bg: #ffffff;
--panth-co-line: #e7e5e4;
--panth-co-card-radius: 4px;
--panth-co-ctl-radius: 4px;
--panth-co-ctl-h: 48px;
--panth-co-header-h: 72px;
--panth-co-page-max: 1200px;
}Header layout: the checkout header is .panth-checkout-header, a three-column grid (back link | logo | secure note) with __back, __logo and __secure cells inside .header.content, which is --panth-co-header-h tall and as wide as --panth-co-page-max with --panth-co-page-pad side insets. The store logo block is moved into the middle cell, so it sits in normal flow; the logo image is 30px tall (26px at 480px and below). The secure note is hidden at 640px and below.
Responsive token changes: --panth-co-page-pad becomes 16px at 1100px and below and 12px at 480px and below; --panth-co-page-top / --panth-co-page-bottom become 20px / 32px at 900px and below (where the columns stack); --panth-co-qty-btn becomes 36px at 480px and below; --panth-co-transition becomes 0s under prefers-reduced-motion: reduce. Override a token inside your own media query if you need a different responsive value.
| Token | Default | Controls |
|---|---|---|
--panth-co-ink |
#1F2E44 |
Primary text, prices, totals |
--panth-co-muted |
#6B7686 |
Secondary text, totals labels |
--panth-co-faint |
#96A0AF |
Placeholders, hints, SKU |
--panth-co-line |
#E5EAF2 |
Borders and dividers |
--panth-co-surface |
#F4F7FB |
Soft fills: items toggle, hover states, modal footer |
--panth-co-ring |
#C7D0DC |
Unchecked radio and checkbox border |
--panth-co-card-bg |
#FFFFFF |
Card, control and modal background |
--panth-co-page-bg |
#FAFBFC |
Page background |
--panth-co-accent |
var(--panth-checkout-accent, #1a1a2e) |
Accent: buttons, links, checked controls, selected rows (admin Accent Color) |
--panth-co-accent-dark |
var(--panth-checkout-accent-hover, #111827) |
Accent hover and active state (admin, accent + dd alpha) |
--panth-co-accent-contrast |
#FFFFFF |
Text on accent backgrounds |
--panth-co-accent-tint |
color-mix(accent 5%, transparent) |
Selected row and active payment card fill |
--panth-co-accent-edge |
color-mix(accent 35%, transparent) |
Active payment title hairline |
--panth-co-accent-ring |
color-mix(accent 16%, transparent) |
Focus ring |
--panth-co-row-hover |
var(--panth-checkout-row-hover, var(--panth-co-surface)) |
Shipping row hover background |
--panth-co-row-selected |
var(--panth-checkout-row-selected, var(--panth-co-accent-tint)) |
Selected shipping row and address card background |
--panth-co-danger |
#DC2626 |
Validation text, error borders, required marker |
--panth-co-danger-fill |
#FEF2F2 |
Error field and error message background |
--panth-co-danger-ink |
#B4423F |
Error message text |
--panth-co-danger-title |
#B91C1C |
Bold text inside error messages |
--panth-co-warn-line |
#F5D08A |
Warning message and payment instructions border |
--panth-co-warn-fill |
#FEF6E7 |
Warning message and payment instructions background |
--panth-co-warn-ink |
#8A5A16 |
Warning message and payment instructions text |
--panth-co-success |
#16A34A |
Success message text |
--panth-co-success-fill |
#F0FDF4 |
Success message background |
--panth-co-success-line |
#BBF7D0 |
Success message border |
--panth-co-scrim |
rgba(31, 46, 68, 0.55) |
Modal overlay and place-order overlay |
--panth-co-modal-shadow |
0 24px 60px rgba(31, 46, 68, 0.22) |
Modal shadow |
--panth-co-card-shadow |
0 1px 2px rgba(31, 46, 68, 0.04) |
Card shadow (Elevated card style only) |
--panth-co-page-max |
1440px |
Page, header and checkout container max width |
--panth-co-page-pad |
40px (16px at 1100px and below, 12px at 480px and below) |
Side inset of header, heading and container |
--panth-co-page-top |
32px (20px at 900px and below) |
Space above the page heading |
--panth-co-page-bottom |
48px (32px at 900px and below) |
Space below the checkout |
--panth-co-col-gap |
32px |
Gap between the checkout columns |
--panth-co-sidebar-w |
380px |
Order summary column width |
--panth-co-card-radius |
var(--panth-checkout-radius, 12px) |
Cards, summary and modals (admin Border Radius) |
--panth-co-ctl-radius |
var(--panth-checkout-radius-sm, 8px) |
Inputs, buttons, rows and payment cards (admin, max(4, radius - 2)) |
--panth-co-ctl-h |
46px |
Inputs, selects, discount field and Apply button height |
--panth-co-header-h |
48px |
Checkout header height |
--panth-co-sticky-top |
24px |
Sticky summary top offset |
--panth-co-thumb |
46px |
Summary thumbnails |
--panth-co-qty-btn |
28px (36px at 480px and below) |
Qty stepper buttons |
--panth-co-fs-title |
var(--panth-checkout-fs-title, 26px) |
Page title (22px at 900px and below) |
--panth-co-fs-section |
var(--panth-checkout-fs-section, 16px) |
Step and summary titles |
--panth-co-fs-total |
var(--panth-checkout-fs-total, 26px) |
Grand total figure (22px at 900px and below) |
--panth-co-fs-button |
var(--panth-checkout-fs-button, 15px) |
Place Order button |
--panth-co-fs-body |
var(--panth-checkout-fs-body, 14px) |
Body text, inputs, totals figures |
--panth-co-fs-label |
var(--panth-checkout-fs-label, 13px) |
Field labels |
--panth-co-fs-action |
var(--panth-checkout-fs-action, 13px) |
Secondary actions and links |
--panth-co-fs-hint |
var(--panth-checkout-fs-hint, 12px) |
Hints, notes, SKU, counters |
--panth-co-fs-row |
13.5px |
Shipping rows, payment titles, totals labels |
--panth-co-fs-note |
12.5px |
Validation messages, method notes, field notes |
--panth-co-transition |
0.15s ease (0s under reduced motion) |
Hover and focus transitions |
- An observer applies a custom layout handle to the checkout page based on the active configuration.
- The layout handle adds the multi-column wrapper, sticky sidebar component, and sidebar blocks (place-order, coupon, newsletter checkbox, qty controls).
- A block renders dynamic CSS variables and body classes to the page head, so every admin setting is reflected in the storefront without a template change.
- The newsletter checkbox state is captured via a payment extension attribute and processed by two plugins: one for guests (by email) and one for logged-in customers (by customer ID).
- Qty increment +/- buttons update the cart via AJAX using the standard Magento cart API. Totals refresh in place.
- Auto-save shipping logic sends the shipping address and method to the server as the customer types, using debounced AJAX with fingerprint deduplication. The payment step loads instantly when reached.
- The order note (when enabled) travels with the payment request as the
panth_order_noteextension attribute. Before-plugins on the guest and customer payment-information services sanitise it and store it on the quote as the customer note; Magento copies it to the order and the confirmation email, and an observer onsales_order_place_afteradds it to the order's Comments History. - The address book, the heading item count, the signed-in line and the bank transfer note are small RequireJS modules started from the checkout init script; they read the standard checkout models (quote totals, customer data) and inject their markup into the existing checkout DOM.
Yes, on Hyva stores that use the standard Magento checkout (the Luma/KnockoutJS checkout, which is the most common Hyva setup). The extension targets that checkout and works on both Luma themes and Hyva storefronts running it. It does not apply to the separate Hyva Checkout product.
Yes. It works identically on Magento Open Source, Adobe Commerce on-premise, and Adobe Commerce Cloud, versions 2.4.4 through 2.4.9.
No. The extension uses Magento's standard checkout layout and payment extension attributes. All third-party payment methods (Stripe, Braintree, PayPal, Razorpay, Klarna, Afterpay, and others) continue to work. The default payment method setting only pre-selects a method, it does not remove any others.
No. The auto-save shipping logic actually speeds up the checkout by pre-saving the address while the customer is still typing, so the payment step loads instantly. No additional HTTP requests are made on page load beyond the default Magento checkout.
Yes. The checkbox is an explicit opt-in. You can configure the default checked state and the label text. The subscription is only saved when the customer places the order. Failures are logged silently and never block order placement.
Yes. The Accent Color field is an HTML5 color picker that drives buttons and highlights through a CSS variable. Border Radius (px) controls card and field corners. Combined with the four card styles, most rebranding changes need zero CSS. For a deeper rebrand, every colour, radius, size and font size is exposed as a --panth-co-* custom property that a theme overrides on body.panth-checkout-extended without !important; see Theming with CSS Variables.
Go to Stores -> Configuration -> Panth Extensions -> Checkout Extended -> Layout and set Columns to 2, then flush the cache. You can also use bin/magento config:set panth_checkout_extended/layout/columns 2 and bin/magento cache:flush.
Yes. All settings respect Magento's scope hierarchy (default, website, store view), so you can configure different layouts and colors per store view.
Yes. All user-facing strings use Magento's __() function. Add a CSV file at app/i18n/<locale>/Panth_CheckoutExtended/ or use Inline Translation.
Yes. Enable Order Note under Stores -> Configuration -> Panth Extensions -> Checkout Extended -> Order Note. A textarea with a live character counter appears in the order summary. The note is cleaned server-side, saved as the order's customer note, printed in the order confirmation email and added to the order's Comments History in the admin. It is off by default, and nothing is rendered or stored while it is disabled.
Yes. Customers with at least one saved address get an Address book button next to New Address in the shipping step. It opens a popup listing every saved address; picking one and clicking Save Address selects it without leaving the checkout. Guests and customers without saved addresses do not see the button.
Yes. mage2kishan/module-core is a free required dependency. Composer installs it automatically.
| Channel | Contact |
|---|---|
| Product Page | kishansavaliya.com/magento-2-checkout-extended.html |
| kishansavaliyakb@gmail.com | |
| Website | kishansavaliya.com |
| +91 84012 70422 | |
| GitHub Issues | github.com/mage2sk/module-checkout-extended/issues |
| Upwork (Top Rated Plus) | Hire Kishan Savaliya |
| Upwork Agency | Panth Infotech |
Response time: 1-2 business days.
Looking for custom Magento module development, Hyva checkout work, store migrations, or performance tuning? Get a free quote in 24 hours:
Built and maintained by Kishan Savaliya (kishansavaliya.com), a Top Rated Plus Magento developer on Upwork with 10+ years of eCommerce experience.
Panth Infotech is a Magento 2 development agency that builds high quality, security focused extensions and themes for both Hyva and Luma storefronts. The extension suite covers SEO, performance, checkout, product presentation, customer engagement, and store management, with each module built to MEQP standards and tested across Magento 2.4.4 to 2.4.9.
Browse the full extension catalog on our Magento extensions page or on Packagist.
| Resource | Link |
|---|---|
| Product Page | magento-2-checkout-extended.html |
| Packagist | mage2kishan/module-checkout-extended |
| GitHub | mage2sk/module-checkout-extended |
| Website | kishansavaliya.com |
| Free Quote | kishansavaliya.com/get-quote |
| Upwork (Top Rated Plus) | Hire Kishan Savaliya |
| Upwork Agency | Panth Infotech |
| kishansavaliyakb@gmail.com | |
| +91 84012 70422 |
Ready to give your shoppers a faster, cleaner checkout?
SEO Keywords: magento 2 one page checkout, magento 2 checkout extension, magento 2 one step checkout, magento 2 multi column checkout, magento 2 sticky sidebar checkout, magento 2 newsletter at checkout, magento 2 qty increment checkout, magento 2 sidebar place order, magento 2 coupon in sidebar, magento 2 default shipping method checkout, magento 2 preselect payment method, magento 2 hide single shipping method, magento 2 sort shipping methods by price, magento 2 checkout card style, magento 2 checkout accent color, magento 2 checkout step indicators, magento 2 checkout border radius, magento 2 custom css checkout, magento 2 custom js checkout, magento 2 checkout placeholders, magento 2 checkout tooltips, magento 2 show sku order summary, magento 2 checkout product link, magento 2 hide billing title, magento 2 checkout auto save, magento 2 billing sync, magento 2 order note checkout, magento 2 checkout address book, magento 2 checkout css variables, magento 2 checkout optimization, magento 2 conversion rate checkout, magento 2 luma checkout, magento 2 hyva standard checkout, magento 2 glassmorphism checkout, panth checkout extended, panth infotech, mage2kishan checkout, kishan savaliya magento, top rated plus magento freelancer, hire magento developer upwork, magento 2.4.9 checkout module, php 8.4 checkout module, adobe commerce checkout extension, magento 2 b2b checkout, magento 2 guest checkout newsletter