
WebDecoy Is Now on WordPress.org: One-Click Bot Protection
WebDecoy is now live on the WordPress.org plugin directory. One-click install, automatic updates, and 100% local bot protection with no API key required.
bot-detectionSee WebDecoy refuse a repeated failed-order pattern on classic and Blocks checkout, then install the free WordPress plugin and test your own store.
Published · Updated
A string of failed WooCommerce orders can be the first visible sign of checkout automation. Rejecting one payment does not necessarily stop the next attempt.
We tested whether WebDecoy could refuse a repeated failed-order pattern at checkout, then checked whether a separate normal test order still completed. We ran the test independently against classic shortcode checkout and the Store API used by Checkout Blocks.
Both paths refused attempt four after three rapid synthetic failed orders. Normal offline test orders completed on both paths.
Install WebDecoy Bot Detection from WordPress.org to try local bot detection and checkout protection. No WebDecoy account is required for local protection.
Watch the 48-second checkout test on YouTube.
The demonstration uses an isolated store, fake billing details and a local gateway that always returns a failure. It never contacts a payment processor. These are synthetic failed orders, not real card authorizations.
| Test condition | Configuration |
|---|---|
| Plugin | WebDecoy 2.10.6 |
| Store | WooCommerce 11.2.1 on WordPress 7.1 / PHP 8.3 |
| Checkout paths | Classic shortcode and Checkout Blocks Store API, tested independently |
| Failure sequence | Three separate guest carts, one $3 virtual product per order, rapid submissions from the same test IP |
| Client | Ordinary browser user-agent; no special bot name needed |
| Payment | Local synthetic decline gateway, with no payment processor |
| Enforcement | Monitor mode off; Protect Checkout on; local enforcement available |
| Normal-order check | Separate test client and an offline test gateway; no money collected |
We cleared the disposable lab’s checkout-attempt history between checkout paths so the first run did not prime the second. We kept the standard protection thresholds.
| Step | Classic checkout | Checkout Blocks Store API |
|---|---|---|
| Attempts 1–3 | Reached the local decline gateway; returned its synthetic failure | Reached the local decline gateway; returned its synthetic failure |
| Attempt 4 | Checkout refused with a JSON failure result and “Suspicious checkout activity detected.” | Checkout refused with HTTP 403 and webdecoy_carding |
| Separate normal test order | Accepted | Accepted; order entered Processing |
The protocol matters: classic checkout reports its refusal inside the checkout JSON response; the Blocks API returned HTTP 403. They do not return the same response format.
WebDecoy also recorded a Woocommerce card testing detection in its WordPress dashboard. That source name describes the detection category. The test itself exercised a synthetic failed-order pattern.

Actual isolated test store. Dashboard totals include setup and repeat verification runs; they are not customer traffic or an accuracy measurement.
The local WooCommerce checks use recent unsuccessful checkout attempts associated with the client IP. Several rapid, low-value failures across distinct orders provide more evidence than a single failed purchase.
This is useful application context, but it has practical limits. A shared network can contain several customers. An attacker can rotate IP addresses. A legitimate customer can retry a payment. Treat checkout-history checks as one layer alongside your gateway’s fraud controls and the rest of your site’s bot defenses.
A checkout refusal is separate from a sitewide IP ban. The result shown here is refusal of the checkout attempt, not a claim that every subsequent request from that address was blocked.
For the complete plugin installation walkthrough, see WebDecoy for WordPress. The plugin’s local protection does not require a WebDecoy account. Cloud connection is optional.
WooCommerce’s Store API card-testing guidance explains why checkout endpoints deserve specific attention. Its Checkout Blocks protection integration guide is also useful when assessing whether a protection plugin covers the checkout you use.
Continue using the fraud controls appropriate to your gateway, including its supported verification and test tools. A WordPress plugin does not replace payment-provider controls.
Check gateway logs and WooCommerce order outcomes together. A checkout refusal should prevent another payment attempt on the tested path; a later payment decline means the request reached the gateway. Those are different outcomes.
It verifies that the tested WebDecoy release can recognize this particular local failed-order pattern and refuse another checkout on classic and Blocks paths. It also verifies that separate normal offline test orders completed in the same lab.
It does not establish a detection rate, production conversion impact, resistance to proxy rotation, or compatibility with every theme, payment gateway and checkout extension. The successful orders used an offline gateway, so they do not validate a live card-payment integration.
Install WebDecoy, inspect your bot traffic, and test your own checkout.
WebDecoy has classic checkout validation and WooCommerce Store API checkout checks. In an isolated test with WebDecoy 2.10.6 and WooCommerce 11.2.1, each path refused a fourth checkout after three rapid, low-value synthetic failed orders from the same test IP. Separate normal offline test orders completed on both paths. Test your own checkout and gateway integrations before enforcing.
No. Local WordPress protection works without a WebDecoy account or API key. WebDecoy Cloud is optional for additional features and centralized visibility.
No. It verifies one synthetic failed-order pattern and checkout refusal on two checkout paths. No real card or payment processor was used. IP rotation, shared networks, different gateways and legitimate retries require separate testing.
Before 2.10.6, classic checkout callbacks could be skipped when WebDecoy loaded before WooCommerce. Version 2.10.6 registers these callbacks after all plugins load. Update before using the classic checkout test.

WebDecoy is now live on the WordPress.org plugin directory. One-click install, automatic updates, and 100% local bot protection with no API key required.
bot-detection
A technical walkthrough of WebDecoy's WordPress bot detection engine. Scoring, proof-of-work, behavioral analysis, and MITRE ATT&CK path mapping explained.
bot-detection
Install WebDecoy, inspect bot detections in WordPress, choose your AI crawler policy, and verify protection with a controlled canary test.
bot-detectionLike this post? Share it with your friends!
Get a personalized demo from our team.