Law and tax

European Accessibility Act: what it means for your online store

European Accessibility Act for online stores in Bulgaria: who must comply since Jun 28, 2025, the microenterprise exemption, WCAG 2.1 AA and fines.

The CloudCart team17 min read
An online store layout on a laptop with a clearly outlined focus ring around one button, a keyboard in front, a magnifying glass over high-contrast text and a pair of headphones
In this article · 11 sections
  1. What is the European Accessibility Act (EAA)?
  2. Which online stores must comply since Jun 28, 2025?
  3. The microenterprise exemption
  4. What exactly does the law require from an online store?
  5. WCAG 2.1 AA and EN 301 549: which standard to follow
  6. Online store accessibility checklist
  7. How to test your store's accessibility
  8. Who enforces it and what are the fines?
  9. What content is out of scope?
  10. A 30-day plan: from first test to the accessibility page
  11. Frequently asked questions

In short: since Jun 28, 2025, every online store that sells to consumers in Bulgaria must be accessible to people with disabilities, under the Bulgarian law that brings in the European Accessibility Act (EAA). Microenterprises are exempt: fewer than 10 staff and turnover or balance sheet up to €2,000,000. The practical target is WCAG 2.1 level AA, and the Bulgarian consumer protection authority enforces it.

This guide is from the CloudCart team, the Bulgarian ecommerce platform, and is written for stores that sell in or from Bulgaria. It follows the text of the Bulgarian act as published by the State Agency for Metrological and Technical Surveillance (DAMTN), the EU directive on EUR-Lex and the standards published by ETSI and W3C. It is not legal advice: whether your company falls under an exemption is a question for your lawyer or accountant.

What is the European Accessibility Act (EAA)?

The European Accessibility Act is Directive (EU) 2019/882 of Apr 17, 2019 on the accessibility requirements for products and services. It sets one baseline for the whole EU, and each member state writes it into its own law, with its own regulator and its own fines.

Bulgaria did this with the Act on the Accessibility Requirements for Products and Services (in Bulgarian, PDF), published in the State Gazette (the official journal) No. 31 of Apr 11, 2025 and in force since Jun 28, 2025. It covers products such as computers, payment terminals and e-readers, and services; Art. 2(2), item 7 names "e-commerce services" directly.

An accessible website is one where a person with impaired sight, hearing or motor control, or with cognitive difficulties, can find a product, put it in the cart and pay. They do it with assistive technology: a screen reader that reads the page aloud, a keyboard only, screen magnification or voice control.

Which online stores must comply since Jun 28, 2025?

Every online store that sells at a distance to consumers and is not a microenterprise must comply. The Bulgarian act (Additional Provisions, § 1, item 40) defines e-commerce services as services provided at a distance through websites and mobile apps, at the individual request of a consumer, with a view to concluding a consumer contract.

The website and the mobile app are covered alike, whatever goods you sell. If you sell only to businesses, ask a lawyer whether you are in scope, because the definition speaks of a consumer contract.

The responsible party is the service provider, which means your company, the one that sells. Art. 50 requires the service to be designed and provided in line with the accessibility requirements, and Art. 51 requires procedures that keep it compliant for as long as the store runs.

Selling into other EU countries

If you ship from Bulgaria to customers in Romania, Greece or Germany, the same directive applies there, but through each country's own law and regulator. The baseline is shared, including the microenterprise exemption for services (Directive 2019/882, Art. 4(5)), so a store built to WCAG 2.1 AA is in a good position everywhere. Fines and complaint procedures differ by country. Selling across borders is covered in the guide to cross-border ecommerce in the EU.

The microenterprise exemption

Microenterprises that provide services are exempt from the accessibility requirements and from every obligation linked to them (Art. 46(3)). Under the act (§ 1, item 15) a microenterprise employs fewer than 10 people and has annual turnover of up to €2,000,000 or an annual balance sheet total of up to €2,000,000.

The test has two parts: headcount and money. Fewer than 10 staff alone is not enough; at least one of the two financial figures must also stay at or under €2,000,000.

Your companyStaffTurnover or balance sheetMust it comply?
Sole trader (ET) or Ltd (OOD) with 3 employees3Turnover €400,000No, a microenterprise
Store with 9 employees9Turnover €2,500,000, balance sheet €1,200,000No, the balance sheet is under the threshold
Store with 12 employees12Turnover €900,000Yes, 10 or more staff
Store with 6 employees6Turnover €3,000,000, balance sheet €2,400,000Yes, both financial thresholds are exceeded

