--- title: About cart and checkout validation description: >- Learn about developer tools and resources that you can use to build validations in checkout. source_url: html: 'https://shopify.dev/docs/apps/build/checkout/cart-checkout-validation' md: 'https://shopify.dev/docs/apps/build/checkout/cart-checkout-validation.md' --- ExpandOn this page * [How it works](https://shopify.dev/docs/apps/build/checkout/cart-checkout-validation.md#how-it-works) * [Getting started](https://shopify.dev/docs/apps/build/checkout/cart-checkout-validation.md#getting-started) * [Developer tools and resources](https://shopify.dev/docs/apps/build/checkout/cart-checkout-validation.md#developer-tools-and-resources) # About cart and checkout validation Validation is the process of checking data against specified requirements. This guide introduces checkout validations and describes the available resources that you can use to build validations in Shopify checkout. *** ## How it works You can use [Shopify Functions](https://shopify.dev/docs/apps/build/functions) to create validations that ensure purchases meet certain criteria before a customer can check out or complete an order. Validation functions run on Shopify's servers and can block checkout progress when business rules aren't met. For example, you can enforce order limits for new customers, prevent shipping to restricted locations, or ensure that loyalty program rules are properly applied. Validation functions are available for online store carts, [carts built for custom storefronts](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/cart/manage), and throughout the [checkout](https://shopify.dev/docs/apps/build/checkout) process. They provide reliable enforcement of business logic that can't be bypassed by customers. *** ## Getting started Follow these tutorials to get started with building validations in checkout. [![](https://shopify.dev/images/icons/48/function.png)![](https://shopify.dev/images/icons/48/function-dark.png)](https://shopify.dev/docs/apps/build/checkout/cart-checkout-validation/create-checkout-validation) [Create checkout validation](https://shopify.dev/docs/apps/build/checkout/cart-checkout-validation/create-checkout-validation) [Use Shopify Functions to create validation rules that block completing an order when the cart doesn't meet certain criteria.](https://shopify.dev/docs/apps/build/checkout/cart-checkout-validation/create-checkout-validation) [![](https://shopify.dev/images/icons/48/function.png)![](https://shopify.dev/images/icons/48/function-dark.png)](https://shopify.dev/docs/apps/build/checkout/cart-checkout-validation/create-admin-ui-validation) [Create the admin UI](https://shopify.dev/docs/apps/build/checkout/cart-checkout-validation/create-admin-ui-validation) [Use Shopify Functions to limit a cart's item quantity during checkout according to the merchant's preferences.](https://shopify.dev/docs/apps/build/checkout/cart-checkout-validation/create-admin-ui-validation) *** ## Developer tools and resources Explore the following developer tools and resources to get familiar with building validations in checkout. [![](https://shopify.dev/images/icons/48/build.png)![](https://shopify.dev/images/icons/48/build-dark.png)](https://shopify.dev/docs/api/checkout-ui-extensions/latest/apis/extensiontargets) [Checkout UI extensions API reference](https://shopify.dev/docs/api/checkout-ui-extensions/latest/apis/extensiontargets) [Consult the API reference for checkout UI targets and their respective types.](https://shopify.dev/docs/api/checkout-ui-extensions/latest/apis/extensiontargets) [![](https://shopify.dev/images/icons/48/blocks.png)![](https://shopify.dev/images/icons/48/blocks-dark.png)](https://shopify.dev/docs/api/admin-extensions/latest/components/forms/functionsettings) [FunctionSettings component reference](https://shopify.dev/docs/api/admin-extensions/latest/components/forms/functionsettings) [Learn about the component that you can use to build a UI extension for your validation function.](https://shopify.dev/docs/api/admin-extensions/latest/components/forms/functionsettings) [![](https://shopify.dev/images/icons/48/blocks.png)![](https://shopify.dev/images/icons/48/blocks-dark.png)](https://shopify.dev/docs/api/checkout-ui-extensions/latest/components) [Components for checkout UI extensions](https://shopify.dev/docs/api/checkout-ui-extensions/latest/components) [See the full list of components that are available in checkout UI extensions.](https://shopify.dev/docs/api/checkout-ui-extensions/latest/components) [![](https://shopify.dev/images/icons/48/gear.png)![](https://shopify.dev/images/icons/48/gear-dark.png)](https://shopify.dev/docs/api/checkout-ui-extensions/latest/configuration) [Checkout extension configuration](https://shopify.dev/docs/api/checkout-ui-extensions/latest/configuration) [Learn about the properties that you can configure in your checkout UI extension.](https://shopify.dev/docs/api/checkout-ui-extensions/latest/configuration) [![](https://shopify.dev/images/icons/48/graphql.png)![](https://shopify.dev/images/icons/48/graphql-dark.png)](https://shopify.dev/docs/api/functions/reference/cart-checkout-validation) [Cart and Checkout Validation Function API reference](https://shopify.dev/docs/api/functions/reference/cart-checkout-validation) [Consult the GraphQL reference for the Cart and Checkout Validation Function API.](https://shopify.dev/docs/api/functions/reference/cart-checkout-validation) [![](https://shopify.dev/images/icons/48/javascript.png)![](https://shopify.dev/images/icons/48/javascript-dark.png)](https://shopify.dev/docs/apps/build/functions/programming-languages) [Language support](https://shopify.dev/docs/apps/build/functions/programming-languages) [Learn about the language support and tooling that are available in Shopify Functions.](https://shopify.dev/docs/apps/build/functions/programming-languages) *** * [How it works](https://shopify.dev/docs/apps/build/checkout/cart-checkout-validation.md#how-it-works) * [Getting started](https://shopify.dev/docs/apps/build/checkout/cart-checkout-validation.md#getting-started) * [Developer tools and resources](https://shopify.dev/docs/apps/build/checkout/cart-checkout-validation.md#developer-tools-and-resources)