EAA compliance checklist for e-commerce: the 24 points to check
In short
To comply with the European Accessibility Act (in force since 28 June 2025), an online store must meet the EN 301 549 standard, which points to WCAG 2.1 level AA, across the whole purchase journey, and publish an accessibility statement. The points that most often fail:
- insufficient colour contrast on prices, buttons and labels;
- product images with no text alternative;
- a checkout that can't be used with the keyboard or that gives no clear error message;
- a missing accessibility statement (the easiest breach for a regulator to spot).
The checklist below groups 24 concrete checks by stage of the journey. An automated scan catches some of them in seconds; the rest are checked by hand.
You know your store has to be "accessible", but concretely: what do you check? This checklist turns the EAA's legal requirements into checkable points, organised around a real customer journey — from the homepage to payment — then adds the documentation duty that weighs just as much as the technical work.
First, the framework: what the law actually requires
The European Accessibility Act (Directive (EU) 2019/882) requires, since 28 June 2025, that e-commerce services aimed at consumers be accessible. The directive is applied through each EU country's own transposition law, which sets the competent authority and the sanctions — but the technical standard is the same everywhere: the harmonised EN 301 549 standard, which for the web points to the Web Content Accessibility Guidelines (WCAG) 2.1, level AA. So it is this grid — not a subjective judgement — that a regulator checks against. The checklist follows its most relevant criteria for an online store.
The checklist, step by step
1. Navigation & general structure
- The whole store is usable with the keyboard alone (Tab / Shift+Tab / Enter), without a mouse, including drop-down menus and the mini-cart. WCAG 2.1.1Many users don't use a mouse; a menu that only opens on hover shuts them out.
- The element that has focus is always visible (clear outline), never hidden behind a sticky bar. WCAG 2.4.7
- A skip link ("Skip to content") lets users jump past the menu at the top of the page. WCAG 2.4.1
- The page has a logical heading hierarchy (a single H1, consistent H2/H3) and a declared language (
lang). WCAG 1.3.1 · 3.1.1 - At 200% zoom and on mobile, content isn't cut off; no forced horizontal scrolling. WCAG 1.4.4 · 1.4.10
2. Colour & readability
- Body text has a contrast ratio of at least 4.5:1 against its background (3:1 for large headings). Watch out for light greys, struck-through prices and "on sale" labels. WCAG 1.4.3
- Buttons, fields and icons have a contrast of at least 3:1 on their outlines/states. WCAG 1.4.11
- Information is never carried by colour alone (e.g. "in stock" in green / "out of stock" in red with no text or icon). WCAG 1.4.1
- Links within a paragraph are distinguishable by something other than colour alone (underline, bold…). WCAG 1.4.1
3. Catalogue & product page
- Every product image carries a useful text alternative ("White leather trainers, side view"), and purely decorative images an empty
alt. WCAG 1.1.1 - Link and button labels are explicit out of context: "Add to cart — Blue linen dress" rather than ten identical "Buy" buttons. WCAG 2.4.4 · 2.4.6
- The variant selector (size, colour) is a real, labelled form control, operable with the keyboard. WCAG 1.3.1 · 4.1.2
- Tooltips / size charts that appear on hover stay reachable by keyboard and don't vanish too quickly. WCAG 1.4.13
- Videos have captions; important audio has a transcript. WCAG 1.2.2 · 1.2.3
4. Cart, account & checkout
- Every form field (shipping, payment) has a visible, associated label — not just placeholder text that disappears when you type. WCAG 3.3.2 · 1.3.1
- Input errors are flagged in text, identify the field concerned and suggest a correction ("The postcode must be 5 digits"). WCAG 3.3.1 · 3.3.3
- For an order, the user can review and correct their details before final confirmation (summary, confirmation step). WCAG 3.3.4
- The expected input is guessed by the browser (autocomplete for name, email, address via the
autocompleteattribute). WCAG 1.3.5 - Dynamic messages ("Added to cart", "Invalid promo code") are announced to screen readers (live region). WCAG 4.1.3
- No step has a short time limit without a way to extend it (cart, payment session). WCAG 2.2.1
5. Interactive components & content
- Carousels, modals and tabs are keyboard-operable, announce their role/state and trap focus correctly inside modal windows. WCAG 4.1.2 · 2.1.2
- Auto-playing animations and scrolling can be paused; nothing flashes more than 3 times per second. WCAG 2.2.2 · 2.3.1
- Icon-only controls (magnifier, heart, cart) have an accessible name (
aria-labelor hidden text). WCAG 4.1.2
6. Documentation duty — often forgotten
- An accessibility statement is published, with the exact conformity status (fully / partially / not compliant), the known non-conformities and the feedback / enforcement routes. EAA · EN 301 549It is the easiest breach for a regulator to spot — and in France alone it carries up to €25,000.
- The statement is easy to find (footer link) and dated; a contact / accessibility-feedback channel is given. EAA
Same standard, different fines: what's at stake by country
The technical bar is identical across the EU (EN 301 549 / WCAG 2.1 AA). What changes from one country to the next is the form of the transposition law, the competent authority and the level of fines. A few reference points, taken from each country's own transposition:
| Country | Transposition | Maximum fine |
|---|---|---|
| Italy | D.Lgs. 82/2022 (art. 24) | €5,000–€40,000 |
| France | Ordinance 2023-859 | up to €50,000 |
| Germany | BFSG (Barrierefreiheitsstärkungsgesetz) | up to €100,000 |
| Spain | Ley 11/2023 | up to €1,000,000 |
The takeaway: the checks below are the same wherever you sell — so a store that fixes them once is compliant across every EU market at once. Only the accessibility document (RGAA template in France, "Informationen zur Barrierefreiheit" under §14 BFSG in Germany, etc.) is country-specific.
How to use this checklist
Work in the order of the customer journey: open your store, put the mouse away, and try to go from the homepage to payment with the keyboard alone. You'll already have spotted a good part of points 1, 4 and 5. Then check contrast (group 2) with a measuring tool, then images and labels (group 3). Finish with the documentation duty (group 6), the quickest to settle.
Many of these points (contrast, image alternatives, field labels, structure) are detectable automatically. A scan gives you, in seconds, a quantified and located list — the exact CSS selectors to fix — so you don't start from zero.
Run the automated scan of your store
DeclareAccess scans one page of your site against WCAG 2.1 AA, sends you a quantified report of the non-conformities (with the elements concerned), then generates the ready-to-publish accessibility statement in the applicable template — English, French (RGAA), Italian, Spanish or German (BFSG). Free audit, no credit card.
WCAG report by email within 1 business day.
Got it. Your audit request is recorded — you'll receive your WCAG report by email within 1 business day.
Frequently asked questions
How many criteria do I really have to meet?
The legal reference is the EN 301 549 standard, which points to WCAG 2.1 level AA — 50 success criteria in total (levels A and AA). This checklist covers the most decisive ones for an online store. Reaching full level AA requires, on top of the automated scan, a manual review (keyboard navigation, screen readers, the full journey).
Is an automated tool enough to prove my compliance?
No. Automated tests catch 30–50% of the problems (contrast, missing alternatives, labels, structure). Criteria tied to meaning, logical order or real keyboard and screen-reader use need a human check. A scan is an excellent, honest starting point, not a certificate of full compliance.
Where do I start if my budget is limited?
Start with high-impact, low-cost fixes: colour contrast, form-field labels, text alternatives, keyboard navigation in the checkout. Then publish the accessibility statement — it's mandatory, quick to produce, and the breach most easily penalised (up to €25,000 in France).
Do I have to be 100% compliant to be in order?
The law requires compliance but recognises "partially compliant" states: what matters is honestly documenting the real state in the statement, listing the known non-conformities and having an action plan. A sincere "partially compliant" statement is defensible; a missing statement, or a false "fully compliant" claim, is not.
Does this checklist also apply to Germany (BFSG) and the other EU countries?
Yes for the technical part: every EU country relies on the same EN 301 549 / WCAG 2.1 AA standard. What changes from one country to another is the mandatory document and the sanctions regime. In Germany, for example, the document is called "Informationen zur Barrierefreiheit" (§14 BFSG) and the fine can reach €100,000.