Shopify Plus Checkout Customisation: What's Actually Possible in 2026

What changed
Until 2024, Shopify Plus merchants could directly edit checkout.liquid, the template file controlling the entire checkout experience. You could add custom scripts, rearrange layout, inject third-party tools, and do pretty much anything you wanted. It was powerful and unpredictable in equal measure.
Shopify replaced this with two distinct systems: Checkout UI Extensions for visual and interactive customisation, and Shopify Functions for business logic. You write extensions and functions, Shopify hosts them, and they run inside the checkout without access to the full DOM or the ability to inject arbitrary scripts.
The tradeoff: less raw power, significantly more stability. Your checkout won't break because a third-party script conflicted with a Shopify update. But you also can't do everything you could before, and understanding the boundary between what's possible and what isn't will save you a lot of scoping conversations.
What you can customise
Branding and appearance
Checkout branding controls let you match your checkout to your storefront: colours, fonts, logos, corner radius, spacing. You can't completely redesign the checkout layout or step sequence, but you can make it feel like a seamless extension of your store rather than a generic Shopify page. This is where the balance between customisation and standardisation matters most. The Checkout Branding API gives developers programmatic control over these settings, which is useful when branding needs to be applied consistently across multiple storefronts or updated via pipeline rather than manually in the admin.
Custom fields and data capture
Gift messages, delivery instructions, company purchase order numbers, custom attributes for personalised products: these are all handled through checkout extensions. The data attaches to the order and flows through to your OMS and fulfilment systems. Getting the data structure right at the extension level matters here, because poorly structured custom attributes create reconciliation problems downstream in your ERP and inventory integrations.
Upsells and cross-sells
In-checkout product recommendations are one of the highest-ROI customisations available on Shopify Plus. You can present complementary products, warranty add-ons, gift wrapping, or subscription upgrades during checkout without redirecting the customer away from the purchase flow. The extension renders within the checkout UI, which means conversion rates are typically higher than redirecting to a separate upsell page.
Post-purchase offers
After the customer completes payment but before the thank-you page, you can present a one-click upsell. The customer's payment method is already on file, so adding an item doesn't require re-entering details. This is consistently the highest-converting upsell placement across our Shopify Plus builds, and it's the customisation we recommend evaluating first for any brand focused on increasing average order value.
Loyalty and rewards
Points redemption, VIP tier recognition, and loyalty program integration directly in checkout. Customers can see their points balance and apply rewards without leaving the checkout flow. This reduces the friction that causes loyalty-eligible customers to abandon checkout to check their balance in a separate app or email.
Shopify Functions: business logic at the checkout layer
Shopify Functions (previously Scripts) is where the business logic lives. Functions run server-side and execute before the checkout renders, which means they can shape what the customer sees rather than just what gets added after the fact.
With Functions you can create custom discount logic: tiered discounts, bundle pricing, customer-tag-based pricing, or promotional mechanics that Shopify's native discount system can't express. You can filter payment methods based on cart contents, customer location, or order value. A B2B customer can see invoice payment options that retail customers don't. A cart containing age-restricted products can suppress certain payment methods automatically.
Shipping rate customisation is another significant use case. Functions can create custom shipping rate calculations based on product weight, destination zone, customer tier, or any combination of attributes. Brands with complex fulfilment logic, such as those managing multiple warehouses or delivery SLAs by postcode, use Functions to surface the right shipping options without building a custom rates API.
The key distinction from UI Extensions is that Functions run before the UI renders and affect what options are available, whereas Extensions add elements to the UI after the core checkout structure is in place. Both are necessary for a fully customised Shopify Plus checkout, and they work together rather than as alternatives.
What you can't customise
You can't fundamentally change the checkout layout or step sequence. You can't inject arbitrary JavaScript. You can't access the full DOM. You can't override Shopify's payment processing or security infrastructure. These limitations are intentional: they protect the conversion rate and security posture of the checkout, and they're the reason Shopify can guarantee 99.99% uptime for checkout regardless of what extensions a merchant has installed.
If your requirement sits outside what Extensions and Functions can deliver, the honest answer is that it can't be done in Shopify Plus checkout. Evaluating feasibility early in the scoping process avoids expensive mid-project pivots.
Our approach
We scope checkout customisation around the changes that measurably impact revenue, starting with the highest-ROI opportunities before moving to lower-priority refinements.
Post-purchase upsells are almost always the first thing we build. The conversion rates are high, the implementation is contained, and the revenue impact is visible within days of launch. We A/B test the offer, the timing, and the product selection to find the configuration that works for each brand's specific customer behaviour.
From there, the prioritisation depends on the brand. For B2B brands, custom payment method logic via Functions is typically the next priority: surfacing net-terms options for approved accounts, hiding payment methods that don't apply to wholesale orders. For DTC brands with active loyalty programmes, the checkout loyalty integration usually comes next.
Custom field capture, branding alignment, and shipping customisation are important but rarely the highest-revenue items in the queue. We sequence them after the commerce extensions that directly affect conversion and order value.
Checkout performance connects directly to the rest of the post-click funnel. Pair checkout optimisation with well-structured Klaviyo flows and you're covering the full journey from first click to repeat purchase. And if you're evaluating whether your checkout architecture should sit inside a headless build, the checkout itself always stays on Shopify's infrastructure regardless of your frontend choice: the Extensions and Functions model applies equally to headless and theme-based storefronts.
A Shopify Plus Agency for Strategic Design & Advanced Engineering
Building something ambitious?
- checkout.liquid is gone. All customisation now happens through Checkout UI Extensions and Shopify Functions.
- Extensions are sandboxed React components that Shopify hosts and renders inside the checkout.
- You can add custom fields, upsells, loyalty integrations, gift messaging, and branding.
- Post-purchase upsells are the highest-ROI checkout customisation for most brands.
- The new model is more limited than raw Liquid but far more stable, secure, and maintainable.



