LWN Multi-Step Checkout allows your WooCommerce store to split the classic one-page checkout into a guided sequence of steps — login, billing, shipping, coupon, review, and payment — so customers fill in one thing at a time instead of facing a single long form.
Every step is optional and configurable from a settings screen. You choose which steps appear, what they are called, how the step indicator looks, and whether customers may skip ahead. No code and no template files are involved.
Manual installation
↑ Back to topDownloading
↑ Back to top- Go to My Account > My Subscriptions on WooCommerce.com.
- Find LWN Multi-Step Checkout in the list.
- Click the menu next to it and select Download.

Installation
↑ Back to top- Log in to your WordPress admin dashboard.
- Go to Plugins > Add Plugin.
- Select Upload Plugin.
- Choose the ZIP file you downloaded, then select Install Now.
- Once installation finishes, select Activate Plugin.




Getting started
↑ Back to topNot sure which one your store is using, or how to switch between them? WooCommerce’s own guide covers both: Customizing the Cart and Checkout Pages.
After activation, the extension also checks this for you automatically and shows a notice in your WordPress admin if it detects the Checkout block.
To set up your store with multi-step checkout:
- Go to: WooCommerce > Settings > Multi-Step Checkout.
- Multi-Step Checkout is on by default — nothing to enable. Tick the steps you want — Shipping, Login, Coupon, and so on — in the same General tab.
- Save changes.

Checkout steps
↑ Back to topLogin
↑ Back to topDefault: Disabled.
When enabled, checkout begins with a dedicated Login step for returning customers before they continue to checkout.
If Show Registration Form is also enabled, the login and registration forms are displayed together on this step.
Requirements:
- WooCommerce Enable log-in during checkout must be enabled.
- To display the registration form, WooCommerce Allow customers to create an account on the “My account” page must also be enabled.


Billing and shipping
↑ Back to topDefault: Billing and shipping are displayed as separate steps.
Turn off Enable Separate Shipping Step to combine both sections into a single checkout step.
If the cart contains only virtual or downloadable products, the Shipping step is automatically skipped regardless of this setting.


Shipping methods placement
With Include Shipping Methods enabled, the available shipping methods appear inside the Shipping step — below the shipping address and above the order notes.
Default: Enabled.
Turn it off to keep WooCommerce’s standard behavior, where shipping methods appear in the order review step instead.

Coupon
↑ Back to topDefault: A coupon field is displayed at the top of the Review step.
Enable Dedicated Coupon Step to move coupon entry into its own checkout step. This replaces the coupon field in the Review step.
Requirement:
- WooCommerce coupons must be enabled.


Coupon field in the review step
Default: Enabled.
While the dedicated coupon step is off, Show Coupon Field in Review Step controls whether the coupon box appears at the top of the review step. Turn it off to hide the coupon box from that step.
This setting has no effect when Enable Dedicated Coupon Step is enabled — the dedicated step replaces it.

Review and payment
↑ Back to topDefault: Order review and payment are combined into a single step.
Enable Separate Order Review & Payment to split them into two steps:
- Confirm Order
- Payment


Navigation and validation
↑ Back to topShow “Back to Cart” button
↑ Back to topDefault: Disabled.
When enabled, a Back to Cart link appears alongside the step navigation, letting customers return to their cart at any point during checkout.
The link text can be changed with Back to Cart Text on the Text & Labels tab.

Validate steps before proceeding
↑ Back to topDefault: Enabled.
Each step is checked before the customer can continue — required fields must be completed correctly before Next moves them forward. Validation uses WooCommerce’s own checkout rules, so fields added by your theme or another extension are checked too.
Turn it off to let customers move through every step unchecked. Errors then surface only when they try to place the order.

Force sequential checkout
↑ Back to topDefault: Enabled.
Customers move through the steps in order — they can return to any earlier step, but cannot jump more than one step ahead.
When a customer tries to skip ahead, the Sequential Navigation Message appears. Edit its wording on the Text & Labels tab.
Turn it off to let customers move freely between all steps.

Style
↑ Back to topThe Style tab lets you customize both the appearance of the checkout step indicator and the loading animation shown when customers move between steps.
Step indicator
↑ Back to topDefault: Default — numbered circles.
Choose how the checkout steps are displayed:
- Default — numbered circles connected by lines.
- Breadcrumb Style — connected arrow-shaped breadcrumbs.
- Icon-Based Style — an icon above each step label.
A live preview is shown as you switch between styles, allowing you to see the changes before saving.

Loading animation
↑ Back to topDefault: Default — a spinning circular loader.
Choose the animation displayed while the next checkout step loads:
- Default — a spinning circular loader.
- Pulse Bars — animated vertical bars.
- Grid — an animated grid loader.
A live preview updates instantly as you select each animation.

Appearance
↑ Back to topThe Appearance settings let you customize the colors used by the checkout stepper and primary interface elements.
The available color options depend on the Stepper Style selected in the Style tab. Choose Default, Breadcrumb, or Icon-Based first. Only the color settings used by the selected style are displayed, making it easier to customize your checkout without unnecessary options.
Some settings are shared across all stepper styles and are always available.
Default style
↑ Back to topThe Default style displays numbered circles connected by lines.


