Validate and Block Checkout on Essential Checkout Extensions app
A validation rule blocks checkout and shows the customer a message when a condition you set is met — an order that's too large, a missing address field, a blocked email, too many units of one product. The four validation types all work the same way; they differ only in which conditions they offer.
The four validation types
| Type | Use it to | Typical conditions |
|---|---|---|
| Order limit validation | Enforce a minimum or maximum order | Cart total, Cart quantity, order count, Country |
| Checkout form validation | Catch bad or missing address/customer input | Address fields, address length, Country, customer type |
| Customer validation | Control who can buy | Customer email, tags, type, company, order count |
| Cart content validation | Restrict what's in the cart | Cart total, Cart quantity, Product quantity |
Pick the one that matches your intent — the condition catalog is tailored to it. You can change the type later while the rule is Inactive (see Managing and publishing your rules).
Write the block message and settings

The block settings — message, position, when to check, and fallback
A validation rule's action is the block. It has four settings:
- Message — the text the customer sees explaining why they can't continue (e.g. "We don't deliver to your location."). Keep it clear and actionable.
- Position — where the message appears. Choose Top of the checkout page, or attach it to a specific field (Email, Phone, a shipping/billing address field, PO number, …) so the error shows next to the input that caused it.
- Check conditions when — when the rule runs. Tick one or both:
- Interacting with the checkout — "When customer click through fields".
- Completing the checkout — "When customer proceeds to pay".
- If app fails to load, then — the fallback if the function can't run for some reason:
- Allow customer to complete checkout (fail open) — safest for not losing sales.
- Block customer from completing checkout (fail closed) — safest for strict rules.
Which fallback should I pick? Use Allow for "nice to have" checks where a lost sale is worse than a slipped-through order. Use Block for hard requirements (age limits, restricted regions) where letting one through is the bigger risk.
Set the conditions that trigger the block
The block only fires when your Conditions match. Build them in the Conditions section as described in Building conditions.
Watch out: a validation rule must have at least one condition before it can be published. A block with no conditions would apply to every checkout, so the app blocks publishing and shows "Add at least one condition to block checkout."
Remember that conditions in one group are AND (all must match) and separate groups are OR (any group matches) — so "block when the cart is over $500 OR under $10" is two groups, each with one condition.
Publish and test
Set Status to Active and click Save. Then test at checkout:
- Build a cart that should be blocked and confirm the message appears in the right place.
- Build a cart that shouldn't be blocked and confirm checkout proceeds normally.
Tip: if you ticked only Completing the checkout, the message won't show until the customer clicks to pay — that's expected. Tick Interacting with the checkout too if you want it to surface earlier.