> For the complete documentation index, see [llms.txt](https://crushsuite.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://crushsuite.gitbook.io/docs/compliance/getting-started/setting-up-pre-checkout-requirements.md).

# Setting Up Pre-Checkout Requirements

Pre-checkout requirements ensure that every customer is verified for age and address before they can complete a wine purchase. CrushSuite enforces these checks automatically — your job is to make sure

### What Pre-Checkout Does

Before a customer can check out with wine products, CrushSuite runs two compliance checks:

1. **Age verification** — Confirms the customer is 21 or older (a legal requirement for wine purchases in all U.S. states)
2. **Address validation** — Confirms the shipping address is valid and eligible for wine delivery (not a P.O. box in a restricted area, not a dry county, etc.)

These checks happen in the CrushSuite **compliance form**, before the customer reaches Shopify's standard checkout flow. If either check fails, the customer sees a clear message explaining why they can't proceed — they are not silently blocked.

The compliance form is on by default. You can turn it off (to run compliance at checkout only — for example on Shopify Plus) and fully brand it — display style, colors, fonts, and copy — in the **CS 5. Cart** embed. See *Customizing the Compliance UI*.

***

### How to Configure

1. In your **Shopify Admin**, navigate to **Settings**.
2. Open **Checkout** settings.
3. Under the checkout customization options, scroll down to Customer information and edit&#x20;
   1. Full name → require first and last name
   2. Shipping address phone number → Required &#x20;

{% hint style="info" %}
The customer information section workds in concert with CrushSuite's app embeds (especially the Entry Pop-Up Modal). Make sure your app embeds are enabled for the full compliance flow.
{% endhint %}

<figure><img src="https://3906158595-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FagSKdREExJMSW7WgxBLr%2Fuploads%2Fv8bTt2LeJCtEUwuPDa1Q%2FCleanShot%202026-03-12%20at%2013.51.10.png?alt=media&amp;token=715874f9-4c75-4ae6-896c-f46a608045c7" alt=""><figcaption></figcaption></figure>

***

### What Customers Experience

From the customer's perspective, the pre-checkout flow is smooth and fast:

1. They arrive on your store and see the **entry pop-up modal** asking them to confirm they're 21+ and select their shipping state.
2. As they browse, products show as **available or unavailable** based on their selected state.
3. When they proceed to checkout, CrushSuite validates their **shipping address** against compliance rules.
4. If everything checks out, checkout proceeds normally through Shopify's native payment flow.

If a check fails, the customer sees a message like "We're unable to ship to your location" — not a cryptic error.

For more detail on the customer-facing experience, see the Storefront & Checkout section.