If your company is growing toward the threshold, prepare the store early. Readable text, clear buttons and forms with plain error messages also help every customer who shops on a phone in bright sunlight.

What exactly does the law require from an online store?

The act requires the website and mobile app to be "perceivable, operable, understandable and robust" (Annex 2, Section III, letter c). These are the four principles of WCAG, which is why WCAG is the working standard.

For e-commerce, Annex 2, Section IV, letter g adds three specific requirements:

  1. Accessibility information about products. When the manufacturer or importer provides accessibility information for a product, the store shows it.
  2. Accessible login, security and payment. The identification, security and payment functions that are part of the service must be accessible.
  3. Accessible payment and signature methods. Identification methods, electronic signatures and payment services must be perceivable, operable, understandable and robust.

Section III also asks for an adequate font size, "sufficient contrast" and a text alternative for every piece of non-text content, which in practice means alt text on every image.

The accessibility information in your terms and conditions

Art. 50(2) and Annex 5 require you to describe how the store meets the requirements. The information goes into the general terms and conditions or an equivalent document, and contains a general description of the service in accessible formats, an explanation of how it works and a description of how the requirements are met.

A practical way is a separate "Accessibility" page, linked from the terms. On it, say which standard you follow, what you have tested and how a customer can write to you when something does not work. Customer rights on returns are covered in the guide to returns and consumer rights in Bulgaria.

When you can rely on an exception

Art. 3 allows the requirements not to apply when they would fundamentally alter the service or impose a disproportionate burden on the company. There is a condition: you make a written assessment against the criteria in Annex 1, document it and keep the results for 5 years. The regulator checks that assessment (Art. 54(2)).

WCAG 2.1 AA and EN 301 549: which standard to follow

For an online store the practical standard is WCAG 2.1 level AA. Under Art. 48 of the act, a service that conforms to the harmonised standards published in the Official Journal of the EU is presumed to meet the requirements those standards cover. The European standard for ICT accessibility is EN 301 549; check the Official Journal for which version is referenced under Directive 2019/882.

EN 301 549 V3.2.1 (ETSI, March 2021) states in clause 9.0 that conformance with WCAG 2.1 level AA is equivalent to conformance with its web page clauses (9.1 to 9.4 and 9.6). So a site that meets the level A and AA success criteria of WCAG 2.1 by W3C covers the web part of the standard.

TermWhat it isWhat it means for your store
EAA (Directive 2019/882)The EU accessibility lawSets the goals for every EU member state
Act on the Accessibility Requirements for Products and ServicesThe Bulgarian law, in force since Jun 28, 2025The duties, enforcement and fines in Bulgaria
EN 301 549The European standard for ICT accessibilityTechnical requirements for websites, apps and documents
WCAG 2.1 AAThe W3C Web Content Accessibility GuidelinesTestable criteria: contrast, alt text, keyboard, forms

Online store accessibility checklist

Most accessibility problems in online stores fall into six areas: contrast, alt text, keyboard, forms, zoom and language.

AreaWCAG 2.1 criterionRequirementWhere in the store
Text contrast1.4.3 (AA)At least 4.5:1 for normal text, 3:1 for large textPrices, buttons, text on banners, promo bar
Non-text contrast1.4.11 (AA)At least 3:1 for field borders, icons and button statesCheckout fields, cart icon, size selector
Text alternative1.1.1 (A)All non-text content has a text alternative with the same purposeProduct photos, banners, icons without a label
Keyboard2.1.1 (A)Everything works with a keyboard aloneMenu, filters, gallery, cart, payment
Focus visible2.4.7 (AA)The element in focus can be seenAll links, buttons and fields
Labels or instructions3.3.2 (A)Every field has a label or instructionSign-up, delivery address, newsletter
Error identification3.3.1 (A)The field in error is identified and the error is described in textCheckout, login, promo code
Resize text1.4.4 (AA)Text can be zoomed to 200% without loss of contentProduct page, cart
Reflow1.4.10 (AA)No horizontal scrolling at a width of 320 CSS pixelsMobile version, size tables
Language of page3.1.1 (A)The page language can be determined by softwareThe lang attribute on every language version

Contrast and colors

Contrast is the ratio of brightness between text and background, from 1:1 (no difference) to 21:1 (black on white). Light gray text on white and white text on a pastel banner often drop below 4.5:1. If a sold-out size is only grayed out, add the words "sold out" as well, because color alone does not tell everyone.

