Captcha for WooCommerce


“Completely Automated Public Turing test to tell Computers and Humans Apart”.

I have developed a free WordPress plugin to implement Captcha for WooCommerce forms for websites that use Captcha by BestWebSoft. This interface operates on WooCommerce login, registration, checkout payment and password reset forms.

I use Captcha by BestWebSoft on this website to thwart automated bots that attempt to register and use WooCommerce forms.

Unfortunately, with the BestWebSoft captcha solution the ability to use Captcha on WooCommerce forms is a paid feature.

Being creative, I developed and released a WordPress plugin to freely implement Captcha for WooCommerce forms to bypass this paid feature.

It was relatively simple to embed the BestWebSoft captcha solution inside a new wrapper plugin and use their custom form interface to easily implement a free WooCommerce interface.

No changes are made to Captcha by BestWebSoft. This plugin will link to your existing Captcha by BestWebsoft version if you have it installed. If you do not have it installed it will use an unmodified GPLv2 embedded version of the software that is bundled and distributed with this plugin.

Use the Captcha settings found in the WordPress administrator menu to configure Captcha for WordPress. If WooCommerce is installed use the Captcha settings under the WooCommerce menu to configure Captcha for the WooCommerce forms.

The code I used was all released under a GPLv2 license. As such, the GPLv2 version of Captcha by BestWebSoft and my plugin are free software; you or I can redistribute it and/or modify it under the terms of the GNU General Public License, version 2, as published by the Free Software Foundation.

I would like to credit Agbonghama Collins for the original idea to implement Google’s Captcha into WooCommerce and give thanks to BestWebSoft for developing a fine Captcha solution.

Last updated: May 24, 2019.
If you like my work, please send a small donation.
=== Captcha for WooCommerce ===
Contributors: William Miles
Donate link:
Tags: woocommerce, form, security, login, registration, checkout, payment, comments, spam, captcha, recaptcha, spammers, bot, security, bots
Requires at least: 4.0
Tested up to: 5.2.1
License: GPLv2 or later
License URI:

Protect WooCommerce login, registration, checkout payment and password reset form against spam when using Captcha by BestWebSoft.

== Description ==

A simple plugin for adding CAPTCHA to the WooCommerce login, registration, checkout payment and password reset form to protect against spam.

This plugin integrates WooCommerce with Captcha by BestWebSoft.

### Features

> * Compatible with WooCommerce:
> * Login form
> * Register form
> * Lost password form
> * Checkout billing form

* Option to set the WooCommerce CAPTCHA error message.
* Option to set the WooCommerce CAPTCHA form text label.
* No need to reference remote servers for captcha evaluation.
* No Javascript is required for captcha evaluation.
* Includes a GPLv2 version of Captcha by BestWebSoft

== Installation ==

Install Captcha for WooCommerce just like any other WordPress plugin.

