Shopify

AI Tools

Welcome to the documentation for integrating Yoti Age Verification with Shopify.

The Yoti Age Verification Service helps merchants stay compliant when selling age-restricted products by offering two flexible verification options within a single app:

  1. Sitewide Age Verification (Storefront age-gating)

    • This feature allows merchants to enable sitewide age verification through a pop-up that blocks access to the storefront until the customer successfully verifies their age.
    • Merchants can also configure geographic restrictions, allowing the age-gate pop-up to appear only for specific countries or states.
  2. Check-out Age Verification

This feature ensures that age verification is triggered only when age-restricted items are present in the cart. Merchants need to tag such products with the “age_check_required” tag.

  • If the cart includes only unrestricted products, the age verification button will not appear during the checkout process.
  • If any age-restricted item is added, the age verification button automatically appears during checkout.

This ensures a seamless checkout experience while maintaining compliance with restricted products.

Checkout Age verification extension are available only to stores on a Shopify Plus plan

In order to configure the integration, an organisation must be registered with Yoti. For information on how to do this, please refer to our Onboarding guide.

Details you will need:

  • A verified organisation through the Yoti Hub
  • Age Verification API Key consisting of an SDK ID and a Bearer Token

The following are the integration steps:

  1. Download the plugin
  2. Install the plugin
  3. Add your keys and configure the plugin options
  4. Enable Age verification for relevant posts/pages

Install the plugin

  • Go to the Shopify App Store and search for Yoti Age Verification Service.

  • Click Install.

  • You’ll be redirected to admin.shopify.com → log in with your account.

    • If you’re already logged in, you’ll see a prompt to install.
  • Click install the app
  • Once installed, click the View Setup Guide button at the top → follow the steps shown.

Yoti has two extensions:

  1. Theme App Extension (sitewide protection)
  2. Checkout Extension (checkout-level verification)

Theme App Extension

  • Go to Shopify Admin → Online Store → Themes.
  • Click Customise on your active theme.
  • In the theme editor, click Add embeds (bottom left).
  • Search for Yoti Age Verification Service and add it.
  • In the app configuration, ensure Enable sitewide age verification is checked.
  • click Save.

Below are the settings you need to complete the integration:

SettingsExplaination
ConfigurationEnable sitewide age verification in your app settings.
Theme SetupAdd the theme extension to your store’s theme.
Visitor ProtectionShoppers see a blocking popup requiring verification before browsing.
Complete VerificationStore content unlocks only after verification.
Session ManagementOnce verified, customers can shop freely for the configured session duration.
Geographic ControlVerification appears only for countries/states you configure.

The Enable sitewide age verification option must be checked in your app settings before setup.

Skip to the product tags section.

Checkout Extension

  • Go to Shopify Admin → Settings → Checkout → Customise.
  • Under Apps, find yoti-avs-checkout.
  • Click ➕ Add to include it in your checkout flow.
  • Add the block in Checkout → ensures age verification before order completion.
  • Add the block in Thank You → captures the order ID and updates order metafields.
  • Click Save.

Below are the settings you need to complete the integration:

SettingsExplaination
Tag ProductsAdd age_check_ required to products needing verification.
Customer ShopsCustomer adds tagged products to cart.
Verification AppearsAge verification button shows up at checkout (only for carts with age restricted products).
Complete VerificationCustomer verifies successfully.
Purchase EnabledCustomer can now complete the order.
Order TrackingVerification results are stored in order metafields for compliance.

The Enable sitewide age verification option must be checked in your app settings before setup.

Product Tags

  • Go to Products → open a product that requires age verification.
  • Scroll to the Tags section.
  • Add the tag: age_check_required .
  • Save the product → verification will now trigger at checkout for this product.

Plugin Settings

See below for all the configuration you need for the plugin:

SettingExplainedExample
Enter the minimum ageDefine the age threshold.If set to 21, only customers verified to be 21 or older can complete checkout.
Verification Timeout (seconds)Defines how long a verification session remains valid before it expires. Customers must complete their age verification within this time window.Setting this to 900 = 15 minutes.
Enable cookies for IP verificationWhen enabled, the customer’s IP location data is cached using cookies. This prevents repeated API calls on every page load.N/A
IP Location cache durationChoose how long the IP location data should be cached before it is checked again. Applies to both site-wide and page-level verification.Default: 24 hours
Enable IP WhitelistAllow specific IP addresses to bypass age verification. Useful for physical stores or staff networks where employees need to access the site without going through verification.0.0.0.0
Add IP address or rangeEnter individual IPs or CIDR ranges to be whitelisted192.168.1.100 or 10.0.0.0/24
Age verification methods

