# Learn more about configuring your checkout UI extension: # https://shopify.dev/docs/api/checkout-ui-extensions/latest/configuration # The version of APIs your extension will receive. Learn more: # https://shopify.dev/docs/api/usage/versioning api_version = "2026-07" [[extensions]] name = "Delivery Date & Time (Checkout)" handle = "checkout-datetime" type = "ui_extension" uid = "14165501-9e99-cb7d-e2bf-2e25f3028ca218bc5e8a" description = "Plus-only native picker in checkout, plus a Thank You page confirmation of the scheduled slot." # purchase.checkout.block.render: the native picker inside checkout itself # (Plus only โ€” non-Plus checkout can't host a custom block; those stores # rely entirely on the storefront widget + Validation Function instead, per # IMPLEMENTATION_PLAN.md ยง9's "no checkout.liquid fallback" risk note). [[extensions.targeting]] module = "./src/Checkout.jsx" target = "purchase.checkout.block.render" # purchase.thank-you.block.render: read-only confirmation of the slot # selected above. NOTE: there is no purchase.order-status.block.render in # this API version โ€” order-status-page display for ALL plans (not just # Plus) is handled separately, by a Theme App Extension block reading the # order's note_attributes (see extensions/datetime-widget/blocks/ # order-confirmation.liquid), since that works on every plan via Liquid, # not just where checkout extensibility is available. [[extensions.targeting]] module = "./src/ThankYou.jsx" target = "purchase.thank-you.block.render" [extensions.capabilities] # Gives your extension access to directly query Shopify's storefront API. # https://shopify.dev/docs/api/checkout-ui-extensions/latest/configuration#api-access api_access = true # Gives your extension access to make external network calls, using the # JavaScript `fetch()` API. Required โ€” this extension calls our own # backend (checkout.scheduling.availability/hold) to share the same # capacity pool as every other surface. network_access = true