1. Download the plugin zip file from my website (
2. Extract the zip file.
3. Upload the ‘woocommerce-captcha’ folder to your WordPress plugins directory on your webserver.
4. Log in to your WordPress site as an administrator.
5. Go to the Plugins – Installed Plugins menu list.
6. Activate the Captcha for Woocommerce plugin.

Navigate to your WordPress “Plugins” page, inside of your WordPress dashboard, and follow these instructions:

1. In the search field enter **Captcha for WooCommerce**. Click “Search Plugins”.
2. Select **Captcha for WooCommerce** and click either “Details” or “Install Now”.
3. Once installed, click “Activate”.

== Frequently Asked Questions ==

  1. = Do I need to install Captcha by BestWebSoft? =

    No. This plugin already includes a GPLv2 version of Captcha by BestWebSoft.

  2. = I already have Captcha by BestWebSoft installed. Do I need to remove it? =

    No. If Captcha by BestWebSoft is installed when you activate this plugin then this plugin will use it and your captcha should still work. However, if the Captcha for WooCommerce does not work then see the following question.

  3. = I installed or upgraded Captcha by BestWebSoft and my Captcha for WooCommerce no longer works. What should I do? =

    Remove or deactivate the version from BestWebSoft that you installed or upgraded. This plugin will now use the embedded GPLv2 version of Captcha by BestWebSoft.

    You can always check the Captcha for WooCommerce settings to see if the plugin is using the embedded version of Captcha. If the setting for ‘Using Embedded Version’ does NOT show a release number then the plugin is linking to the installed version of Captcha.

  4. = But I want or need the latest features in Captcha by BestWebSoft and your embedded version is old. What should I do? =

    Contact me through my [website] ( Ask that I integrate Captcha for WooCommerce with the current release of Captcha by BestWebSoft. It would help if you offered a [donation] (

    Or, deactivate this plugin and then install and activate the latest Captcha by BestWebSoft. Then, reactivate this plugin. The Captcha for WooCommerce plugin will then use the new Captcha by BestWebSoft. Sadly, if Captcha for WooCommerce no longer works, please see the previous question.

  5. = Do I need WooCommerce for this plugin to work? =

    No. If you don’t have WooCommerce installed then this plugin is equivalent to the Captcha plugin on WordPress.

  6. = Do I need to purchase the Pro version of Captcha by BestWebSoft to use the WooCommerce features? =

    No. Instead, if you find this free plugin useful, send me a [donation] (

  7. = I have already paid for the Pro version of Captcha by BestWebSoft. Will your Captcha for WooCommerce still work? =

    If you have the Pro version installed then you don’t need this plugin. The Pro version of Captcha by BestWebSoft allows you to implement the captcha in WooCommerce forms.

  8. = Can I use the captcha on WordPress comments or non-WooCommerce forms? =

    Yes. This plugin contains a fully functional release of Captcha by BestWebSoft. Refer to the BestWebSoft documentation.

  9. = But the captcha doesn’t work. What should I do? =

    The captcha is being generated with Captcha by BestWebSoft. If you are having problems with the captcha then please refer to the BestWebSoft documentation.

  10. = The CAPTCHA text label is not positioned properly in my WooCommerce forms. Can I style it? =

    Yes. Add CSS to your theme. Here is the styling I use.

    .wc-captcha {
        padding: 1.618em 0;
    .wc-captcha label {
        cursor: pointer;
        display: block;
        font-weight: 700;
        margin: 0 0 1em;
  11. = I see a 404 popup message when I submit the form. =

    Do not use or set the BestWebSoft Captcha option for Advanced Protection. This option invokes AJAX to rewrite the Captcha after the page is loaded. This gives a 404 alert error if the page is cached with a plugin such as W3 Total Cache. This failure typically occurs after 24 hours when the WordPress nonce expires.

    It is recommended that WooCommerce account pages or cart or checkout pages never be cached.

  12. = The CAPTCHA can be broken. I still get spam. =

    Unfortunately, captcha is not perfect. Computers are smart today, as are bots. There are also humans who are paid to create fraudulent accounts on websites. Captcha cannot fool humans.

  13. = I can’t log in to my website! It’s all your fault! =

    That’s not likely true, but …

    1. To deactivate the plugin, log in to your webserver.
    2. Navigate to the wordpress/wp-content/plugins directory.
    3. Rename or delete the ‘woocommerce-captcha’ plugin directory.

== Screenshots ==

1. Plugin general settings.
2. CAPTCHA in WooCommerce login form
3. CAPTCHA in WooCommerce password reset form
4. CAPTCHA in WooCommerce checkout payment form
5. CAPTCHA error in WooCommerce login
6. WooCommerce enable register setting.
7. CAPTCHA in WooCommerce register form

== Changelog ==
= 5.0.5 =
* Includes Captcha by BestWebSoft v5.0.5 as a bundled distribution.

= 5.0.3 =
* Includes Captcha by BestWebSoft v5.0.3 as a bundled distribution.

= 5.0.2 =
* Includes Captcha by BestWebSoft v5.0.2 as a bundled distribution.
* Adopt version numbers as used by BestWebSoft

= 2.3 =
* Fix the Woocommerce Lost Password error – user can’t change password.
* Update message to indicate when installed Captcha is incompatible.

= 2.2.1 =
* Dynamically determine embedded BestWebSoft version when plugin activated.

= 2.2 =
* Includes Captcha by BestWebSoft v4.3.1 as a bundled distribution.

= 2.1.1 =
* Remove Ncr code in login.php

= 2.1 =
* Includes Captcha by BestWebSoft v4.3.0 as a bundled distribution.

= 2.0 =
* Includes Captcha by BestWebSoft v4.2.9 as a bundled distribution.

= 1.0 =
* first release version