Skip to content

Merchant URLs explained

Every URL in merchant_urls, who calls it and when, and how the terms URL shows up in the checkout. Use https:// for all of them.

merchant_urls tells Kustom where your shop lives and where to call back. Four are required.

Use https:// for every URL in merchant_urls.

KeyRequiredWho uses it
termsyesLinked inside the checkout
checkoutyesWhere the checkout snippet is rendered
confirmationyesBrowser redirect after purchase. {checkout.order.id} is substituted
pushyesServer-to-server after purchase
validationnoServer-to-server just before purchase
address_update, country_changenoServer-to-server when the customer changes address or country. Return updated lines and shipping
shipping_address_updatenoAn older name for address_update, used only when that’s absent
shipping_option_updatenoServer-to-server when the shipping option changes
notificationnoPending-order status changes
upsell, upsell_validation, upsell_notificationnoServer-to-server around confirmation-page upsell
cancellation_termsnoLinked inside the checkout, beside terms

What each server-to-server URL receives and how to answer it is in Server-side callbacks.

When you send an order from the live demos on these pages, any https:// URL you include is kept. Missing or non-HTTPS values are replaced with the docs’ own endpoints so the demo works end to end.

terms must be your own HTTPS URL. Kustom uses it to add a merchant section to the terms shown under the Pay order button, substituting your merchant name and linking the URL you gave.

Around that section, Kustom generates the terms needed for data compliance: its own terms of use and its own privacy notice, localized for the billing country and locale. It’s the same two documents in every market — only the localized file they link to changes. All of this renders below the Pay order button, not above it.

cancellation_terms takes a URL to your cancellation terms. It’s appended to the merchant terms and updates the Right to Withdrawal link.

Anything the customer must actively confirm, rather than merely be shown, is a required checkbox above the Pay order button instead — see Custom checkboxes.

This page is also available as Markdown — append .md to its URL — and is indexed in llms.txt.