If you're searching for how to block a customer on Shopify, the most reliable profile-based method is to add a dedicated tag to that customer's profile, then enforce it with a checkout validation. The rule should show a neutral message, apply at checkout completion, and be tested with signed-in, signed-out, and alternate-account scenarios.
CartBlock supports customer-tag conditions, so merchants can configure this workflow without building a custom Shopify Function. A tag-based rule is useful for enforcing a documented decision about a known customer account. It is not a universal identity block: the same person may return as a guest or use different contact details.
Can you block a customer on Shopify?
Shopify lets staff add tags to individual customer profiles, but a tag by itself does not prevent a purchase. To stop a tagged customer before an order is completed, the store also needs a cart and checkout validation that checks the customer associated with the cart and returns an error when the block tag is present.
This guide is for a policy-led restriction on one specifically reviewed customer profile. For broader rule configuration, positive and negative tag logic, and product eligibility examples, use the customer-tag checkout validation guide.
You can block a known Shopify customer profile from completing checkout by adding a dedicated customer tag and using a cart and checkout validation rule to reject that tag. The tag alone does not block orders, and the method might not identify guest checkouts or alternate accounts.
This is different from several related actions:
| Action | What it does | Does it reliably enforce this policy before an order? |
|---|---|---|
| Add a note to the customer profile | Gives staff internal context | No |
| Add a customer tag | Labels the profile for rules and workflows | No, not without a validation |
| Disable a customer account | Changes account access | Do not treat this alone as checkout enforcement |
| Cancel an order after it is placed | Stops fulfillment after checkout | No; the order has already been created |
| Hide the checkout button in the theme | Changes one storefront path | No; other checkout paths may remain |
| Run a customer-tag checkout validation | Evaluates the tagged customer before completion | Yes, for the identified customer profile and tested checkout paths |
Use a checkout validation when the business requirement is: “This known customer profile must not complete an order.” Use post-order review or cancellation only when the policy intentionally allows the order to be created first.
What should you decide before blocking a customer?
Treat a customer block as an operational policy, not an improvised fraud verdict. Before changing the profile, record:
- the reason permitted by your store policy;
- the evidence or incident reference supporting the decision;
- who approved the block;
- whether the block is permanent or has a review date;
- which storefronts, markets, and sales channels it covers; and
- how the customer can contact the store if the restriction is an error.
Apply the policy consistently and review any consumer-protection, accessibility, privacy, anti-discrimination, or contractual obligations that apply to your business. Avoid putting sensitive allegations in a customer-facing tag or error message.
How to block a specific customer at Shopify checkout with CartBlock
The exact CartBlock labels can change. Confirm the available condition, validation scope, and plan entitlement in the version installed on your store before launch.
1. Create a dedicated customer tag
Choose one documented tag for the restriction, such as checkout-restricted. Do not create slightly different versions such as blocked, block-customer, and checkout_blocked; inconsistent tags make audits and removal harder.
Shopify states that tags are not case sensitive. Shopify also warns that apps with access to customer data could display tags, so keep the label neutral and free of sensitive details.
2. Add the tag to the specific customer profile
In Shopify admin:
- Go to Customers.
- Search for and open the relevant customer profile.
- In the Tags section, add
checkout-restricted. - Save the profile.
Check for duplicate profiles before continuing. If the same person has several legitimate profiles, follow your documented identity and privacy process rather than assuming that similar names belong to the same individual.
For several reviewed profiles, Shopify supports adding customer tags in bulk. Bulk changes increase the impact of a mistake, so export or record the approved list and test the rule with one controlled profile first.
3. Create a customer-tag validation in CartBlock
Open CartBlock in Shopify admin and create a validation rule. Give it a title that explains the policy without exposing private details, such as Checkout restriction — reviewed customer profiles.
Choose the customer-tag condition shown in your installed version, then configure the rule to block when the customer has the checkout-restricted tag.
The logic should read like this:
If the customer has the
checkout-restrictedtag, block checkout completion and show the configured message.
This operator direction matters. A “does not have tag” condition would block every other customer instead.
4. Choose the enforcement scope
Enable the scope that prevents checkout completion. If CartBlock also lets you display the validation earlier in the cart or checkout journey, an earlier message can reduce wasted effort, but it should supplement the checkout-completion rule rather than replace it.
Shopify's cart and checkout validation framework runs server-side and supports validation during cart and checkout interactions. Test every enabled surface and checkout route in the store instead of assuming the message appears in the same place everywhere.
5. Write a neutral, useful message
Do not tell the shopper that they are “fraudulent,” “blacklisted,” or “banned.” State the outcome and give a contact path without disclosing internal data.
Example:
We can't accept this order online. If you believe this is an error, contact support@example.com and include reference CR-104.
support@example.com is a placeholder. Replace it with the approved store support address before activating the rule.
A reference code helps support find the internal record without exposing the tag or reason. Do not promise that support will reverse the decision.
6. Save and activate the rule
Before activation, read the completed rule as a sentence and check:
- the tag spelling matches Shopify admin;
- the condition is has tag, not does not have tag;
- checkout completion is included;
- the message and support address are current; and
- the rule does not contain an unintended OR condition that broadens the block.
Activate the validation only after the controlled tests below pass.
How to test the customer block
Use test profiles and a development or controlled storefront path. Do not use a real customer's account credentials.
| Scenario | Expected result |
|---|---|
Signed-in test customer with checkout-restricted
|
Checkout cannot complete; correct message appears |
| Signed-in test customer without the tag | Checkout completes normally |
| Restricted tag removed from the test profile | Checkout completes after the change is reflected |
| Guest checkout with the same email, if guest checkout is enabled | Record the observed result; do not assume profile-tag matching |
| New account using a different email | Not blocked by the original profile tag |
| Standard checkout | Rule behaves as documented |
| Shop Pay and each enabled accelerated checkout | Rule behaves as documented |
| Cart or drawer checkout entry point | Early message appears if configured; completion remains blocked |
| Draft order or another sales channel | Follows the separate, documented staff/channel policy |
Start a fresh session or cart after changing the test customer's tag. Record the date, storefront, account state, checkout route, and result so another operator can reproduce the test.
Important limitations of a tag-based customer block
It identifies a customer profile, not a person
The validation checks the customer associated with the cart. A shopper who checks out as a guest or uses another account may not present the tagged profile. Do not describe a customer-tag rule as impossible to bypass.
Names are not reliable identifiers
Different people can share a name, and one person can enter a name differently. Use a reviewed customer profile and an internal policy process rather than blocking a name alone.
Theme-only changes are incomplete enforcement
Hiding a checkout button or adding storefront JavaScript can change the visible path, but it should not be the only control for a checkout policy. A shopper may reach checkout through another cart, URL, sales channel, or accelerated flow. Use server-side Shopify checkout validation for enforcement.
A block is not fraud detection
CartBlock can enforce a configured condition before completion. It does not establish identity, score fraud, or prove that a shopper is the same person as a previously restricted customer. Keep Shopify's fraud analysis, payment controls, and post-order review process separate, using a layered Shopify fraud and bot prevention process when abuse is the concern.
Tags need an owner and removal process
Assign a team owner who can add, review, and remove the tag. Record an expiry or review date when the restriction is temporary. When a block is reversed, remove the tag, retest the allowed path, and update the case record.
Customer block launch checklist
- Document the reason, approver, scope, and review date.
- Use one neutral tag, such as
checkout-restricted. - Check for duplicate profiles without merging people based only on similar details.
- Configure customer has tag as the blocked condition.
- Enforce the rule at checkout completion.
- Write a neutral message with a current support route.
- Test tagged, untagged, signed-out, and alternate-account scenarios.
- Test standard and accelerated checkout paths.
- Document how draft orders and other sales channels are handled.
- Assign an owner for tag changes, appeals, and periodic review.
Frequently asked questions
Does tagging a customer block them from ordering on Shopify?
No. A customer tag organizes or labels the profile; it does not block an order on its own. Pair the tag with a checkout validation that returns an error when the tagged customer tries to complete checkout.
Can I block a Shopify customer by email address?
Shopify's validation APIs can expose buyer identity data to apps, but CartBlock's approved, documented capability for this workflow is a customer-tag condition. Do not assume an email-address block is available in CartBlock. Tag the reviewed customer profile, then test signed-in and guest behavior in your store.
Will the rule block guest checkout?
Do not assume it will. A guest may not present the tagged customer profile, and a person can use different contact details. Test guest checkout explicitly and describe the rule internally as a profile-based restriction.
Can a customer-tag rule block only certain products?
Yes, when the relevant conditions are available in your CartBlock version. Combine “customer has restricted tag” with a product, variant, collection, or other cart condition using AND logic. For the full condition setup, see the guide to blocking Shopify checkout by customer tag.
Should I delete the customer's Shopify profile?
No. Deleting a profile is not a substitute for a checkout policy, and Shopify limits deletion for some profiles, including customers associated with certain records. Keep the reviewed record needed for your lawful operational process and use the validation rule to enforce the checkout decision.
How to block a customer on Shopify before the order is placed
A reliable customer restriction has 3 parts: a reviewed customer profile, a consistently managed tag, and a checkout validation that blocks the tagged profile before completion. The message should stay neutral, and the operating procedure should cover guest checkout, alternate accounts, appeals, and tag removal.
Explore CartBlock on the Shopify App Store to check whether its current customer-tag validation fits your store's policy. Verify the installed interface, plan availability, and all enabled checkout paths before using the rule on a live store.

Install Now