> For the complete documentation index, see [llms.txt](https://docs.datajet-app.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.datajet-app.com/functions.md).

# Functions

- [Functions](https://docs.datajet-app.com/functions/functions.md): Run your own JavaScript inside Shopify checkout — validate carts, customize delivery options and payment methods, apply automatic discounts, reshape cart lines.
- [Cart and Checkout Validation](https://docs.datajet-app.com/functions/functions/cart-and-checkout-validation.md): Block checkout with custom error messages — order limits, address rules, customer restrictions and any rule you can express in JavaScript.
- [Delivery Customization](https://docs.datajet-app.com/functions/functions/delivery-customization.md): Hide, rename or reorder the delivery options shown at checkout with JavaScript.
- [Payment Customization](https://docs.datajet-app.com/functions/functions/payment-customization.md): Hide, rename or reorder payment methods at checkout with JavaScript.
- [Discounts](https://docs.datajet-app.com/functions/functions/discounts.md): Apply automatic product and order discounts at checkout with JavaScript.
- [Cart Transform](https://docs.datajet-app.com/functions/functions/cart-transform.md): Merge cart lines into bundles, expand bundle SKUs into components, and update line presentation with JavaScript.
- [Families and Variables](https://docs.datajet-app.com/functions/functions/families-and-variables.md): Families decide which checkout data a function receives as input; variables parameterize that data — tags to check, collections to match, attribute keys to read.
- [Examples](https://docs.datajet-app.com/functions/functions/examples.md): Ready-to-use function examples — order limits, address rules, tag-based restrictions, delivery and payment customizations.
