Do these 3 things before closing this tab:
1Scan for outdated or missing drivers - takes under a minute2Repair Windows errors before they cause bigger problems3Fix the driver behind crashes, sound loss and screen glitchesiTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
Antihost offers managed WordPress hosting with free migration, one-click staging and a 14-day free trial.
Stop WooCommerce spam orders with several controls working together: protect checkout with CAPTCHA, observe fraud-risk scores before blocking, set store-specific velocity limits, blacklist confirmed abusive identifiers, whitelist trusted shoppers, and rate-limit Checkout Block and Store API requests when bots bypass the visible form. Keep your payment gateway’s fraud and chargeback tools enabled because no single WooCommerce control catches every fraudulent transaction.
What spam orders are—and why one filter is not enough
A spam order is an order created by an automated script, a malicious shopper, or a card-testing operation rather than a genuine purchase. Some attempts use the normal checkout page; others send requests directly to WooCommerce’s Store API. The objective may be to test stolen card numbers, consume inventory, create account noise, trigger transactional email, or simply overload the store.
WooCommerce notes that many fake orders and card-testing attempts are not placed by a person at all. That matters because a CAPTCHA alone only addresses one route into checkout. A useful design has controls at different points:
- Before payment: CAPTCHA, request-rate limits, velocity rules, and blacklist checks can stop or slow automated submissions.
- At order creation: fraud-risk scoring can hold suspicious orders for review, while blacklist matches can prevent checkout or cancel an order.
- At payment: the gateway’s fraud screening, authorization rules, and chargeback tools provide a separate decision layer.
- After the event: order logs and review outcomes reveal new emails, addresses, IPs, countries, and payment patterns to add to future rules.
Layering also limits false positives. A low-friction challenge can handle broad bot traffic, risk scoring can identify unusual combinations without rejecting them, and narrow blacklist rules can target identifiers you have actually confirmed as abusive.
#1 Best Overall
Choose controls by the problem they solve
The table below separates the controls by timing, coverage, and operational cost. A store normally needs more than one row.
| Control | Acts when | Best coverage | False-positive handling | Operational trade-off |
|---|---|---|---|---|
| Cloudflare Turnstile | During checkout interaction | Automated checkout submissions | Designed as a privacy-focused, low-friction challenge; combine with allowlists for exceptions | Usually less interruption for shoppers, but it does not replace payment fraud screening |
| Google reCAPTCHA v2 | During checkout interaction | Automated form activity and suspicious sessions | Challenge behavior can be more noticeable; test it with accessibility and conversion requirements | Adds a verification step and requires correct site configuration |
| Fraud-risk scoring | When an order is evaluated | Unusual or high-risk combinations, including possible card testing | Review first; trusted customers can be whitelisted | Creates a review queue rather than an immediate rejection |
| Blacklist rules | At checkout or order handling, depending on the rule | Known abusive email addresses or domains, phone numbers, IPs, locations, billing details, or order values | Use narrow matches and pair them with whitelist rules | Broad rules can block legitimate shoppers; maintenance is required |
| Velocity and payment-attempt limits | As repeated requests or attempts accumulate | Card testing and bursts of automated orders | Set limits from normal store behavior, not a generic number | Legitimate repeat buyers or busy campaigns can resemble abuse |
| Checkout Block and Store API rate limiting | When API endpoints receive calls | Bots that bypass the visible checkout page and excessive API traffic | Confirm that legitimate headless, mobile, and integration traffic remains below the limit | Too-aggressive limits can break custom checkout or fulfillment integrations |
| Payment-gateway controls | During authorization and settlement | Payment risk, stolen cards, and chargeback exposure | Use the gateway’s review, decline, and dispute workflows | Not a substitute for WooCommerce-side bot and order controls |
Step 1: Document the pattern before blocking it
Start with a sample of fake, cancelled, or suspicious orders. Record the identifiers and behavior that repeat:
- Full email addresses and recurring email domains.
- IP addresses, phone numbers, and user-account details.
- Billing and shipping countries, regions, addresses, and postal patterns.
- Payment method, authorization result, and whether several cards were tried.
- Order value, product combination, coupon use, and the time between attempts.
- Whether the activity used the normal checkout or generated Store API requests.
Do not begin by blocking an entire country, payment method, or broad email provider because one incident used it. A legitimate customer may share each of those attributes. Look for combinations and repetition: the same domain with many addresses, one IP cycling through cards, or a burst of low-value attempts.
Keep a short incident record with the date, the rule you changed, and the result. That makes it possible to roll back a rule when a genuine customer is rejected and prevents several administrators from adding overlapping blocks.
Step 2: Put a CAPTCHA on checkout
WooCommerce documents two checkout CAPTCHA choices: Cloudflare Turnstile and Google reCAPTCHA v2. Turnstile is described as privacy-focused and low-friction. reCAPTCHA v2 is appropriate when its challenge model fits your audience and accessibility requirements.
- Open the CAPTCHA or checkout-protection settings supplied by your WooCommerce setup or extension.
- Select the checkout surfaces that accept an order, including any account or guest-checkout forms exposed by your configuration.
- Create or enter the required site credentials for the selected CAPTCHA provider, then save the configuration.
- Use a logged-out browser to test a normal product-to-payment journey on desktop and mobile.
- Test an invalid submission and confirm that the CAPTCHA response is required before the request is accepted.
- Review server, browser-console, and checkout logs for blocked scripts or caching conflicts before enabling aggressive enforcement.
A CAPTCHA reduces automated submissions but cannot identify every fraudulent transaction. It may also be bypassed by human-assisted services or scripts that call an endpoint directly. Treat it as the first gate, not the final decision.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Step 3: Observe risk scores before you auto-block
WooCommerce Anti-Fraud Protection combines fraud-risk scoring, order blacklisting, smart whitelisting, and Google reCAPTCHA. High-risk orders can be moved automatically to Pending Risk Review. The safe rollout is observational:
- Enable risk scoring without an immediate automatic rejection for every flagged order.
- Review the signals on held orders alongside the customer’s payment result, address, order history, and request pattern.
- Mark trustworthy repeat customers, partners, and other known exceptions for whitelisting where the feature supports it.
- Only after you can distinguish your normal peaks from abuse should you add automatic actions for the clearest high-risk cases.
Scoring and blacklists have different consequences. WooCommerce describes scoring as a review aid; a blacklist match can stop checkout immediately, cancel an order, or block registration, depending on the rule. Make sure staff know whether they are looking at a held order that can be released or an order that was rejected before payment.
Step 4: Set velocity and payment-attempt limits from your baseline
Card testers often submit many small or similar attempts in a short period. Order-velocity and payment-attempt thresholds are therefore useful, but WooCommerce advises choosing store-specific thresholds rather than generic defaults.
Establish a normal baseline
Compare ordinary traffic on quiet days, promotion days, and product launches. Note how many orders a genuine shopper can place, how quickly a family or business account may retry a declined payment, and how your support team handles duplicate orders.
Rank #2
Apply separate limits to separate behaviors
- Repeated orders from one account or session.
- Multiple payment attempts against one order.
- Many cards or billing names associated with one IP or device pattern.
- High request volume to checkout endpoints without completed orders.
Start with review or temporary friction
If your implementation permits it, send borderline activity to review instead of issuing an immediate permanent block. Recheck the rule during a normal sales period and after marketing campaigns. A threshold that protects a quiet weekday can reject legitimate demand during a launch.
Step 5: Add narrow blacklists and useful whitelists
Blacklist conditions can include an email address or domain, phone number, IP address, shipping location, billing details, and order value. Available actions include preventing an order, cancelling it, or blocking registration.
Blacklist confirmed identifiers
Add an exact email address, a demonstrably abusive domain, or a repeated IP only after checking several related orders. If a domain is abused but also used by real customers, prefer an exact-address rule or combine the domain with another signal. A value rule should be used carefully: a high-value order may deserve manual review, but value alone is not proof of fraud.
Use whitelists to protect legitimate exceptions
Whitelist trusted customers, partners, known payment methods, or locations when your workflow supports it. Keep the exception specific and auditable. A whitelist should not silently bypass every security check for an entire organization if only one account has been verified.
Choose the least destructive action
Preventing checkout stops the transaction at the front door. Cancelling an order may be preferable when another system must receive the order for reconciliation. Blocking registration addresses account creation rather than guest checkout. Match the action to the abuse path and document who can reverse it.
Step 6: Rate-limit Checkout Block and Store API traffic
Attackers can bypass the visible checkout form and call Store API checkout endpoints directly. WooCommerce documents a rate-limiting setting for Checkout Block and Store API checkout requests to reduce abuse and excessive calls.
- Enable the documented checkout/API rate-limiting feature in your WooCommerce configuration.
- Identify legitimate consumers of the Store API, such as a headless storefront, mobile client, analytics process, or fulfillment integration.
- Exercise those clients in a staging or controlled production window and confirm that normal cart, checkout, and payment calls succeed.
- Watch for responses indicating throttling, failed checkout sessions, or retries from legitimate integrations.
- Adjust the limit to accommodate observed legitimate traffic while still slowing bursts that do not produce completed orders.
Rate limiting is not an authorization system. Keep authentication, web-application firewall, server, and gateway protections appropriate to your hosting architecture. The WooCommerce setting specifically addresses documented Checkout Block and Store API request abuse.
Step 7: Keep gateway fraud and chargeback controls active
WooCommerce states that its fraud features do not replace gateway controls and do not address every kind of fraud. Keep the payment provider’s risk rules, verification options, decline handling, and dispute process enabled. A request that passes CAPTCHA and a WooCommerce blacklist can still involve a stolen card or a transaction that later becomes a chargeback.
Review the gateway result together with the WooCommerce risk outcome. A successful authorization is not the same as a verified customer, and a held WooCommerce order should not be fulfilled merely because the card was authorized.
Step 8: Test every checkout path after changing controls
Security changes can break legitimate purchasing. Use a test customer and, where available, the gateway’s test mode to check:
- Guest checkout and logged-in checkout.
- Desktop and mobile layouts.
- Each enabled payment method.
- Coupon, shipping, tax, and address validation flows.
- Classic Checkout and Checkout Block experiences if both are present.
- Any headless or custom client using Store API requests.
- Order emails, stock reduction, webhook delivery, and fulfillment hand-off.
Then inspect the order list for the expected outcomes: a known high-risk test should be held or rejected according to your rule, while a normal test should complete without an unexplained challenge or API throttle.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Compatibility decisions: classic, block, headless, and API checkouts
| Checkout architecture | Controls to verify | Common failure to watch for |
|---|---|---|
| Classic Checkout | CAPTCHA placement, risk scoring, blacklist action, gateway response | The challenge is shown on one form but not on a customized or cached checkout template |
| Checkout Block | CAPTCHA support, risk scoring, and documented rate limiting | Block requests are throttled or rejected while the storefront appears visually normal |
| Headless or custom storefront | Store API rate limiting, authentication, client retry behavior, and gateway hand-off | A client retries a throttled call repeatedly, creating more traffic and duplicate sessions |
| Guest checkout | IP, email, phone, address, and payment-attempt rules | Account-based limits provide no protection because the attacker never registers |
| Logged-in checkout | Account history, whitelist exceptions, velocity limits, and registration controls | A compromised or disposable account appears trusted until its behavior changes |
Monitor the controls without creating a second problem
Review held and blocked orders
Assign an owner to inspect Pending Risk Review orders and record the decision. Separate false positives from confirmed abuse; they require different rule changes. A false positive usually calls for a narrower condition or a whitelist, not simply a higher global threshold.
Free tools Windows power users keep installed
One-click scans. No signup required.
Watch operational signals
- Growth in checkout requests without corresponding completed orders.
- Repeated payment declines or many cards attempted in a short period.
- Sudden increases in cancelled, held, or registration-blocked activity.
- Legitimate customers reporting CAPTCHA loops, unexplained declines, or API errors.
- Delayed or duplicated emails, webhooks, stock changes, or fulfillment messages.
Review rules on a schedule
Remove stale IP and email rules when the associated abuse has ended, and revisit thresholds after major catalog, marketing, or checkout changes. Keep a change log with the rule, reason, date, and observed effect so that an administrator can undo a harmful change quickly.
Troubleshoot the most common failure modes
Spam continues after CAPTCHA is enabled
Confirm that the challenge protects the actual checkout endpoint, not just a visible page. Check whether traffic is using Store API requests, then enable the documented rate limiting and inspect request logs. Continue with risk scoring and narrow blacklists; CAPTCHA is not designed to catch every fraudulent transaction.
Legitimate shoppers are being blocked
Find the exact condition that matched. Replace a broad domain, location, or value rule with a narrower combination, add a verified customer or partner to the whitelist, and retest the complete payment flow. Do not solve a false positive by disabling every control.
Orders are held but staff cannot tell why
Document the risk signal and the review decision in your support process. Ensure staff can distinguish Pending Risk Review from a payment decline, a blacklist rejection, and an API throttle. A clear status prevents an authorized payment from being fulfilled without a fraud decision.
Recommended Free Tools
Custom checkout or integration fails after rate limiting
Measure the client’s request sequence and retry behavior. Reduce unnecessary retries, confirm that the client handles throttling, and adjust the limit to the verified normal volume. Re-test cart creation, payment submission, and webhook completion rather than only loading the checkout page.
Fraud moves to new identifiers
Attackers can rotate email addresses, IPs, and cards. Keep scoring and velocity controls active instead of relying on a static blacklist. Add a new blacklist entry only when the identifier is confirmed, and use combinations such as repeated attempts plus a matching address pattern when supported.
Availability and scope of WooCommerce’s native fraud feature
WooCommerce’s Fraud Prevention documentation describes protection against automated or malicious shopper behavior, including card testing and bot-driven checkout attempts. The consulted documentation currently limits availability to WordPress.com stores running on WP Cloud. If your store is hosted elsewhere, verify that the feature is actually offered in your environment before planning around it; use the CAPTCHA, gateway, rate-limiting, and other controls available to your installation.
Regardless of hosting, WooCommerce cautions that no fraud-prevention system can identify every fraudulent transaction. Treat the feature as one layer in a broader payment and account-security program.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
A practical operating checklist
- Record repeated emails, domains, IPs, phones, locations, payment methods, and order velocity from real incidents.
- Enable either Cloudflare Turnstile or Google reCAPTCHA v2 on every checkout path customers can use.
- Turn on risk scoring and observe decisions before enforcing aggressive automatic blocks.
- Set order and payment-attempt limits from your store’s measured normal behavior.
- Add narrow blacklist rules for confirmed abuse; add specific whitelist exceptions for trusted shoppers.
- Enable Checkout Block and Store API rate limiting when direct API traffic is involved.
- Keep gateway fraud, authorization, and chargeback controls active.
- Test guest, logged-in, mobile, block, classic, headless, and integration flows after each change.
- Review held and blocked orders, false positives, API throttles, and customer complaints on a defined schedule.
- Log every rule change and remove or narrow rules that no longer match evidence.
Bottom line
The reliable way to stop WooCommerce spam orders is a staged defense: CAPTCHA to reduce automated form abuse, risk scoring to observe suspicious behavior, store-specific velocity limits to slow card testing, narrow blacklists and whitelists to control known patterns, and Store API rate limiting for bots that bypass the page. Validate every checkout path and leave gateway fraud controls in place, because blocking spam orders is an ongoing operational process rather than a one-time switch.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