| Setting | Description |
|---|---|
| Border Color | Sets the color of the step borders and the connector line between steps. |
| Circle Background Color | Sets the background color of inactive step circles. |
| Circle Text Color | Sets the number color inside inactive step circles. |
| Active Circle Background Color | Sets the background color of the current step. |
| Active Circle Text Color | Sets the text color of the current step. |
| Completed Circle Background Color | Sets the background color of completed steps. |
| Completed Circle Text Color | Sets the checkmark color shown on completed steps. |
| Label Text Color | Sets the color of the step labels. |
Breadcrumb style
↑ Back to topThe Breadcrumb style displays each checkout step as an arrow-shaped breadcrumb.


| Setting | Description |
|---|---|
| Breadcrumb Background Color | Sets the default background color of each breadcrumb. |
| Breadcrumb Text Color | Sets the default text color of each breadcrumb. |
| Breadcrumb Hover Background Color | Sets the background color when a breadcrumb is hovered. |
| Breadcrumb Hover Text Color | Sets the text color when a breadcrumb is hovered. |
| Breadcrumb Active Background Color | Sets the background color of the current checkout step. |
| Breadcrumb Active Text Color | Sets the text color of the current checkout step. |
| Breadcrumb Completed Background Color | Sets the background color of completed steps. |
Icon-based style
↑ Back to topThe Icon-Based style replaces numbered circles with icons.


| Setting | Description |
|---|---|
| Icon Style Step Label Color | Sets the color of the step labels. |
| Icon Style Step Connector Color | Sets the color of the line connecting each step. |
| Icon Style Step Icon Color | Sets the default color of inactive icons. |
| Icon Style Active Step Color | Sets the highlight color of the current step. |
| Icon Style Completed Step Background | Sets the background color of completed step icons. |
| Icon Style Completed Step Text | Sets the icon color for completed steps. |
Shared settings
↑ Back to topThe following settings are available regardless of the selected stepper style.
| Setting | Description |
|---|---|
| Primary Button Color | Sets the background color of the Next button and the border and text color of the Previous button. |
| Primary Button Text Color | Sets the text color of the Next button. |
| Highlight Color | Sets the focus outline color for form fields and the color of loading indicators. |
Text and labels
↑ Back to topThe Text & Labels tab lets you customize the wording used throughout your checkout experience without editing any code.
Update a field, save your changes, and the new text appears immediately on the checkout page.
Some settings only take effect when related features are enabled on the General tab. Where applicable, these dependencies are listed below.

Navigation labels
↑ Back to topThese labels control the navigation buttons and messages displayed during checkout.
| Setting | Default | Description |
|---|---|---|
| Next Button Text | Next | Text displayed on the button that moves customers to the next checkout step. Shown on every step except the final one. |
| Previous Button Text | Previous | Text displayed on the button that returns customers to the previous step. Shown on every step except the first. |
| Back to Cart Text | Back to Cart | Text for the link that returns customers to the cart page. Displayed only when Show “Back to Cart” Button is enabled on the General tab. |
| Sequential Navigation Message | You can't skip steps. Complete the current step first | Message shown when a customer attempts to jump ahead to a step that has not yet been completed. This is only used when Force Sequential Checkout is enabled. If sequential checkout is disabled, customers can move freely between available steps and this message is never shown. |

Step labels
↑ Back to topThese settings control the names displayed in the checkout step indicator.
The steps customers see—and the order they appear in—depend on which checkout features are enabled. If all optional steps are disabled, only Billing & Shipping and Review & Payment are shown.
| Setting | Default | Description |
|---|---|---|
| Login Step Label | Login | Label for the login/register step. Displayed only when Enable Login Step is enabled. |
| Billing Step Label | Billing Info | Label for the billing step. Displayed only when Enable Separate Shipping Step is enabled. |
| Shipping Step Label | Shipping Info | Label for the shipping step. Displayed only when billing and shipping are separated, and shipping is required for the order. |
| Billing & Shipping Step Label | Billing & Shipping | Label for the combined billing and shipping step when separate shipping is disabled. |
| Dedicated Coupon Step Label | Coupon | Label for the coupon step. Displayed only when Enable Dedicated Coupon Step is enabled. |
| Review Step Label | Review & Payment | Label for the final combined review and payment step. Used when Separate Order Review & Payment is disabled (default). |
| Review Before Payment Label | Confirm Order | Label for the review step when order review and payment are separated. Displayed only when Separate Order Review & Payment is enabled. |
| Payment Step Label | Payment | Label for the payment step that follows the review step. Displayed only when Separate Order Review & Payment is enabled. |

Login step content
↑ Back to topThese settings apply only when Enable Login Step is enabled.
| Setting | Default | Description |
|---|---|---|
| Login/Register Heading | Login | Heading displayed above the login and registration form. |
| Login/Register Message | You need to log in to proceed. | Message shown when a customer tries to continue without logging in. It stays hidden until then. Leave the field empty to disable the message. |

