--- title: Validation - GraphQL Admin description: >- A server-side validation that enforces business rules before customers complete their purchases. Each validation links to a [`ShopifyFunction`](https://shopify.dev/docs/api/functions/latest/cart-and-checkout-validation) that implements the validation logic. Validations run on Shopify's servers and are enforced throughout the checkout process. Validation errors always block checkout progress. The `blockOnFailure` setting determines whether runtime exceptions, like timeouts, also block checkout. Tracks runtime exception history for the validation function and supports custom data through [`Metafield`](https://shopify.dev/docs/api/admin-graphql/latest/objects/Metafield) objects. api_version: 2026-01 api_name: admin type: object api_type: graphql source_url: html: 'https://shopify.dev/docs/api/admin-graphql/latest/objects/Validation' md: 'https://shopify.dev/docs/api/admin-graphql/latest/objects/Validation.md' --- # Validation object Requires `read_validations` access scope. A server-side validation that enforces business rules before customers complete their purchases. Each validation links to a [`ShopifyFunction`](https://shopify.dev/docs/api/functions/latest/cart-and-checkout-validation) that implements the validation logic. Validations run on Shopify's servers and are enforced throughout the checkout process. Validation errors always block checkout progress. The `blockOnFailure` setting determines whether runtime exceptions, like timeouts, also block checkout. Tracks runtime exception history for the validation function and supports custom data through [`Metafield`](https://shopify.dev/docs/api/admin-graphql/latest/objects/Metafield) objects. ## Fields * blockOnFailure * enabled * errorHistory * id * metafield * metafields * shopifyFunction * title * metafieldDefinitions: deprecated *** ## Map ### Fields and connections with this object * [ValidationConnection.nodes](https://shopify.dev/docs/api/admin-graphql/latest/connections/ValidationConnection#returns-nodes) * [ValidationEdge.node](https://shopify.dev/docs/api/admin-graphql/latest/objects/ValidationEdge#field-ValidationEdge.fields.node) *** ## Queries * validation * validations *** ## Validation Queries ### Queried by * [validation](https://shopify.dev/docs/api/admin-graphql/latest/queries/validation) * [validations](https://shopify.dev/docs/api/admin-graphql/latest/queries/validations) *** ## Mutations * validationCreate * validationUpdate *** ## Validation Mutations ### Mutated by * [validation​Create](https://shopify.dev/docs/api/admin-graphql/latest/mutations/validationCreate) * [validation​Update](https://shopify.dev/docs/api/admin-graphql/latest/mutations/validationUpdate) *** ## Interfaces * HasMetafieldDefinitions * HasMetafields * Node *** ## Validation Implements ### Implements * [Has​Metafield​Definitions](https://shopify.dev/docs/api/admin-graphql/latest/interfaces/HasMetafieldDefinitions) * [Has​Metafields](https://shopify.dev/docs/api/admin-graphql/latest/interfaces/HasMetafields) * [Node](https://shopify.dev/docs/api/admin-graphql/latest/interfaces/Node)