In CloudCart you change the theme colors in Design → Colors and typography, with the live store next to the settings; new colors show after you save. That is where you fix text, buttons, the header and the footer without touching code. How themes and the editor work is explained in the guide to online store design and themes in CloudCart and on the store design page.

Alt text on product images

Alt text (alternative text) is the short description of an image that a screen reader reads aloud to someone who cannot see it. Good alt text describes the product the way you would over the phone: "black leather crossbody bag, front view". Purely decorative elements get no description.

In CloudCart the Image Health app (Apps → Image Health) scans the catalog, finds images without alt text and suggests AI-generated text. Nothing changes until you click Apply, and the "Alt text for the whole catalog" card generates texts for the entire catalog, starting with your best sellers. Each generated text uses 1 credit, and every store gets 50 credits a month, shared with the image checks. Alt text also helps search rankings, which is why it is part of the CloudCart SEO tools.

Keyboard and focus

A person who does not use a mouse moves through the page with Tab and Shift+Tab, presses buttons with Enter or Space and closes windows with Esc. Test popups, menus that open on mouse hover and image galleries in particular. If a newsletter popup cannot be closed with the keyboard, the customer cannot get to the cart.

The cookie banner, the chat widget and signup windows must also close with the keyboard. How to set up the cookie banner correctly under GDPR is in the guide to the cookie banner and GDPR for an online store.

Forms and checkout

Checkout is where an inaccessible store loses the order. Every field needs a visible label ("Phone", "City") above or beside it, because placeholder text inside the field disappears as soon as you type. Errors are stated in words next to the field ("Enter a 4-digit postcode"), in addition to the red border. Required fields are marked in text.

The payment step is named in the law, so test it separately. Paying with a digital wallet (Apple Pay, Google Pay) saves typing a 16-digit card number, which helps especially people with motor impairments. How the order flow is built in CloudCart is on the CloudCart checkout page.

Mobile version and zoom

The reflow criterion (1.4.10) requires content to be readable without horizontal scrolling at a width of 320 CSS pixels, and the resize text criterion (1.4.4) requires text to zoom to 200%. If the store already works well on a phone, many of these checks pass. The detailed phone checks are in the guide to the mobile version of an online store.

How to test your store's accessibility

Accessibility is tested on three levels: an automated scanner, a manual keyboard check and a screen reader check. Scanners find only part of the problems, so the manual steps are not optional.

  1. Pick 5 key pages. Homepage, category, product, cart and checkout up to the last step before payment.
  2. Run an automated check. In Chrome, open DevTools → Lighthouse and choose the Accessibility category. Extensions such as WAVE or axe DevTools mark the errors right on the page.
  3. Check contrast. Measure the ratio for every text and button color with a contrast checker. The target is 4.5:1 for normal text and 3:1 for large text and interface elements.
  4. Place an order with the keyboard only. No mouse, from the homepage to payment. Watch whether focus is visible at every step, whether the order is logical and whether anything traps you.
  5. Listen to the store with a screen reader. NVDA on Windows, VoiceOver on Mac and iPhone, or TalkBack on Android. Images, buttons and errors should be read out in clear words.
  6. Zoom to 200% and narrow to 320 pixels. Text should not overlap, and the order button should stay visible.
  7. Write down the result. What you tested, when, what you are fixing and by when. This is the basis for the accessibility information in your terms.

Repeat the test after every major change: a new theme, a new banner, a new app in checkout. Art. 51 requires compliance for the whole life of the service. If the test finds a problem in the theme or in a checkout step you cannot change yourself, write to support@cloudcart.com with the page address and a description.

Who enforces it and what are the fines?

For e-commerce services, compliance is enforced by the Commission for Consumer Protection (CPC, in Bulgarian KZP), under Art. 54(1), item 10. Consumers and organisations of and for people with disabilities can file complaints and reports with the CPC in writing or electronically (Art. 62). Anonymous complaints do not start proceedings (Art. 63).

The fines are in Chapter Six of the act. The text still quotes amounts in Bulgarian lev (BGN); in euro they convert at the fixed rate of BGN 1.95583 to €1, since Bulgaria joined the euro area.

BreachArticlePenalty for a companyRepeat breach
A service provider duty with no other specific penalty (for example, an inaccessible store)Art. 89€1,533.88 to €10,225.84 (BGN 3,000 to 20,000)€3,067.75 to €20,451.68 (BGN 6,000 to 40,000)
Information not provided on request, false or incomplete, late, or not in BulgarianArt. 87€1,022.58 to €7,669.38 (BGN 2,000 to 15,000)€2,045.17 to €15,338.76 (BGN 4,000 to 30,000)
Breach of the Art. 3 duty (disproportionate burden assessment)Art. 86€511.29 to €2,556.46 (BGN 1,000 to 5,000)€1,022.58 to €5,112.92 (BGN 2,000 to 10,000)

