What this solution does
Advanced 3-in-1 Captcha
A module for the 1C-Bitrix platform that replaces the standard image-based captcha with widgets from external providers.
Supported providers:
Yandex SmartCaptcha;
Google reCAPTCHA v2;
hCaptcha.
How it works
The standard Bitrix verification system remains active. The module replaces the HTML markup with the widget of the selected provider. Upon form submission, the token is verified on the provider's server, and the resulting captcha code is written to the captcha_word variable. The standard Bitrix component then validates the code using its usual method and allows the form to be submitted.
This approach allows the module to work on all pages with the standard captcha enabled without modifying component code. Forms that do not use the standard captcha are left untouched.
Features
Individual settings for each site with access control based on user groups.
Selection of the provider and entry of unique access keys for each service.
Yandex SmartCaptcha settings: test mode, WebView mode, invisible captcha, position and hiding of the notification block, custom notification text.
Theme and size configuration for reCAPTCHA and hCaptcha widgets.
Layout parameters: assignment of a CSS class for the captcha block, fixed block height (to preserve a layout designed for a 180x40 pixel image), and hiding of unnecessary elements within the block.
The module supports two operating modes: strict mode, which rejects forms lacking a token, and soft mode, which returns the default captcha if the widget fails to load. Users can configure custom text messages for errors such as 'captcha not passed' and 'verification server is not responding', replacing the default Bitrix notifications across all modules and components. The list of keys for replacement can be extended with messages from a custom template. A URL mask is also available to specify where message replacement should not be applied.
In the event of a verification server failure, the module implements a pause to prevent repeated timeouts during every form submission. The settings include a feature to test connectivity with the provider's service directly. The module correctly handles forms submitted via AJAX.
System requirements include PHP version 8.2 or higher and the main Bitrix module version 24.0.0 or higher. The default captcha must be enabled in forms requiring protection. Valid keys from the selected provider are required; these are issued in the provider's console, and the module does not contain its own keys.
The module is incompatible with other captcha solutions as they modify the same markup. If conflicting modules are detected, the settings page displays a warning. Verification errors are logged in the Bitrix event log with the event type 'Captcha: verification error' (ALGOMIX_SMARTCAPTCHA_ERROR).
When needed, General iT can implement “Advanced 3-in-1 Captcha: Yandex, reCAPTCHA, hCaptcha”, configure the module and verify it against the current website setup.