STM Barrierelotse is for shops that sell under the German Accessibility Improvement Act (BFSG / Barrierefreiheitsstärkungsgesetz, Germany’s implementation of the European Accessibility Act). It does three things, and it is honest about the line between them. 1. It checks — the real buying journey, n
PricingFree downloadThe WordPress.org download is free. Pro versions, add-ons or external services may cost extra.
CompatibilityRequires WordPress 6.5 and PHP 7.4.
SourceWordPress plugins · Nov 14, 2026
01 / Source details
Aboutthistool.
STM Barrierelotse is for shops that sell under the German Accessibility Improvement Act (BFSG / Barrierefreiheitsstärkungsgesetz, Germany’s implementation of the European Accessibility Act). It does three things, and it is honest about the line between them.
1. It checks — the real buying journey, not a list of pages.
A product goes into the cart, and cart and checkout are then measured WITH content, including the error messages a customer meets when a required field is left empty. A page-list scanner checks an empty checkout, which is a different page. Classic checkout and the checkout block both.
The pages it visits are drawn from what a shop actually is: the front page, the shop page, the biggest category listings, one product of each kind (simple, variable, on sale), the legal pages, a search with a real product word, the 404 page — and the cookie notice, as a visitor meets it. Before the check starts it says in words what it is about to look at.
Optionally the four most important pages a second time at the width of a phone.
Your own cart is put aside before the check and put back afterwards, and no order can be placed while a check runs — the checkout step presses the order button on purpose.
2. It generates — the information § 14 BFSG requires.
The four mandatory elements of Annex 3, including the responsible market-surveillance authority, as a page of your own or as a block for your terms and conditions.
Element (c) — how you address the requirements — is filled from real data: the measuring stick, the date and size of the last check, and every guided manual check you assessed as met, by name and date.
Required fields that are empty stop the generator. This plugin publishes no placeholder prose in your name.
3. It documents — so the work can be shown, not asserted.
A measures log that writes itself: every check, every fix switched on, every manual verdict, every publication of your information — with date and person.
A finding can be marked as fixed, handed over or deliberately accepted; the next check holds that claim against what it measures and records the contradiction if there is one.
Check reports are kept, comparable and printable, with an identity line on paper naming shop, report number, scope and measuring stick.
Where automation ends, it says so. Automated rules reliably reach only part of WCAG 2.1 AA (EN 301 549); roughly two thirds of the criteria need a person. Those are shown as unchecked rather than quietly counted as met, and the ones that matter most on a buying journey come as guided checklists — can an order be reviewed and corrected before it binds, do the error messages help, does the account route work with a keyboard.
It is not an overlay. No toolbar is injected, no widget. The fixes it offers are precise, off by default, and each one names exactly what it changes.
Everything runs locally. No cloud service, no external scan API, no telemetry, no customer data leaving your server.
Auf Deutsch
STM Barrierelotse ist für Shops, die unter das Barrierefreiheitsstärkungsgesetz fallen. Er tut drei Dinge:
Prüfen: die ECHTE Kaufstrecke — ein Produkt liegt im Warenkorb, Warenkorb und Kasse werden MIT Inhalt gemessen, samt der Fehlermeldungen bei leerem Pflichtfeld. Dazu ein Seitenplan aus dem, was ein Shop wirklich ist, und der Cookie-Hinweis, wie Besucher ihn antreffen. Während einer Prüfung kann keine Bestellung ausgelöst werden.
Erzeugen: die Informationen nach § 14 BFSG (Anlage 3) samt zuständiger Marktüberwachungsstelle — als Seite oder als AGB-Baustein. Pflichtfelder, die leer sind, halten den Generator an: In Ihrem Namen wird kein Platzhaltertext veröffentlicht.
Dokumentieren: ein Maßnahmenprotokoll, das sich von selbst schreibt, Befund-Status mit Bestätigung durch die nächste Messung, und aufbewahrte, druckbare Berichte.
Wo die Automatik endet, sagt er es. Etwa zwei Drittel der Kriterien kann nur ein Mensch beurteilen; sie stehen als ungeprüft da, statt stillschweigend als erfüllt zu zählen. Kein Overlay, kein Widget, kein Cloud-Dienst.
Privacy
This plugin stores no personal data of your visitors and sends nothing anywhere.
What it stores in your own database: which pages were checked and when, which rules passed or failed, a short markup excerpt of each element a rule failed on, your verdicts on the guided manual checks, and the measures log. Two of those touch people, and both are handled deliberately:
Markup excerpts have the values of form fields removed before they are stored: the value attribute, every data- attribute, the content of a textarea and the text of a selected option. The checkout renders the signed-in administrator’s own name and address into the markup, and a report that carried those into a support message would be the one path by which personal data could leave a server this plugin promises never to leave.
The my-account screens are never checked automatically. The check runs in your own logged-in session, so those pages would render your name, your address and your orders into the stored excerpts. They belong to the guided manual checks, which you carry out signed out in a second browser.
Manual verdicts and log entries record WHICH user account made them (the user id and the display name), because a documented process has to say who did what. That is the same data WordPress already keeps for every post and comment.
Deleting the plugin keeps all of it unless you tick “remove all data on uninstall” beforehand.
Credits
This plugin bundles the axe-core accessibility engine by Deque Systems, Inc., unmodified, under the Mozilla Public License 2.0.
SHA-256 of the bundled assets/axe/axe.min.js: 880970c081707360e64f34cea25ff91892f5bc95675b0776925b9709dd8a68bb
Source Code Form of that exact build: https://github.com/dequelabs/axe-core/tree/v4.10.3
As MPL-2.0 § 3.2 requires: the Source Code Form of the bundled file is the one linked above, at no charge.
The build refuses to make a release package when that fingerprint does not match — an engine that changed unnoticed is an engine whose results nobody can trace back to a published version. The license text ships in assets/axe/LICENSE.txt. German rule descriptions come from axe-core’s own locale files. All checking happens locally; the engine is never loaded from a CDN.
See it in action
Screenshots & previews.
The dashboard: one figure for how the shop stands, and beside it what it is made of — findings still open, how many are critical, how many serious, and how much of the human judgement is done. Underneath, the date of the run those numbers come from.All fifty criteria of WCAG 2.1 AA at a glance, each with its state. Thirty-four of them sit there unchecked because only a person can judge them; not one is quietly counted as met.A report. Findings are grouped by rule and then by colour pair: the cause in plain words, the darker value to copy, a correction the plugin can apply itself, and every occurrence with the page it sits on and the ratio measured there.The guided manual checks: the criteria no software can judge, each with the steps to check it, a verdict, and a note that goes into the record.The measures log. It writes itself — every run, every correction switched on or off, every judgement — with who did it and when, and it downloads as a table.
02 / Source details
Gettingstarted.
01Install and activate the plugin. It creates its own tables and adds a “Barrierelotse” entry to the admin menu. Nothing on your site changes and nothing is added to your pages.
02Open Barrierelotse → Dashboard and press “Start full check”. The check runs in this browser tab, in your own logged-in session: leave the tab open and in the foreground until it finishes — about five to seven minutes for a normal shop.
03Work through the report. Every group says what is wrong, what usually causes it, and which page each occurrence sits on.
04Under Legal, fill in what the accessibility statement needs and publish it. Required fields that are empty stop the generator on purpose.
05After a repair, measure the rule again from its card, or run the next full check. The measures log records every step with date and person.
WooCommerce is optional. Without it everything works except the buying-journey part of the check, which stays dormant.
03 / Source details
Frequently asked questions.
Does this plugin make my shop BFSG-compliant?
No — and be wary of any tool that promises that. Automated checks reliably cover only a part of the WCAG 2.1 AA requirements; the rest needs human judgment. This plugin automates what can be automated, guides you through what cannot, generates the required accessibility statement, and documents all of it. Whether the result meets the legal bar for your specific shop is an assessment the law leaves to you and, where needed, your legal counsel.
How long does a check take, and does it slow my shop down?
A full check of a normal shop takes about five to seven minutes and visits up to forty pages (you can lower that). It runs in YOUR browser tab, in your own logged-in session, and loads each page once — the same load a visitor causes. Your shop keeps serving customers throughout; nothing is queued on the server and nothing runs in the background afterwards. Close the tab and the check stops, keeping everything measured so far.
Do I have to keep the tab open?
Yes, and in the foreground. A browser slows down tabs in the background so far that measurements become unreliable, so the check pauses while you are elsewhere and carries on when you come back. It tells you that it did.
Which browser do I need?
Any current Chrome, Edge or Firefox. Safari works too. The check needs nothing installed and no extension.
Can I run it on a staging site?
Yes, and it is a good idea before a theme update. Results are stored per site, so a staging copy keeps its own history; nothing is shared between installations.
What does it store, and how do I get rid of it?
Check reports, findings, the rule outcome per page, the state you recorded for a rule and the measures log live in five tables of your own database. Reports are trimmed to the number you choose (a hundred by default, and a report you mark to keep is never trimmed). Deleting the plugin leaves everything in place unless you tick “remove all data on uninstall” in the settings first — the measures log is evidence, and evidence that vanishes with an uninstall is worth nothing.
Do I need WooCommerce?
No. The site scan, the quick-check and the accessibility statement generator work on any WordPress site. Only the buying-journey scan (cart and checkout with content) needs WooCommerce and simply stays dormant without it.
Which standard does it check against?
WCAG 2.1 level AA — today’s measuring stick for BFSG services via EN 301 549. The plugin’s architecture is profile-based, so the successor standard (WCAG 2.2 AA) can be added as a profile once the new edition of EN 301 549 is officially referenced.
Is this an accessibility overlay or widget?
No. Overlays add a toolbar on top of a page without changing the underlying code; accessibility bodies broadly agree they do not achieve conformity, and their use has drawn regulatory action. This plugin works on the source of the problem: it finds issues in the rendered page, applies precise opt-in fixes, and tells you plainly what remains to be fixed by hand.
Does any data leave my server?
No. Scans run locally in your own browser session against your own site. The plugin calls no external scan service and sends no telemetry. Where a report offers to ask this plugin’s maker for help with a finding, it prepares a message in YOUR OWN email program — you read it and send it yourself; the plugin transmits nothing anywhere.
Works this with Germanized or German Market?
Yes, by design — the plugin checks the checkout those plugins render instead of replacing anything.
FinderPress Media Auditor helps site administrators scan for broken images, missing Media Library files, unreachable media URLs, and other media issues across WordPress content. Use it to audit images, video, audio, PDFs, featured images, and attachment files without sending scan data to an external
The Accepted Payment Methods plugin is a straightforward, lightweight solution that enhances your website by displaying visually appealing icons of the payment methods you accept. This plugin is ideal for a variety of websites, including e-commerce platforms, service-oriented websites, and informati