k-sync
Back to blog

Shopify checkout extensions after WooCommerce (2026)

How to customize Shopify checkout using Checkout UI Extensions after migrating from WooCommerce — adding custom fields, delivery instructions, order notes, upsells, trust badges, and porting WooCommerce checkout customizations.

·By k-sync
5 min read · 1,032 words

WooCommerce developers customized checkout extensively: WooCommerce Checkout Field Editor added custom fields, conditional logic showed/hid fields based on products, and custom PHP hooks like woocommerce_checkout_before_order_review injected arbitrary HTML at any checkout position. Shopify's checkout is hosted and far more restricted — but Checkout UI Extensions (introduced in 2023) and the Checkout Blocks app give significant customization capability without requiring Shopify Plus.

WooCommerce checkout customization vs Shopify

WooCommerce approachShopify equivalentRequires
WC Checkout Field Editor (custom fields)Checkout UI Extension or Checkout Blocks appStandard Shopify or Plus
Order notes fieldNative order notes (enable in theme settings) or Checkout BlocksStandard Shopify
Delivery date pickerCheckout UI Extension (custom) or app (DeliveryDate, Zapiet)Standard Shopify
Custom HTML at checkoutCheckout UI Extension components onlyStandard Shopify
checkout.php full customizationcheckout.liquid (deprecated) or Checkout UI ExtensionsShopify Plus
Custom checkout steps / multi-pageNot supported (Shopify checkout is fixed flow)N/A
Conditional field displayCheckout UI Extension with React logicStandard Shopify
Order bump / upsell at checkoutCheckout UI Extension or Post-purchase extensionStandard Shopify
Trust badges at checkoutCheckout Blocks or Checkout UI ExtensionStandard Shopify

Checkout Blocks app (no-code, standard Shopify)

Checkout Blocks is a free/paid Shopify app that adds blocks to checkout without code — the fastest way to replicate many WooCommerce checkout customizations:

Native order notes

Shopify themes can enable an order notes field in cart — not technically "checkout" but functionally equivalent for many WooCommerce order notes use cases:

Checkout UI Extensions (developer approach)

For custom checkout fields beyond what Checkout Blocks offers, developers build Checkout UI Extensions using Shopify's React-based extension API:

// checkout-extension/src/Checkout.tsx
import {
  reactExtension,
  useApplyMetafieldsChange,
  useMetafield,
  TextField,
  BlockStack,
  Text,
} from "@shopify/ui-extensions-react/checkout";

export default reactExtension("purchase.checkout.delivery-address.render-after", () => (
  <DeliveryInstructions />
));

function DeliveryInstructions() {
  const applyMetafieldsChange = useApplyMetafieldsChange();
  const currentValue = useMetafield({
    namespace: "custom",
    key: "delivery_instructions",
  });

  return (
    <BlockStack>
      <Text size="medium">Delivery instructions (optional)</Text>
      <TextField
        label="e.g. Leave at door, ring bell"
        value={currentValue?.value ?? ""}
        onChange={(value) =>
          applyMetafieldsChange({
            type: "updateMetafield",
            namespace: "custom",
            key: "delivery_instructions",
            valueType: "string",
            value,
          })
        }
      />
    </BlockStack>
  );
}

Extension target positions

Checkout upsells

In-checkout upsell (Checkout UI Extension)

Post-purchase upsell (thank you page)

Delivery date picker

WooCommerce stores commonly used WooCommerce Delivery Date or Iconic WooCommerce Delivery Slots. Shopify equivalents:

Trust signals at checkout

WooCommerce checkout often had trust badges injected via hooks. Shopify checkout equivalent:

Shopify Plus: checkout.liquid (legacy) and checkout editor

Shopify Plus merchants have additional options:

Checkout migration checklist

The most critical checkout customization for most WooCommerce migrators is the order notes or delivery instructions field — customers are used to it being there, and losing it causes customer service overhead as buyers email to add instructions manually. This is a 10-minute Checkout Blocks setup: install the free tier, add a text area block to the delivery step, label it "Delivery instructions or order notes". The field value appears on the order in admin automatically. Don't over-engineer this particular feature — Checkout Blocks handles it cleanly without any code.

Migrate your store with k-sync

Connect your WooCommerce store, validate your products, and push to Shopify in minutes. Free for up to 50 products.

Get started free

Related reading

Browse all migration guides