Privacy Policy
Last updated: 16 October 2026
This policy explains how Dicovo Content (the "app"; in the Shopify App Store "Dicovo Content: AI Bulk Editor") handles data when a Shopify merchant installs and uses it. It is written for merchants and the people on their team who log in to the app. It describes the app as it works today; when the app changes in a way that affects this policy, we update it (see "Changes to this policy").
The app helps you make content changes to your Shopify store in bulk: products, collections, pages and blog articles, including text metafields and image alt texts. An AI of your choice prepares the changes, a person on your team reviews them, and only a person can apply them to your store. Every value the app overwrites is backed up first, so you can roll the change back.
1. Who we are
Dicovo Content is a product of Troef Media, which makes and operates it.
- Legal entity: Troef Media, a sole proprietorship (eenmanszaak) registered in the Netherlands
- Address: Coehoornsingel 2a, 9711 BS Groningen, the Netherlands
- Chamber of Commerce (KvK) number: 04069408
- VAT number: NL002158207B72
- Contact for privacy questions and requests: [email protected]
For the account data of the people who log in (section 3.1) and for our technical logs, Troef Media is the controller. For the content of your store that the app processes on your instructions, you (the merchant) decide what is processed and why; we process it to provide the app to you. On request we sign a short data processing agreement for that part; ask for it at [email protected].
2. What the app does not collect
- No customer or order data. The app only asks Shopify for access to products, collections, pages, blog articles and the store's languages (the access scopes
write_products,write_contentandread_locales). It never reads your customers, orders, payments or themes. - No tracking. The app has no analytics, advertising or tracking scripts and sets no tracking cookies.
- No selling. We never sell or rent data, and we do not use your data to train AI models.
3. What the app stores, and for how long
Everything below is stored in the app's own database, separately per store, at our hosting provider in the EU (section 5). You can see the same overview, with your store's own settings filled in, in the app under Settings > Privacy.
3.1 Account and access data
| What | How long |
|---|---|
| Store details: name, myshopify.com address, main domain, currency, languages, Shopify plan and your settings in the app | While the app is installed; deleted 48 hours after you uninstall |
| The app's access to your store: the access token and refresh token Shopify issues, encrypted (AES-256-GCM) | Until you uninstall; removed at once then |
| People who log in: name, email address, Shopify staff id, role (owner or reviewer), language and when they last logged in | While the app is installed |
| Logins outside the Shopify admin: a fingerprint (hash) of the login, the browser it came from, when it started and was last used | 24 hours for reviewers and 7 days for owners after the Shopify login, then the person logs in through Shopify again; all end when you uninstall |
| Claude connections: fingerprints (hashes) of their tokens, what they may do and who allowed them | Until 90 days after you allowed the connection, until you remove it, or until you uninstall |
| Your own AI keys (Anthropic, OpenAI or another endpoint), encrypted; screens only show the last four characters | Until you remove the key under Settings > AI, or uninstall |
| Subscription and usage charges booked through Shopify's billing (changes applied, AI usage on our AI) | While the app is installed |
3.2 Store content and the work on it
| What | How long |
|---|---|
| A copy of your catalog: titles, texts, SEO fields, text metafields, image alt texts and image addresses of your products, collections, pages and blog articles, for searching and comparing | Refreshed with every sync; what you delete in Shopify goes at the next sync; the rest while the app is installed |
| AI instructions: style guide, house rules, banned words, measurements of your texts and the shop knowledge you approved or that waits for approval | While the app is installed; you can switch off or delete knowledge yourself |
| Change sets: the proposed texts, the AI's reasons and sources, check and fact check results, corrections, review marks and the history of who did what and when | 12 months after the set was completed or closed (your setting, 1 to 24 months), never while a backup of it can still be restored; drafts and paused sets while the app is installed |
| Backups of the values the app overwrote in Shopify, so you can roll a change back | 30 days by default (your setting, up to the maximum of your plan: 30, 90 or 180 days), then deleted every night |
| Conversations with the in-app assistant and background generations: your messages, the AI's replies and tool results, tokens and cost | 12 months after the last message of a conversation or the end of a generation (your setting, 1 to 24 months) |
3.3 Logs and technical records
| What | How long |
|---|---|
| Log of Claude's calls: for every tool call the tool, a short summary of its input, the outcome, whether the app had to repair the input and, for the AI inside the app, its model | 90 days (your setting, 7 to 365 days) |
| Records of background work (catalog sync, applying, generation) | 90 days after the work ended (your setting, 7 to 365 days) |
| Records of notifications Shopify sent the app (topic and time) | While the app is installed; the record that a deletion request was handled stays (its topic and your store's address) |
| Rate-limit counters for the connection endpoints, kept as a fingerprint (hash) of the network address, never the address itself | They expire after two minutes and are deleted the next night |
| Technical log lines at our hosting provider and our log service: the address path without its query, the status, the store's domain and internal ids. Never passwords, tokens, keys or the texts of your store | [TODO: Jop] the retention of DigitalOcean's runtime logs and of Better Stack (plan dependent) |
Every night the app deletes what is past its retention, in batches; on a very large store it can take a few nights to catch up.
3.4 Cookies and browser storage
apcm_session: keeps you logged in when you use the app outside the Shopify admin (strictly necessary, HTTP only, at most 7 days).apcm_oauth: protects the Shopify login against forgery while you log in (strictly necessary, at most 10 minutes).- Inside the Shopify admin the app uses no cookies: Shopify's App Bridge gives it a short-lived token for every request.
- Your browser's local storage remembers one display choice ("hide unchanged text" in the change reader). Nothing is sent from it.
4. Why we process the data (legal bases)
- To provide the app (performance of our contract with you, GDPR article 6(1)(b)): your store's content, the work on it, the people who log in and their logins, the backups and the billing records.
- To keep the app secure and working (our legitimate interest, article 6(1)(f)): technical logs, rate limits, the log of Claude's calls and records of background work.
- Legal obligations (article 6(1)(c)): billing records as far as tax law requires. [TODO: Jop] Confirm whether invoices or billing data must be kept longer than the app keeps them (Shopify issues the invoices to merchants).
5. Who receives data
We share data only as far as needed for the work you ask the app to do.
| Recipient | What and why | Where |
|---|---|---|
| Shopify | The app reads your catalog and writes the changes a person applies, through Shopify's Admin API with your store's token. Subscriptions and usage charges go through Shopify's billing. | Shopify's own terms and privacy policy |
| DigitalOcean (hosting) | Runs the app and its database; everything in section 3 is stored there. | Amsterdam, the Netherlands (EU) |
| Better Stack (logs and uptime) | Receives the app's technical log lines (section 3.3, without the texts of your store, tokens or keys) and checks every minute that the app answers. | [TODO: Jop] region of the Better Stack account |
| Your own AI provider (Anthropic, OpenAI, or an OpenAI-compatible endpoint you set up), only when you add your own key | The assistant, background generation and the fact check send the store content they work on (the items' texts, your style guide, house rules and approved knowledge, your messages and instructions) to your provider, under your own agreement with that provider. | Depends on your provider |
| Host Your AI (our AI), when you choose "Use our AI", and for the steps you start on Home | The same content goes to Host Your AI with our key, for the assistant, generation and the fact check. On Home, when you start them: your measurements, AI instructions and a sample of your items (the first impression), or the items of an exercise. Usage comes from the AI budget in your plan first, then from your Shopify bill. | EU |
| Host Your AI, for the fact check of items from Claude | When the fact check of items from Claude is on (Settings > AI) and your store has no AI of its own in the app, each new item Claude prepares goes to our AI: its current and new text, the approved knowledge and the pages it cites. Billed to you; skipped without a subscription or room under your cap. | EU |
| Anthropic, through your own Claude | When you connect Claude, what Claude reads through the app's tools (catalog, change sets, the briefing with your style guide and knowledge) goes to Anthropic under your own Claude account and agreement. | Anthropic's own terms |
| Your provider's web search (Anthropic or OpenAI), when internet search is on | The search words the AI chooses go to your provider's own web search. Store content is not sent on purpose; a product name can be part of a search. | Depends on your provider |
| Our search service (Brave Search or Tavily), with our AI or an OpenAI-compatible endpoint and internet search on | The search words the AI chooses. The AI is told never to put store content in a search; a product name can be part of one. | United States |
| Websites the AI reads | The AI can open a public page whose address came from a search result or your message. The website receives a request from our server for that page, nothing of your store. | Anywhere |
Which of these apply to your store depends on your choices; Settings > Privacy marks the ones your store uses now.
AI providers and training. We do not use your data to train or improve AI models, and we do not let our providers do so where we choose the terms (our AI and our search service). [TODO: Jop] Confirm in the Host Your AI, Brave or Tavily and Better Stack terms that they do not use API data for training and that a data processing agreement is in place. When you use your own key or your own Claude, your agreement with that provider decides how it handles the data.
Transfers outside the EU. The app and its database run in the EU. Data leaves the EU only for the recipients above that are outside it: our search service in the United States (search words only), and, by your own choice, your AI provider or Claude. [TODO: Jop] Name the transfer mechanism for the search service (for example the EU-US Data Privacy Framework or standard contractual clauses).
Authorities. We disclose data to authorities only when the law requires it.
6. How we protect the data
- Every request travels over TLS. Shopify tokens and your AI keys are encrypted at rest (AES-256-GCM, with keys that we can rotate) and are never sent to the browser or written to a log.
- Login sessions and connection tokens are stored only as fingerprints (hashes).
- Every database query is limited to one store, so one store can never see another store's data.
- The AI can only prepare changes. Applying a change to your store is always a person on your team pressing a button, and every overwritten value is backed up first.
- Only owners can apply changes, manage keys and change retention; reviewers can review.
- AI output and backups: AI can and will make mistakes. Check the proposals and judge for yourself what the consequences of a mistake could be. We are expressly not responsible for incorrectly generated content. Changing many items at once is a risk to your data, so keep your own backups of your store as well. The terms of service say more about this.
- Access to the production systems is limited to Troef Media.
7. Deletion
- When you uninstall the app, its access to your store, every login and every Claude connection end at once. The rest is kept 48 hours, so a reinstall can carry on.
- 48 hours after an uninstall Shopify asks the app to erase the store's data. The app then deletes the store and everything that belongs to it, backups and logs of Claude's calls included. Only the record that this request was handled (its topic and your store's address) stays.
- Every night the app deletes backups older than your setting, finished change sets, conversations and generation runs older than your setting (never a change set with a backup that can still be restored), and the log of Claude's calls and records of background work older than your log setting.
- Customer requests from Shopify (customer data requests and customer erasure) find nothing, since the app holds no customer data.
- While the app is installed you can remove your AI keys (Settings > AI), switch off or delete knowledge (AI instructions), end logins (Settings > Team) and Claude connections (Settings > Claude connection), and change how long the app keeps backups, your work and logs (Settings).
8. Your rights
If you or someone on your team is in the EU or another place with similar laws, you have the right to access the personal data we hold about you, to have it corrected or deleted, to restrict or object to its processing, and to receive it in a portable form. Send your request to [email protected]. We answer within one month. To check that a request comes from you, we may ask you to send it from the email address the app knows or to confirm it from the Shopify admin.
You can also lodge a complaint with a data protection authority. In the Netherlands that is the Autoriteit Persoonsgegevens (autoriteitpersoonsgegevens.nl).
9. Children
The app is a business tool for Shopify merchants and their staff. It is not meant for children and we do not knowingly process data of children.
10. Changes to this policy
When we change this policy in a way that matters, we update the date at the top and tell the store owners through the app [TODO: Jop] (and by email to the store owner's address, if you want to promise that). The current version is always at the app's /privacy address.
11. Contact
Troef Media, [email protected]. [TODO: Jop] Postal address.
A Dutch version of this policy is available at the app's /privacy/nl address. If the two differ, the English version applies. [TODO: Jop] Or the other way round, as a lawyer advises.