You can choose one or more verification methods:

  1. Age estimation. Instantly estimate a customer’s age using a real-time selfie image.
  2. Digital ID, Customers can verify their age using their Yoti Digital ID app.
  3. Identity Verification. When enabled, customers can verify their age by uploading a valid government-issued ID document and taking a selfie.
Age Estimation
Success MessageEnter the message your customers will see after successfully verifying their age __Age verification successful! You can now continue with checkout
Failure Message

Enter the message your customers will see if their age verification is unsuccessful.

This message will appear if the customer does not meet the minimum age requirement or fails the verification process.__

Sorry, you could not be verified as over 18. You cannot complete this purchase
Verification button textConfigure the text for the age verification button at checkout The button initiates the age verification process.Verify your age
Allow Checkout on Verification FailureAllow checkout even if age verification fails __Disabled (default): Customers who fail age verification and cannot complete checkout. This is the recommended setting for compliance. Enabled: Customers may proceed with checkout even if they do not pass age verification.

Theme App extension Settings

These settings are specific to the theme app.

SettingExplainedExample
Enable Sitewide Age VerificationWhen enabled, visitors will see an age verification Pop-up before accessing any page on your storefront. This ensures that your content or products are restricted to users of a certain age.N/A
Pop-up TitleThis text appears at the top of the age verification Pop-up and informs users about the requirement.Age Verification Required
Pop-up MessageProvides a clear explanation of the age requirement to visitors.Please confirm that you are 18 years of age or older to continue
Verification Button TextThis text is displayed on the button that users click to start the age verification process.Example: Confirm Age”
Session Duration (seconds)Once a customer completes age verification, they will not be prompted again for the duration specified. This prevents repeated verification prompts during browsing sessions.Default: 86400 seconds (24 hours)
Page Exception List (Optional)

Specify pages where age verification should NOT appear. When enabled, verification will show on all pages except the ones listed below. Leave empty to show on all pages.

When enabled, age verification will be shown on all pages EXCEPT the pages you specify below.

Enter page patterns to exclude from age verification, one per line. Examples: 'home', 'collections/catalog', 'pages/about', 'videos', 'products'. Age verification will show on all other pages.

Geographic Restrictions

This allows you to configure age verification for specific countries and states/regions.

Yoti offers the ability to configure:

    1. Countries only: Visitors from any state/region in selected countries will see the age verification Pop-up.

    2. Countries + States: Only visitors from the selected states within the selected countries will see the Pop-up.

    3. No countries selected: Age verification is applied globally.

    4. Visitors from locations not selected will bypass the age verification Pop-up.

Select Countries (Multiple Selection)

  • Choose the countries where age verification should be applied.

  • Supports multiple selections for more granular control over visitor access

  • Configure country- and region-specific age verification rules by selecting which verification methods to enable or disable (Digital ID, Identity Verification, Age Estimation, etc.) and setting custom age thresholds for each method. This allows full control over how age checks are applied in different locations.

Results

When a customer successfully completes age verification, the verification result is now stored in the Shopify Admin via metafields.

The metafields are created and updated using the customer’s order ID once the purchase is completed. This ensures that each order has an associated age-verification record, enabling merchants to track and audit verification status directly in the Shopify Admin.

The stored metafields allow consistent, persistent verification data across the store, improving compliance and record-keeping

Thank you page

To successfully receive the final verification result and update metafields, the merchant must add the Thank You extension to the Thank You page.

To enable this:

1. Open the Yoti Age Verification app.

2. Go to the Setup page.

3. Click the Enable checkout verification button.

4. In the Shopify editor, under the Apps section, locate the yoti-avs-checkout block.

5. Click Add to → Thank you and add the extension to the Thank You page.

This step is mandatory, as the Thank You extension is responsible for delivering the final age-verification result back to the app, which is then used to update the metafields for the order.

Type to search, ESC to discard
Type to search, ESC to discard
Type to search, ESC to discard