Coupon step content
↑ Back to topThese settings apply only when Enable Dedicated Coupon Step is enabled.
| Setting | Default | Description |
|---|---|---|
| Dedicated Coupon Section Heading | Have a Coupon? | Heading displayed above the coupon code field. |

Payment step content
↑ Back to topThese settings apply only when Separate Order Review & Payment is enabled.
| Setting | Default | Description |
|---|---|---|
| Payment Section Heading | Payment Details | Heading displayed above the available payment methods and the Place Order button. |

Advanced settings
↑ Back to topThe Advanced tab contains tools for backing up, restoring, and resetting your checkout configuration. These tools affect only the extension’s settings—they do not modify orders or customer data.
Reset settings
↑ Back to topRestores all Multi-Step Checkout settings to their default values.

Export settings
↑ Back to topExports your current configuration as a JSON file.
You can copy the generated JSON or download it as a file, then import it into another site to duplicate your checkout configuration.

Import settings
↑ Back to topImports settings from a previously exported JSON configuration.
Paste the exported JSON into the field and click Import Settings.
Only the settings included in the imported JSON are updated. Any settings not present in the file remain unchanged.

Troubleshooting
↑ Back to topThe checkout looks unchanged
↑ Back to topThe extension is installed and the stepper is enabled, but the checkout looks unchanged.
Your checkout page is using the WooCommerce Checkout block. This extension supports the classic checkout only. Open Pages → Checkout and replace the Checkout block with the [woocommerce_checkout] shortcode.
Steps misaligned
↑ Back to topThe steps look broken or misaligned.
Your theme customizes the checkout markup in a way the stepper doesn’t recognize. The extension includes dedicated compatibility for 12 themes. If yours isn’t one of them, contact support with your theme name and we’ll look at adding it.
Errors only show at the end
↑ Back to topCustomers reach the last step and get a pile of errors at once.
Validate Steps Before Proceeding is turned off, so nothing is checked until the end. Turn it on (General tab) and each step is validated before the customer can continue.

Customers can’t jump back
↑ Back to topCustomers can’t jump back to an earlier step.
Force Sequential Checkout is on. Turn it off (General tab) to let customers move freely between steps they’ve already reached.

Login step missing
↑ Back to topThe Login step doesn’t appear on the checkout.
Three things must all be true:
- Enable Login Step is on.
- WooCommerce’s Enable log-in during checkout is on (WooCommerce → Settings → Accounts & Privacy)
- The visitor is logged out. Logged-in customers never see this step — test in a private window.
No registration form
↑ Back to topThe registration form doesn’t appear inside the Login step.
Turn on Allow customers to create an account on the “My account” page in WooCommerce → Settings → Accounts & Privacy, then check the step again.
Coupon step missing
↑ Back to topThe dedicated Coupon step doesn’t appear, even though it’s enabled.
Coupons also have to be enabled in WooCommerce itself. Turn on Enable coupons in WooCommerce → Settings → General.
Shipping step missing
↑ Back to topThe Shipping step appears on some orders but not others.
The Shipping step only appears when the order needs shipping — carts containing only virtual or downloadable products skip it. Also check Enable Separate Shipping Step; with it off, billing and shipping share a single step.
Payment step empty
↑ Back to topThe Payment step shows no payment methods.
No payment gateway is enabled. Enable at least one in WooCommerce → Settings → Payments.
Color won’t change
↑ Back to topA color was changed and saved, but the checkout looks the same.
The Appearance tab lists colors for every stepper style, but only the style selected on the Style tab is applied. Choose your style first, then edit the colors listed for it. Primary Button, Primary Button Text, and Highlight apply to every style.
Import did nothing
↑ Back to topImporting settings showed a success message, but nothing changed.
Import only updates the setting groups present in the file — anything absent is left as it was. If the JSON came from somewhere other than this extension’s Export Settings, it can be valid JSON and still contain nothing importable.
FAQs
↑ Back to top
How do I know which checkout my store is using?
Open your Checkout page in the editor. A single Checkout block means block checkout (not supported); the
[woocommerce_checkout]shortcode means classic checkout.
Which steps can I turn on or off?
Login, registration during checkout, a separate Shipping step, a dedicated Coupon step, a separate Review/Payment split, and the Back to Cart button — each a single checkbox on the General tab.
Can I reorder the steps?
No. Order is fixed: login, billing, shipping, coupon, then review and payment. Steps can be turned off or renamed, but not rearranged.
Can I stop customers from skipping ahead?
Yes. Require each step to validate before continuing, and optionally enforce strict step order. Both are optional.
What happens if a customer refreshes mid-checkout?
Their progress is preserved. The current step is stored in the WooCommerce session, so they return where they left off.
Can I move my settings between staging and live sites?
Yes. Export your configuration as JSON on the Advanced tab and import it on the other site. Only the settings present in the file are updated.
Does it modify my checkout template files?
No. It works entirely through standard WooCommerce hooks, so nothing is copied into your theme and updates won’t break it.
Can I extend it with code?
There are hooks for the navigation buttons and the shipping methods output. Adding or reordering steps in code isn’t supported yet.