Is there any way to actually block a repeat, abusive customer on Shopify?
Shopify has no native "ban this shopper" button, but risk flags, customer tags, Shopify Flow, and (on Plus) checkout validation functions can stop a repeat offender's next order before it ships.
What's going on
A customer keeps coming back — placing orders, causing chargebacks, harassing staff, or abusing your returns policy — and there's no obvious "block this person" switch anywhere in Shopify Admin. You can cancel and refund the orders as they land, but that's reactive: by the time you notice, the order is already placed, inventory is reserved, and you're doing damage control instead of prevention.
This is a genuinely common gap that merchants run into and vent about in Shopify's own community forums, because it doesn't map cleanly onto any single settings page. Shopify separates "fraud risk" (a per-order signal) from "customer identity" (a profile you can tag but not lock) from "checkout rules" (something only fully configurable via Shopify Functions on Plus), so the fix that actually stops a repeat offender is assembled from a few different native and semi-native pieces rather than one setting.
Why it happens
Shopify's checkout is built to be as low-friction as possible for legitimate shoppers, which means the platform is conservative about giving merchants a blunt instrument to reject a specific person outright — that kind of hard block has legal and false-positive implications (shared households, shared IPs, name changes) that Shopify pushes onto merchant judgment rather than automating by default.
The tools that do exist are split across different parts of the platform: order-level fraud risk is a Shopify-wide signal, customer tags are just metadata until you wire up automation, and true checkout-time blocking only became possible for most merchants once Shopify Functions/checkout extensibility rolled out — and even then it's gated to Plus unless you use a third-party app to fill the gap.
5 ways to fix it
Turn on Shopify's built-in fraud analysis and act on it manually (free, native)
Every order in Shopify Admin already carries a Risk section (Low, Medium, or High) built from signals like AVS/CVV mismatches, mismatched billing/shipping, and known fraud patterns. It's not a switch you flip on for a specific person, but it's the fastest free way to flag a repeat troublemaker's next order for manual review before you fulfill or refund it. Combine it with tagging the customer's profile (e.g. "do-not-fulfill") so any staff member who opens that customer record knows to escalate rather than process automatically.
Automate the response with Shopify Flow
Shopify Flow (included on Shopify plans that support it, not just Plus) can watch for new orders and check conditions such as customer email, customer tags, or order risk level, then automatically tag the order, notify staff, or cancel it outright. This is the closest thing to a native "block" for a known repeat offender: you tag the customer once after the abuse pattern is confirmed, and Flow enforces the rule on every future order without you having to catch it manually.
Use Shopify Functions checkout validation (Shopify Plus)
If you're on Plus, checkout extensibility includes validation functions that can reject a checkout outright based on custom logic — including a blocklist of emails, phone numbers, or customer tags. This is the only way to actually prevent the checkout from completing rather than cancelling/refunding after the fact, but it requires either developer resources or a Plus-compatible validation app to configure.
Add a third-party blocking app if you're not on Plus
Several Shopify App Store apps (search "block customers," "fraud filter," or "blocklist") let non-Plus stores block checkout by email, phone, billing address, or IP address, filling the gap that Shopify Functions covers on Plus. Vet any app for what data it collects and how it handles false positives (shared IPs, family members on one email) before relying on it as your only line of defense.
Fall back on documented policy enforcement
For genuinely abusive behavior (harassment, threats, serial chargeback fraud) that isn't just "an annoying customer," keep a written record of the incidents, refuse service per your posted terms/policy, and cancel and refund orders as they come in. For severe cases involving harassment or safety, Shopify's support and Acceptable Use policies give you a channel to report the account, though Shopify won't proactively ban a shopper from your store on your behalf outside of its own platform-wide fraud enforcement.
Bottom line
There's no single "block this customer" button in Shopify — you're combining native risk flags, tags, and Flow automation for most cases, and reaching for checkout validation (Plus) or a dedicated blocklist app only if repeat abuse keeps slipping through. Start with the free native tools; only add an app once you've confirmed the pattern is recurring and manual review genuinely isn't keeping up. A fraud/anti-abuse app is a reasonable fit here, but it's solving a workflow gap, not a bug — no BesPoP app is required to get the basic protection working.
Browse the rest of the problem library, run a free storefront scan to catch issues like this automatically, or email us and we'll work out a custom solution for it.