> 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/state-compliance-reference/how-the-state-compliance-engine-works.md).

# How the State Compliance Engine Works

What CrushSuite checks before checkout, what your compliance provider checks, and what can still come up after an order is placed.

### Two layers of checks

Every order passes through two layers before it ships:

1. **CrushSuite's own checks.** These run when the customer submits the compliance form before checkout.
2. **Your compliance provider's checks.** If you use Vinoshipper, CrushSuite also sends the cart to Vinoshipper before checkout. Vinoshipper checks the order again when it receives it.

If you manage compliance yourself, only the first layer applies.

### What CrushSuite checks

When the customer clicks **Verify Purchase** in the compliance form, CrushSuite checks:

* **Age.** The customer's date of birth shows they are 21 or older.
* **Licensed state.** You are licensed to ship alcohol to the destination state.
* **States you turned off.** You haven't paused shipping to that state in **Compliance** > **Shipping** > **Custom Shipping Settings**.
* **Per-wine state restrictions.** Each wine in the cart is allowed to ship to that state.
* **Your store minimum.** The cart meets your store's minimum order.
* **Per-wine quantity limits.** The cart meets any minimum or maximum quantity set on an individual wine.

Before the customer reaches checkout, your storefront also locks **Add to Cart** on wines that can't ship to the state they picked.

### What CrushSuite does not check

CrushSuite does **not** check:

* State limits on how much wine a customer can receive per shipment or per month
* A customer's past purchases
* Dry counties or other local restrictions
* P.O. boxes, or whether an address is deliverable
* Heat or weather holds

If you use Vinoshipper, it applies its own state rules when CrushSuite sends it the cart and the order. Any problem it finds is shown to the customer, or reported to you as an order issue. If you manage compliance yourself, these rules are your responsibility.

### Where your state rules come from

* **Vinoshipper:** your licensed states sync from Vinoshipper once a day. Vinoshipper maintains its own state rules.
* **Self-managed:** you set your licensed states yourself in **Compliance** > **Tax & Licensing** > **Manage State Licenses**.

Turning a state off can take up to a minute to reach checkout.

### What can still come up after checkout

A customer who passes every check above can still place an order your provider later flags. Common reasons:

* The customer went over a state's monthly limit (for most states, 9 litres, or 12 × 750ml bottles, per calendar month)
* Your provider doesn't hold a permit or product registration for that shipment
* The customer reached checkout without the compliance form (for example, through an express checkout button)

These orders take payment. You'll see them under **Orders** in CrushSuite and get an order issue email, and you may need to refund the customer. See [Handling Failed or Blocked Orders](/docs/compliance/orders-and-fulfillment/handling-failed-or-blocked-orders.md).

{% hint style="warning" %}
CrushSuite applies the rules you set and passes orders to your compliance provider. It does not verify your licensing or guarantee legal compliance. Work with your compliance counsel to make sure your settings are accurate and current.
{% endhint %}
