Privacy Policy
How daita collects, uses and protects data — for visitors to daita-ai.com and for merchants who connect the daita AI agent (including the Shopify app).
1. Who we are
daita (“we”, “us”) is an AI solutions business based in München, Germany, run by its founder, Nicolas Guillermo Bonilla Vargas, as a sole trader. We provide an embeddable AI agent used on our own website and offered to other businesses (via a one-line script, a WordPress plugin and a Shopify app). For data processed through the agent on a client’s website or store, the client is the data controller and daita acts as a data processor on their behalf.
2. Data we process
- Conversation content: the messages a visitor sends to the agent and the agent’s replies, plus the language and the page/origin, to generate answers and operate features (lead capture, booking, handoff).
- Photos a visitor attaches in the chat: used to find similar products. The visitor’s browser re-encodes the image before sending it, which removes its embedded metadata (including location); the AI model that writes the replies (Anthropic, US) reads it, our image model hosted in the EU (Belgium) compares it with the catalog. On a Shopify store the photo is not kept: it is used for that reply and then discarded; on other websites it is stored with the conversation in our US attachment storage until that conversation is erased.
- Contact details a visitor chooses to share: e.g. name and email when capturing a lead, booking a consultation, or requesting a human handoff.
- Shopify store data (Shopify app only): on install we store an OAuth access token for the store. Using it, we copy the store’s product catalog — titles, descriptions, product types, vendors, tags, collections, prices, stock and the main image — into a search index in your workspace, refreshed after a product changes and once a day, so the agent and the search can answer from it. Order data is read to answer a request: when a shopper proves ownership with a matching order number and email, the agent reads that order’s status and tracking. In addition, Shopify notifies us of each new order, and for the merchant’s search analytics we match its email to the shopper’s earlier search session to credit the searches that led to the purchase; only counts and revenue per search term are kept, not the order. We do not bulk-copy your customer database or your order history. Two things are kept, and we name them plainly: when a shopper talks to the agent we keep a contact record for them in your workspace (their name and the email or phone they wrote from, which channels they used, and when), and, in workspaces that use daita’s support inbox (it is not part of the Shopify app), when your team opens that conversation there we store a snapshot of that shopper’s recent orders alongside it — item names and quantities, the order total, its date and any tracking number. No card or payment data, ever. Both are your workspace’s data, and both are deleted when you ask us to erase, when the customer asks, or on Shopify’s
customers/redactandshop/redact. - Operational metadata: lightweight, privacy-preserving events (e.g. “a product lookup happened”) for reliability and analytics, and an install heartbeat so a workspace owner can confirm the agent is live.
- Service-quality analysis (CX): we run automated, text-only analysis of the conversation to assess overall sentiment, whether the request was resolved, and the effort involved, and to flag conversations that may need human follow-up. This is performed on conversation text only — no voice, facial or biometric analysis — for internal quality analytics. It does not, by itself, make any automated decision that produces legal or similarly significant effects about a person; results support human review and are reported in aggregate. Legal basis: our and the client’s legitimate interest (Art. 6(1)(f) GDPR) in measuring and improving service quality; you may object at any time (Art. 21). Because it is text-only, it is not an “emotion recognition system” under the EU AI Act. It runs through the same language model that writes replies — today a US provider under EU Standard Contractual Clauses, as set out under “4. Where data is processed” below; the conversation records themselves are stored and queried in the EU.
- Shopper profile (storefront chat and search, 90 days from last activity): so the agent can personalise its answers, we keep per shopper the searches they typed (the last 20), the products the agent showed them (the last 40, with the price and stock shown at that moment and the search that surfaced each one), a summary of their cart (item titles, prices, item count and total — the cart itself is read in the shopper’s own browser), their language, a derived interest and price-range profile, and their email only if they give it in chat. On a Shopify store the shopper’s browser keeps them recognisable between visits only when the store’s privacy settings allow preferences for that shopper (Shopify’s Customer Privacy API decides, from the store’s settings, the shopper’s region and their answer to the store’s cookie banner), and search and recommendations are personalised only then, and only if the merchant has “Personalized results” switched on; otherwise the profile covers the current visit only. If the shopper declines, what was kept in their browser is removed. The cart summary is used to answer cart questions, to fit recommendations to their price range and to measure which searches led to an add-to-cart. The products shown are what an optional back-in-stock or price-drop email is checked against: that email is sent only if the merchant has turned the feature on (it is off by default) and the shopper confirmed their consent by double opt-in, and every send decision is recorded in a consent ledger. The profile expires 90 days after the shopper’s last activity, is removed by the widget’s “Delete my data”, and is erased on
customers/redactandshop/redact. - Conversation signals: for a sample of conversations (about one in four), an automated step labels the conversation text — after email addresses and phone, card and IBAN numbers have been masked; names and street addresses are not masked — with the intent (e.g. “order status”), the products mentioned, any objection (e.g. price or shipping), the sentiment, the stage of the purchase journey, a purchase-intent score between 0 and 1 and the language. The labels are stored with the conversation and expire with it after 90 days. For the merchant’s analytics, a pseudonymous copy — the labels and redacted search terms, no conversation text, and a salted hash in place of the session id — is kept in our analytics warehouse in the EU (Google BigQuery, EU region) for 400 days, and is deleted with the store on
shop/redact. They are not used to contact anyone. - Security and abuse logs: when a message trips our prompt-injection / abuse detector we record the request’s IP address, its coarse network class and country, the browser user-agent and the offending messages, for 90 days, so the merchant can see what was attempted (the agent refuses these; nothing is exposed). Workspace-admin actions (sign-ins, invitations, role changes) are written to a security audit trail with IP address and user-agent for the life of the workspace, and the IP address a workspace was created from is kept on the workspace record to prevent abuse.
- Shipment records (proactive delivery updates, when the merchant enables them): the tracking number, carrier, order name, estimated delivery date and the email address on the order — no name, phone number or address — for an order in transit, so the shopper can be emailed about a delay or a delivery. Each record is deleted 45 days after it is created, and is erased with the customer on
customers/redact(matched by email or by the order) and with the store onshop/redact. - Unanswered questions: when the agent cannot fully answer a customer, the question (with email addresses and long numbers removed) is kept for 60 days so the merchant can see what to add to their help content; it is erased with the customer’s tickets on
customers/redact. - Answered questions kept as examples (when the merchant has switched on learning from the store’s data): when the merchant’s team or the autopilot answers a customer, the customer’s last question and the answer are kept — the 200 most recent, each for at most 12 months — so the agent can answer similar questions the same way for that store only. Each is erased with the customer’s tickets on
customers/redact. - Optional features — for a Shopify store, off until the merchant switches them on in the app (workspaces created on daita-ai.com have them on and can have them switched off on request): access for external AI agents — AI assistants that support MCP (the Model Context Protocol), such as ChatGPT or Claude, can then browse the store’s catalog through daita and check an order’s status, only against the order number and the matching email, as in the chat, when someone points them at the store’s daita MCP endpoint (daita does not register or list the store with any assistant); and learning from the store’s data — the products bought after a search (from Shopify’s order notifications, matched to the shopper’s earlier search session by the email on the order) and shoppers’ ratings of replies then improve that store’s own ranking and replies. Neither is used for any other store, and neither trains an AI model.
3. What we do not do
- We do not sell personal data.
- We do not use your or your customers’ data to train AI models. Anthropic and OpenAI receive it under their commercial API terms, which exclude using it for training. ElevenLabs, which transcribes voice messages and speaks replies, may under its standard terms use the audio and text it processes to improve its own models unless that use is switched off for the account; voice is optional, and typing instead of speaking avoids it.
- We do not store your full order history, and order details are fetched on demand and released to a shopper only against a matching order number and email. We do keep the contact record and the recent-order snapshot described above — calling that anything other than customer data would be untrue.
4. Where data is processed
Persistent data (workspaces, conversations’ derived records, leads, bookings, the Shopify token and events) is stored at rest in a European Google Firestore region (eur3), and the embedding and reranking models behind product and knowledge search run on EU-hosted infrastructure (europe-west1). The application servers that handle each request — the Shopify app and its webhooks, the chat and the inbox (Google Cloud Functions and Cloud Run) — run in the United States (us-central1): request data passes through them there, and what is stored is written to the EU database (attachments excepted, below). Generating each reply requires an AI model: by default this is Anthropic (Claude), processed in the United States under EU-approved transfer safeguards (Standard Contractual Clauses); an EU inference path (Google Vertex, europe-west1) is built and being enabled. Customer-supplied file attachments are currently held in a US storage bucket (EU migration planned). Voice messages a shopper sends — through the chat widget’s microphone or as a WhatsApp/SMS voice note — are transcribed in the United States by ElevenLabs, with OpenAI as the fallback when ElevenLabs fails; this is part of the service, not an option. (On daita-ai.com’s own homepage assistant, the microphone instead uses your browser’s built-in speech recognition — in Chrome, a Google service.) Some capabilities are opt-in by the workspace owner and may route additional data outside the EU (for example native real-time speech-to-speech voice, provided by OpenAI); these are off unless the workspace owner explicitly enables them, and native real-time voice is not offered through the Shopify app.
5. Sub-processors
We use a small set of vetted sub-processors strictly to deliver the service:
- Google Cloud / Firebase — the database and stored data in the EU (Firestore, eur3); the application servers in the United States (Cloud Functions and Cloud Run, us-central1); website hosting on Google’s global network; all under Google’s data processing terms, which incorporate the EU Standard Contractual Clauses.
- Google reCAPTCHA Enterprise (through Firebase App Check) — only when someone starts a live voice call: it checks that the request comes from a real browser, so the call cannot be run up by scripts. Google processes browser and device signals for this and may set cookies. It is not loaded for text chat or voice messages.
- Anthropic — the language model that generates replies (processed in the US; the provider’s data processing addendum incorporates the EU Standard Contractual Clauses, and no customer data is used to train models).
- Resend — email: transactional messages (confirmations, notifications) and, for workspaces that connect a support address, the customer emails it receives.
- Meta (Facebook, Instagram, WhatsApp Cloud API) — only for workspaces that connect those accounts: the messages exchanged on them.
- Stripe — payments for workspaces billed on daita-ai.com. Not used for Shopify stores, which Shopify bills.
- Cal.com — calendar availability and booking (daita’s own agent).
- Twilio — phone, WhatsApp and SMS transport (when enabled), and speech recognition on the turn-based phone fallback.
- ElevenLabs — speech-to-text of voice messages sent through the website chat and as WhatsApp/SMS voice notes, and neural text-to-speech for spoken replies (including on phone calls); OpenAI — the transcription fallback when ElevenLabs fails, and native real-time voice (opt-in for merchant workspaces; on daita-ai.com it runs when a visitor starts a live voice call, and it answers calls to daita’s own phone line).
- Sendcloud (Netherlands, EU) or AfterShip (US) — carrier tracking for proactive delivery updates, only for merchants who enable it; they receive a tracking number and a carrier name and nothing else.
- Shopify — for the Shopify app, the merchant’s store APIs (under the merchant’s authorization).
6. Legal bases (GDPR)
We process data to perform the service requested (Art. 6(1)(b)), on the basis of our and the client’s legitimate interests in operating and securing the agent (Art. 6(1)(f)), and on consent where required (Art. 6(1)(a)), e.g. for optional voice or non-EU features. The EU AI Act informs our design; we apply transparency, human-in-the-loop escalation and auditability.
7. Retention
We keep data only as long as needed for the purpose. Every chat conversation is also kept, in full, as a support conversation in the client’s workspace (for a Shopify store, the Conversations section of the app in the Shopify admin) — its messages, any attachments (a photo a shopper sends on a Shopify store is read for the reply and not kept), the customer’s name and contact details, and the contact record described above — and that conversation is kept until the client or the customer has it erased, because it is the client’s support history; it does not expire at 90 days. What expires automatically after 90 days is the separate conversation record the agent itself uses, shopper profiles and operational events. Leads/bookings are kept until the client no longer needs them, and the Shopify access token until the app is uninstalled. On uninstall, the store’s access token is revoked immediately (via the app/uninstalled webhook); the store’s remaining data is then erased in full when Shopify sends shop/redact (about 48 hours later). Security and abuse logs are kept 90 days; the workspace security audit trail for the life of the workspace; shipment records carry a 45-day expiry and are erased with the customer. Clients can request deletion at any time.
8. Your rights
Under the GDPR you may request access, rectification, erasure, restriction, portability and objection. Visitors should contact the website/store operator (the controller); for daita-operated data, contact info@daita-ai.com. In the chat widget you can also delete your own conversation at any time. We honour Shopify’s mandatory privacy webhooks (customers/data_request, customers/redact, shop/redact): on a customer data request we compile everything we hold for that customer — matched by their email, phone, Shopify customer id and the orders Shopify names: support tickets with their messages, contact and customer profiles (including contacts the merchant’s team merged), shopper profiles and chat conversation records, leads, return requests, shipment records, unanswered questions, answered questions kept as examples and their marketing-consent history — and send it to the merchant, as a readable list and as a JSON file; on customers/redact we delete exactly those records. Not part of that set: the security log of a blocked attack (described in section 2), which is kept 90 days to protect the service and is not linked to a customer’s identity. One thing is kept by design: if the customer had a marketing-consent record, it is replaced by a single opt-out marker keyed by their email address, so that they can never be emailed again (Art. 17(3)(b) and Art. 21 GDPR). Separately, email addresses that bounce or report our email as spam are kept on a suppression list so we never send to them again; and on shop/redact we erase the store’s entire workspace — all conversations, leads, returns, the catalog index, usage and operational events, the analytics rows in our warehouse and any connected messaging accounts — from our systems. If Shopify’s shop/redact has not arrived 21 days after an uninstall, we erase the store the same way. We keep one record after that: that the store used its free trial (the store’s domain and the date, no personal data), so a reinstall cannot start a second trial. You also have the right to lodge a complaint with a data protection supervisory authority, in particular in the EU member state where you live or work; for daita this is the Bavarian State Office for Data Protection Supervision (Bayerisches Landesamt für Datenschutzaufsicht, BayLDA).
9. Security
Our own secrets (API keys and the Shopify API secret) are held in Google Secret Manager. A store’s Shopify access token is stored in our EU database, encrypted at rest by Google, read only by our servers and never sent to a browser; it is deleted when the app is uninstalled. All traffic is encrypted in transit (HTTPS). OAuth and webhook calls are verified with HMAC signatures. Access to production data is restricted.
10. Children
The service is not directed to children and we do not knowingly collect their data.
11. Changes
We may update this policy; we will revise the “last updated” date and, for material changes affecting clients, notify them.
12. Contact
daita — München, Germany · info@daita-ai.com · Trust & compliance