Skip to content
Gaurav TiwariDocs

Use On-page Checkout in Bricks Builder

Updated October 30, 2026

On-page Checkout is a Bricks element as well as a block and a shortcode. Drop it into any Bricks page, product template or query loop and it shows plan cards for a product with your checkout right below them, so buyers pick a plan and pay without leaving the page.

Everything the block can do, the element can do. This guide covers the Bricks side: where the element lives, what each control does, and how to use it in templates so one design sells every product. For how plans, carts and payments work, see Put Checkout on Any Page.

Before You Start

  • The Bricks theme, or a Bricks child theme, is active.
  • The On-page Checkout module is on in the Stackless dashboard.
  • To use a checkout design, the Checkout Builder module is on too. Without it, the element uses the store checkout. See Choose a Checkout Layout.

Add the Element

  1. Open a page in the Bricks builder.
  2. In the elements panel, search for checkout, or find On-page Checkout in the WooCommerce group.
  3. Drag it into a section or container.
  4. In the Product and plans group, pick a product, or list the plans you want to offer.
Bricks elements panel searched for checkout, showing the On-page Checkout element

The builder shows the plan cards and an outline of the chosen design. The real checkout loads on the live page, so you can edit without creating carts.

Controls

The element has three groups on its Content tab. Bricks’ own Style tab still sets the element’s spacing, size and position.

GroupControlWhat it does
Product and plansProductThe product to sell. A simple product is one plan. A variable product offers each variation as a plan. Leave it empty in a product template or a query loop of products to use the current product.
Product and plansPlans (product or variation IDs)Optional. Product or variation IDs, comma-separated, in the order the cards should show. They replace the product above.
Product and plansPreselected plan (ID)Optional. The product or variation ID of the plan that starts selected.
DisplayCheckout designActive Checkout Builder layout, Store checkout with no layout, or a fixed layout: Classic, Split, Warm Split, Focused or Review First.
DisplayHeadingOptional text above the plan cards.
DisplayLayoutCheckout form shown on the page, or a button that opens the form in place.
DisplayButton textShown with the button layout. Defaults to “Buy now”.
DisplayLet buyers choose a quantityAdds a quantity box. Hidden for products sold individually.
DisplayCoupon to applyOptional code applied to the checkout. When it is empty, a ?coupon= code in the page address is used.
Plan cards and buttonPlan card accent, background, border and textThe selected card’s accent color, the card fill, its border and its font.
Plan cards and buttonButton background, text and borderShown with the button layout.

Pick a Checkout Design

The Checkout design list in the Display group decides what loads under the plan cards. Leave it on Active Checkout Builder layout to follow the store checkout, or pin a layout for this page only.

Bricks builder with the On-page Checkout element selected and its Checkout design list open beside two plan cards and an outline of the Warm Split checkout
  • The layout’s colors come from Checkout Builder, so the embedded checkout matches your checkout page. The plan cards take its accent color too.
  • Store checkout, no layout fits narrow columns and sidebars.
  • Warm Split, Split and Review First need room. Give them a full-width row on desktop.

Use It in Product Templates

Leave the product empty and the element sells whichever product is being shown. One template then gives every product page its own plans and checkout.

  1. Go to Bricks → Templates and add a template of type Single product.
  2. Add the On-page Checkout element and leave Product empty. Its placeholder reads Current product.
  3. Open the template settings, set Populate content to one of your products, and the builder previews that product’s plans.
  4. Set the template conditions to the products it should apply to, then save.
Bricks product template with the On-page Checkout element left on Current product, previewing the plans of the Makers Club Membership

Use It in Query Loops

Put the element inside a query loop of products and leave its product empty. Each loop item shows the plans of its own product. The button layout keeps a grid of products compact: each card shows its plans and a button, and the checkout opens in place only for the one a buyer clicks.

Style the Plan Cards and Button

The Plan cards and button group styles the parts the element draws itself. The button controls show up when Layout is set to the button.

The Plan cards and button group in Bricks with a green accent and button background, beside two plan cards and a button

A Bricks class or the element ID also works for anything these controls don’t cover. The plan cards use the .stackless-opc__plan class and the button uses .stackless-opc__reveal.

What Buyers See

With the form shown on the page, the plan cards sit above the checkout. Switching plans updates the checkout in place.

Live page built in Bricks: two plan cards above the Warm Split checkout with the order summary on a warm panel

With the button layout, buyers see the plans and a button. The checkout opens below the cards when they click it.

Two plan cards with a green button below them, from the button layout

On a phone, the cards and the checkout stack into one column.

On-page Checkout from a Bricks page on a phone: stacked plan cards above the checkout

Good to Know

  • The checkout never loads inside the builder. Check payments and coupons on the live page.
  • The element fills the width of a flex row or column, so it doesn’t shrink inside Bricks containers.
  • If the element has nothing to sell, editors see a note asking for a published product, and visitors see nothing.
  • In a template, the preview needs Populate content set to a product. Without it, the builder shows that note instead of plans.
  • The plan list and the preselected plan take fixed values. Bricks dynamic data isn’t available in those fields.
Share

Was this helpful?

Still stuck? Open a support ticket