Note for foreign founders: when the CPC asks for compliance information, it must be in Bulgarian (Art. 87). Keep a Bulgarian version of your accessibility page and test log ready, even if the store itself is in English.

For breaches committed up to Jun 1, 2026, the act (§ 3 of the transitional provisions) cut fines and penalties by 50%. That window has closed, so the full amounts now apply. The transitional rules in § 4 cover products a provider lawfully used for the service before Jun 28, 2025 (until Jun 28, 2030) and service contracts signed before Jun 28, 2025 (until they expire, but no later than 5 years).

What content is out of scope?

Art. 2(3) excludes five kinds of website and app content:

  • pre-recorded video and audio published before Jun 28, 2025;
  • office file formats (for example, PDF catalogs) published before Jun 28, 2025;
  • online maps, if the essential information is also given in an accessible way;
  • third-party content that you do not fund, develop or control;
  • archives that are not updated after Jun 28, 2025.

Everything new you publish after Jun 28, 2025, including product videos, PDF guides and banners, must meet the requirements.

A 30-day plan: from first test to the accessibility page

A realistic order for a store that is not a microenterprise, or will soon pass the threshold:

WeekTaskResult
1Automated check of the 5 key pages and a keyboard-only orderA list of issues by priority
2Color contrast in the theme editor, form labels and error messagesCheckout and product page meet the criteria
3Alt text on images, starting with best sellers, and text on bannersThe catalog reads well with a screen reader
4Screen reader check, an "Accessibility" page and a link from the termsThe Annex 5 information is public

If you are building a new store, set these rules from day one: high contrast in the theme, alt text on every image and clear labels in every form.

Frequently asked questions

The European Accessibility Act (EAA) is Directive (EU) 2019/882 on the accessibility requirements for products and services. Bulgaria brought it in with the Act on the Accessibility Requirements for Products and Services, in force since Jun 28, 2025. It covers e-commerce services, meaning online stores that sell to consumers.

Not if the company is a microenterprise. Microenterprises that provide services are exempt from the requirements (Art. 46(3) of the Bulgarian act). A microenterprise has fewer than 10 staff and annual turnover of up to €2,000,000 or a balance sheet total of up to €2,000,000.

On Jun 28, 2025, when the Bulgarian law came into force, the same date the directive applies across the EU. The 50% reduction of fines applied to breaches up to Jun 1, 2026 and has now expired.

For web pages both lead to the same result. EN 301 549 V3.2.1 is the European digital accessibility standard, and its clause 9.0 treats WCAG 2.1 level AA conformance as conformance with its web requirements. For an online store the practical target is WCAG 2.1 AA.

The Commission for Consumer Protection (Art. 54(1), item 10). Consumers and organisations of and for people with disabilities can file complaints with it. On request, the store provides its compliance information in Bulgarian within the deadline set.

For a company, the penalty under Art. 89 is €1,533.88 to €10,225.84 (BGN 3,000 to 20,000 in the text of the law), and €3,067.75 to €20,451.68 for a repeat breach. Failing to provide information on request, or giving false information, carries €1,022.58 to €7,669.38 under Art. 87.

The law requires information on how the service meets the accessibility requirements, included in the terms and conditions or an equivalent document (Art. 50(2) and Annex 5). A separate "Accessibility" page linked from the terms works well. Keep it for as long as the store runs.

Run Lighthouse (Accessibility category) in Chrome or an extension such as WAVE, then place a full order with the keyboard only and listen to it with a screen reader (NVDA, VoiceOver, TalkBack). Check contrast: 4.5:1 for normal text. Automated tools do not catch everything, so the manual check is needed.

Sources

  1. Directive (EU) 2019/882eur-lex.europa.eu
  2. Act on the Accessibility Requirements for Products and Services (in Bulgarian, PDF)www.damtn.government.bg
  3. EN 301 549 V3.2.1www.etsi.org
  4. WCAG 2.1 by W3Cwww.w3.org
  5. fixed rate of BGN 1.95583 to €1www.ecb.europa.eu
The CloudCart teamChecked against the platform documentation. Questions: support@cloudcart.com

Build your online store

The first 3 months on every plan are €1/month. Questions: support@cloudcart.com

Create a store for €1