Do we need Shopify Plus?
For anything beyond basic branding, yes. Checkout extensibility — UI extensions and Functions — is a Plus feature. On other plans the checkout can be styled, but not given new behaviour.
The checkout used to be the one page Shopify kept locked. On Plus it is programmable — and that is where the conversion, the upsells and the business rules that never fit anywhere else belong.
The problem
checkout.liquid is gone and Scripts are retired, so the customisations a store had accumulated simply stopped working. What is left is a generic checkout that cannot express the rules the business actually runs on.
How it works
Checkout Extensibility: UI extensions for what the customer sees, and Shopify Functions for the logic underneath — discounts, validations, payment and delivery rules — running server-side on Shopify's own infrastructure.
Impact
The checkout enforces the store's real rules again, on supported extension points that do not break at the next Shopify release.
A gift note before payment, a shipping-insurance upsell, loyalty points, the tax ID field a B2B order needs. They are placed at the extension points Shopify defines, so they render natively instead of being injected into a page that no longer accepts it.
Discount rules, cart validation, which payment methods appear for whom, which delivery options are offered. This logic runs server-side in Shopify's sandbox, which is why it survives a page reload, an app conflict and a platform update.
A checkout can consult your own services — stock, credit limit, a customer's standing — but every millisecond there is a millisecond the buyer waits. Those calls are budgeted and cached, and they always have an answer ready for when the other system does not respond.
Because it is built on the supported extension points rather than on injected markup, a Shopify release does not silently break it. That is the whole reason the old approach stopped being viable.
For anything beyond basic branding, yes. Checkout extensibility — UI extensions and Functions — is a Plus feature. On other plans the checkout can be styled, but not given new behaviour.
Almost always, but not translated line by line. Functions is a different model: the logic runs server-side against a defined input, so each old rule is re-expressed rather than ported. The rules that were only ever workarounds usually disappear in the process.
That is exactly what it is designed to avoid. Injected markup broke on every release because it depended on a page structure Shopify never promised to keep. Extension points are a contract, and Shopify keeps them.