E-commerce
June 28, 2026
A chat widget may seem simple to use. Yet, for a customer navigating with a keyboard, using a screen reader, zooming in heavily on the interface, or having cognitive difficulties, this same widget can become a complete obstacle.
The problem is not just technical. If the customer cannot open the chat, read the reply, send a message, or request a human, they lose access to support at the very moment they need it. In e-commerce, this can block an order, a return, a package tracking, or a refund request.
This guide explains how to design an accessible AI chatbot that is pleasant to use and compliant with best practices: keyboard navigation, screen readers, contrast, clear language, mobile, alternative contact methods, and tests to conduct before going live.
Summary
Why does chatbot accessibility really matter?
Chatbot accessibility affects all customers who cannot use a standard interface under ideal conditions. This includes people who are blind or visually impaired, people who cannot use a mouse, people with dyslexia, elderly customers, tired users, or those browsing on mobile in a challenging context.
An inaccessible chatbot does more than just frustrate. It cuts off access to a portion of support. A customer might be blocked at checkout, trying to understand a return policy, or looking for an order number, but unable to interact with the assistant.
A third-party widget remains part of your customer experience. If the chat button is unusable, the customer won't say the widget provider failed. They will say your store didn't help them.
Accessibility is therefore a matter of inclusion, compliance, and conversion all at once. A chat that is readable, keyboard-navigable, and understandable serves everyone better, not just people with disabilities.

Convert over 2,000 customers on average per month with Qstomy.
The world’s 1st Shopify AI dedicated to customer conversion



