Skip to content
Docs
API reference Go to dashboard
DocsSecurity & Privacy

Security & Privacy

Data storage in Germany and the EU, a data processing agreement (DPA), a per-shop configurable privacy notice in the widget, and several technical safeguards — here you can see what Alpheris does by default and what you configure yourself.

At a Glance

EU Data Storage
Storage and processing in Germany and the EU
DPA
Data processing agreement at alpheris.com/avv
Privacy Notice
Configurable per shop, with your own privacy URL
Safeguards
Session tokens, domain binding, rate limits, upload filtering

Privacy Notice in the Widget

The privacy notice can be configured per shop and is switched off by default. That means the widget shows no consent banner on its own — you decide for yourself whether a notice should appear. This suits setups where consent is already covered by your website's consent/cookie banner.

You'll find the toggle in the dashboard under Integration. If you enable it, the widget requires consent before the first message; until then the AI won't respond.

1
Open Dashboard → Integration
In the dashboard, switch to the Integration section. That's where the widget options, the privacy notice, and the privacy URL live.
2
Enable the privacy notice (optional)
Only turn the notice on if you want to obtain consent directly in the chat widget. The default is "off".
3
Add your privacy URL
Enter the address of your own privacy policy. It's linked in the notice. Save — done.
Because the notice is off by default, it neither blocks the start of the chat nor shows a banner — as long as you don't switch it on yourself. Even so, check whether your website privacy policy covers chat processing.

Editable Privacy URL

The privacy URL is freely selectable and typically points to your own privacy policy. For security reasons, executable schemes such as javascript:, data:, or vbscript: are discarded on save — regular https:// links are allowed.

URL
# Example of a valid privacy URL
https://your-shop.com/privacy

Data Processing (DPA)

Alpheris processes data on your behalf. You can find the data processing agreement (DPA) — in German Auftragsverarbeitungsvertrag (AVV) — at alpheris.com/avv. It forms the legal basis under Art. 28 GDPR for processing the data that runs through Alpheris.

Art. 28 agreements are also in place with the sub-processors we use. The current list of sub-processors is available on the Alpheris website.

Download the DPA at alpheris.com/avv and add it to your records of processing activities.

Data Location

Storage and processing take place in Germany and the EU. By default, no processing occurs outside the EU. This keeps the data running through the widget and the inbox within the European legal framework.

Retention and deletion

A cleanup run deletes whatever has passed its retention period every night at 03:40. These are the periods — you need them for your own privacy policy:

DataPeriodReason
Widget chat histories365 daysoperation and traceability
Emails in the inbox6 yearscommercial correspondence, German HGB §257(4) / AO §147(3)
Contacts6 yearssame statutory period
Login sessions90 daysthey carry IP and device details
Log of blocked sales enquiries90 dayspersonal data

For the statutory six-year periods the clock starts only at the end of the calendar year in which the record was created — that is what the law requires. So an account started in 2026 loses its first emails in 2033 at the earliest. You can always delete sooner yourself; these are upper limits, not a minimum.

Technical Safeguards

The widget and the AI runtime are protected by several layers of safeguards:

MechanismWhat it does
Session tokensEach chat session runs on its own token instead of freely manipulable parameters.
Domain bindingThe install key is bound to your verified domain; requests from foreign hosts are rejected.
Rate limitsRequests per source are capped to absorb abuse and load spikes.
Upload filteringFile uploads to the knowledge base are checked against allowed types and scanned for malware.

Domain Binding

The key in the install snippet (data-alpheris-key) is bound to the domain verified in your account. In active strict mode, Alpheris checks the origin of the embedding against this domain on every widget and chat request. If someone loads your snippet on a foreign page, the request is rejected.

HTML
<!-- Alpheris Chat Widget -->
<script src="https://alpheris.com/widget.js" data-alpheris-key="INSTALL_ID" crossorigin="anonymous" async></script>
<!-- End Alpheris Chat Widget -->

Domain verification and the behavior with multiple domains are described under Domains.

No Scriptable Uploads

For the knowledge base, Alpheris accepts only document and image formats — for example .pdf, .txt, .md, .csv, .docx, .xlsx, and common image types. Scriptable or executable files are rejected: .html and .svg are not on the whitelist, nor are active types such as .exe, .js, or .sh. In addition, every upload runs through a malware scan (ClamAV).

Content from an .html or .svg file can't be uploaded directly. Instead, have such pages captured via the crawl, or export the content as a PDF.

Text Snippets Instead of Free Invention

For recurring statements that are legally or commercially sensitive — right of withdrawal, shipping terms, privacy wording — you should store text snippets instead of letting the AI phrase things freely. That way the AI always reproduces the exact wording you've approved and doesn't invent conflicting terms. You maintain text snippets in the AI Agent section.

The AI generally answers grounded on your knowledge base. Text snippets additionally give you the exact wording wherever accuracy matters more than freedom of phrasing.

Related Pages