Blueforce Age Check For WooCommerce Wordpress Plugin - Rating, Reviews, Demo & Download
Plugin Description
This plugin asks for a date of birth where the order is placed and rejects the order on the server if the customer is below your minimum age. It also covers express payment buttons, which skip the checkout form, and it reports every order that came in without a valid age check.
What it is, and what it is not. The plugin checks a date of birth that the customer enters. It assists your shop with its age control. It does not verify identity documents and it does not guarantee legal compliance. You remain responsible for meeting the rules that apply to your products and your country. If you need document verification, use a dedicated identity service.
Why another age plugin
Most age plugins show a popup when someone opens the shop. A popup is answered with one click and has no connection to the order. This plugin works at the other end: at the moment the order is placed, on the server.
- No popup. The date of birth is one field in the checkout.
- Checked on the server. Changing the field in the browser does not help. Orders sent directly to the WooCommerce Store API are rejected as well.
- Express payment buttons are covered. Buttons on product and cart pages skip the checkout form. The plugin asks for the date of birth right next to them, checks it on the server and only then lets the payment through.
- A safety net. Payment plugins change, and an update can bring a new way to order. Every binding order without a valid age check gets an order note, a log entry and an email notice, so you can clarify the age before you ship.
Features
- Classic checkout and block checkout
- Minimum age of your choice
- Your choice of what is stored: by default only the result and the age at the time of the order, optionally the full date of birth
- The date of birth is never saved to the customer account
- Age check result shown on the order screen
- Site Health tests: is the check active, do the payment plugins still fit, has the safety net reported anything in the last 30 days
- Personal data export and erasure, with a suggested text for your privacy policy
- HPOS compatible
- Translation-ready. German is included for Germany (informal and formal) and Switzerland
- No external services, no tracking, no calls to other servers
Supported express payment plugins
The plugin asks for the date of birth next to the express buttons of these plugins and rejects their orders without a confirmed age:
- WooCommerce Stripe Payment Gateway (wallet and one-click buttons on product and cart pages)
- WooCommerce PayPal Payments
- TWINT for WooCommerce (TWINT Express Checkout)
The date of birth is asked on classic product and cart pages. At checkout, the express buttons above the form stay locked until the date of birth field in the form holds a valid date. In the cart block and the mini cart the buttons are shown without the question, and orders from there are rejected until the age is confirmed elsewhere.
Express buttons of other plugins are not unlocked by this plugin. Their orders are rejected where they use the standard WooCommerce order routes, and reported by the safety net otherwise. Developers can add their own adapter with the filter bf_agecheck_express_adapters.
A note on honesty: payment plugins are third-party code. One of the supported plugins can create an order on a route of its own that bypasses the standard WooCommerce order routes. For that route the plugin relies on hooks of the payment plugin. If those hooks change, the Site Health test tells you, and the safety net still reports such orders.
For developers
bf_agecheck_min_agechanges the minimum age.bf_agecheck_requires_checkswitches the check off, for example on a staging site. Answer it the same way in every context.bf_agecheck_customer_messagechanges the customer messages.bf_agecheck_date_formatsadds accepted date formats.bf_agecheck_send_alertsuppresses the email notice, for example on a staging site.bf_agecheck_classic_field_hookmoves the field in the classic checkout.bf_agecheck_express_adaptersandbf_agecheck_express_selectorsadd or adjust support for express payment plugins.bf_agecheck_move_paypal_buttonkeeps the PayPal button on the product page where it was.bf_agecheck_binding_statusesandbf_agecheck_monitor_ordercontrol which orders the safety net watches.bf_agecheck_legacy_meta_keyslists meta keys of an earlier solution, so existing orders keep their age.
This plugin is an independent project by Blueforce Digital Solutions. It is not affiliated with Automattic, WooCommerce or any payment provider. Product names are used only to describe compatibility.
Screenshots
The date of birth field in the checkout.
The date of birth next to the express payment buttons on a product page.
The settings.
The age check result on the order screen.
The Site Health tests.