Empowering 200+ e-commerce merchants
How to apply WCAG principles to a chatbot?
WCAG guidelines may seem abstract, but they become very concrete when applied to a conversational widget.
Perceivable
The customer must be able to see or hear the information. Contrasts must be sufficient, text must remain readable when zoomed, messages must be announced to screen readers, and icons must not carry meaning on their own.
Operable
The chat must function without a mouse. The open button, the input field, the quick replies, the send button, and the close button must be keyboard-accessible and have a visible focus.
Understandable
The language must be clear. The bot must explain what it is doing, report errors in a helpful way, and avoid long or ambiguous answers.
Robust
The code must remain compatible with assistive technologies. ARIA roles, labels, HTML structure, and dynamic announcements must be tested, not just declared in a vendor's documentation.
How do you ensure complete keyboard navigation?
Keyboard navigation is the first test to perform. It quickly reveals whether the chatbot is truly usable or just pretty with a mouse.
The expected user flow
With the Tab key, the user must reach the chat button, open it with Enter or Space, write in the field, send the message, navigate through the quick replies, and then close the window with Escape or a clearly focusable button.
Upon opening, the focus must go to a logical place, for example, the input field or the dialog title. Upon closing, it must return to the button that opened the chat. The user must never get lost in the page nor remain trapped in an iframe.
Quick test
Unplug the mouse for five minutes. Open the chat, ask a simple question, read the answer, use a quick reply, and close the window. If even a single step requires the mouse, the user flow is not accessible.
Which elements must be understandable by screen readers?
A screen reader does not see the window like a sighted user does. It reads the names, roles, order, and changes announced by the code. If this information is missing, the chat becomes confusing.
The Essential Basics
The open button must have a clear name, such as "Open support chat". The window must be identified as a dialog. Messages must be announced in a live region, but without reading every character while the bot is typing.
Icon buttons must be named: "Send", "Close", "Attach a file". Messages must indicate who is speaking: the customer or the assistant. Links must announce their destination, not just say "click here".
A good test is to close your eyes during the VoiceOver or NVDA walkthrough. If you do not understand where you are, the customer won't either.
How to manage contrasts, text size, and animations?
The chatbot design must not only respect the graphic charter. It must remain readable under real conditions: mobile screen, strong brightness, browser zoom, visual fatigue or enhanced contrast.
The text in the speech bubbles must have sufficient contrast with the background. Placeholders must not be the only indication in a field. Errors must be explained by text, not just by red.
Zoom and motion
The chat must remain usable with a 200% zoom. The bubbles must not go off-screen and the input field must remain visible. Launcher animations, animated typing indicators and transitions must respect the reduced motion preference.
An accessible interface is often simpler. It provides fewer visual effects, but more control to the user.
How can the dialogue be made easier to understand?
Accessibility is not just about code. The conversation content must also be easy to follow.
The bot should write short sentences, use common vocabulary, and avoid internal jargon like "SLA", "RMA", or "WISMO" without explanation. When a procedure involves multiple actions, it must present the steps in order and check that the customer has understood.
Example
Instead of replying "Your return is subject to validation according to internal policy", the bot can say: "You can request a return from your account. I will first check if your order is still within the return period."
Error messages should also be helpful. "I did not understand" is not enough. A better response is: "I did not understand your order number. You can write it like this: QS-12345."
What requirements should be planned for mobile users and those with motor disabilities?
On mobile, an inaccessible chatbot quickly becomes impossible to use. Buttons that are too small, suggestions squeezed together, fields hidden by the keyboard, or a launcher placed over the payment button can break the entire user journey.
Touch targets must be large enough to be activated without excessive precision. The chat button must not block the checkout, the cart, or the main CTAs. Quick replies must be selectable with a finger, an external keyboard, dictation, or phone accessibility controls.
Beware of sensitive actions
If the bot offers to cancel an order, modify an address, or delete information, it must ask for confirmation. This confirmation must be clear and accessible, not hidden in a small, hard-to-reach button.
What alternatives should be planned for if the widget does not work?
An accessible chatbot must never be the only path to support. Even when well-designed, a widget can fail: old browser, conflict with a plugin, vendor bug, poorly supported screen reader, or a customer who prefers another channel.
The store must offer an email address, an accessible form, a help center usable with a keyboard and, if relevant, a telephone number or a WhatsApp channel. These alternatives must be easy to find, especially from help pages, the footer, and the contact page.
Chat is an entryway. It must never become a closed door.
When a human takes over the conversation, the form fields must be labeled, errors must be explicit, and the customer must know the timeframe in which they will receive a response.
How to test the chatbot's accessibility?
Automated tools are useful, but they are not enough. They can spot low contrast or a missing label, but they do not always know if the focus is logical or if a screen reader announces messages at the right time.
Simple testing method
Run an automated scan with the widget open.
Navigate completely using the keyboard, without a mouse.
Test a scenario with VoiceOver, NVDA, or TalkBack.
Zoom the page to 200% and check that the chat remains usable.
Enable animation reduction and check that the widget respects this setting.
Have the user journey tested by a few affected users whenever possible.
Each update of the widget or Shopify theme must trigger at least the keyboard and screen reader tests again. Accessibility bugs should be treated as blocking bugs when they prevent access to support.
How to choose an accessible chatbot on Shopify?
The choice of a provider should not be limited to AI features. You must ask for proof regarding accessibility, then verify it within your own Shopify theme.
Request an up-to-date accessibility report, keyboard documentation, a list of shortcuts, the ability to translate ARIA labels, and a resolution timeframe for accessibility bugs. A general promise of compliance is not enough.
Theme-side configuration
After installation, test custom colors, the z-index, the cookie banner, checkout modals, and proactive messages. An accessible widget in a provider's demo can become inaccessible once integrated into your theme.
Links sent by the bot should be descriptive: "Read the return policy" is better than "Click here." Proactive messages must be dismissible via keyboard and should not open aggressively for screen readers.
How does Qstomy design an accessible chatbot?
Qstomy designs the chatbot as an integral part of the support experience, not just as a decorative widget. The goal is for the customer to be able to open, read, reply, request a human, and leave the conversation without any obstacles.
What this implies
The launcher can receive a clear label in French or English. The window respects a dialogue structure, focus remains managed, responses can be announced to screen readers, and essential keyboard shortcuts are taken into account.
Responses are written in plain language, with short sentences and explicit actions. The human transfer uses named fields and preserves the context of the conversation.
Concrete example
A fashion brand replaces a widget that was blocking the keyboard navigation path. After migration, a customer can open the chat using Tab, request order tracking, read the response with VoiceOver, and then transfer to a human without using a mouse. The result is not just a better audit score: it is a truly accessible support channel.
Explore AI support or request a demo.
Which playbooks should be launched this week?
Playbook 1: keyboard-only navigation
For ten minutes, use only the keyboard. Open the chat, ask a question, use a quick reply, request a human, and close the window. Note each blocker.
Playbook 2: screen reader test
Turn on VoiceOver on Mac or NVDA on Windows. Check that the chat button is named, that replies are announced, and that the handoff form is understandable.
Playbook 3: contrast and zoom
Test the colors of your bubbles and buttons. Zoom to 200% and check that the conversation remains readable without horizontal scrolling.
Playbook 4: vendor request
Ask the vendor for their accessibility report, their keyboard documentation, and their resolution timeline for critical bugs. If they cannot answer, the risk is real.
Takeaway
An accessible chatbot serves all customers. It reduces frustration, improves support, and shows that assistance is not reserved solely for people who use a mouse and see the screen perfectly.

Enzo
June 28, 2026


