I want to block a customer who has hundreds of abandoned carts. This customer also placed a fraudulent order. There has not been another fraudulent order from this customer, but hundreds of abandoned checkouts, daily, to where I’m not able to see the real customer abandonded checkouts.
Is there a way to do it with code?
What have you done for research? There are extensive topics on this.
Shopify doesn’t have a direct “block customer” feature that stops someone from interacting with your store entirely, especially if they’re checking out as a guest.
For the fraudulent order, you can disable their customer account in the admin, which prevents them from logging in, but they can still place orders as a guest. To effectively block repeat offenders and manage the abandoned cart spam, your best bet is usually a robust fraud prevention app from the Shopify App Store. These apps can blacklist emails, IP addresses, and often integrate with your checkout process to prevent suspicious orders or flag them for review before they’re processed. Many can also help identify bot-like activity that might be generating those abandoned carts.
Regarding code, if you’re on Shopify Plus, you could potentially use Shopify Functions to block specific customers or email addresses during checkout. For standard Shopify plans, you could try to add some Liquid to your cart.liquid or checkout.liquid (if you have access) to redirect or show an error message based on customer.email or client.ip, but this is often circumvented by guest checkouts and won’t stop the abandoned carts from showing up if they’re hitting the checkout page before your code runs. If the abandoned carts are from a bot, blocking the IP at your CDN or firewall level might help, but that’s a more technical and less precise solution than a dedicated app.
The apps are generally the most reliable way to handle this kind of issue systematically.
P.S. I’m building a gamified discount app called Game Gophers. Looking for beta testers if you’re interested.
Thanks for the reply. I cannot disable the customer account - I guess the new customer account management from Shopify doesn’t allow it.
Yes, I looked at multiple apps, and most handled preventing fraudulent orders. The issue is more from the abandoned checkouts now.
Thanks.
Hi @c3idesign
Yes, you can block a specific customer from creating checkouts in Shopify using Liquid + Shopify Scripts or an app. Native Shopify doesn’t let you block checkouts by customer email automatically, but here’s what you can do:
-
Use Shopify Flow (if on Shopify Plus):
-
Trigger: Checkout created
-
Condition: Customer email = fraudulent email
-
Action: Cancel checkout or send alert
-
-
Use a third-party app:
- Apps like Fraud Filter let you block specific emails, IPs, or patterns from completing checkouts.
-
Custom code workaround (non-Plus):
-
In theme’s
checkout.liquid, you could checkcustomer.emailand redirect/block if it matches the banned email. -
Only works if the customer is logged in; abandoned guest checkouts may still appear.
-
We are not on Shopify Plus. The solution that has worked is the Armex app. Completely blocks the hundreds of abandoned orders by “John Doe.”
Are you sure its Armex, not Aramex app, but it doesn’t seem to have the functions you describe. I’m dealing with “John Doe” daily on our site.
Armex - https://apps.shopify.com/bora-ip-blocker-country-block
It works for us.
The ““John Doe”” pattern with hundreds of daily abandoned checkouts is almost always automated - a bot or script hammering the checkout, not a real person sitting there manually doing it. That’s why disabling the customer account doesn’t help (they’re never logging in), and it’s also why IP-level blocking is what cuts it off properly.
To clear up the confusion for optix9 - Armex is indeed the Bora IP Blocker app, not Aramex the courier. Different product entirely. The link in the previous reply confirms it. It works because it blocks the originating IP before the bot even gets to generate an abandoned checkout entry.
If Armex doesn’t work out for whatever reason, there are a couple of alternatives worth knowing. Blockify is another app that handles IP and email blocking on non-Plus plans and is pretty straightforward to set up. Fraud Filter (Shopify’s own free app) is sometimes suggested in these threads, but it’s worth noting it focuses more on flagging orders than stopping abandoned checkouts - so for this specific problem it’s less useful than an IP blocker.
One thing to keep in mind: if the bot rotates IPs, you may need to block by patterns or use a broader ruleset. Most blocking apps have some ability to handle ranges or recurring patterns, so it’s worth digging into those settings if a single IP block doesn’t hold.