Merci AI Assistant Privacy Policy

Effective date: October 30, 2026

Contact: merci.bot.support@gmail.com

Merci AI Assistant ("the app", "we") is a Shopify app that adds an AI shopping assistant to a merchant's online store. The assistant answers shoppers' questions about the store's products, prices, variants, discounts and availability. This policy explains what data the app accesses, stores and shares, and how it is deleted.

1. Who this applies to

2. Data we access from Shopify

The app asks Shopify for one permission (access scope): read_products, which gives read-only access to product-related data. The app cannot read orders or customers and cannot change anything in the store.

With this permission the app reads product data and keeps only the store's public product catalog: products that are active and published, with their title, handle, vendor, product type, tags, plain-text description (shortened to 2,000 characters), featured image URL, options, variants, prices, compare-at prices and whether each variant is available for sale. It also reads the store's currency, its primary domain (to build links to product pages) and its Shopify shop ID.

3. Data we store

All data in the app's database belongs to a store (identified by its *.myshopify.com domain); the database holds no data about individual shoppers. The hosting platform's request logs are described in section 8.

DataWhat exactlyWhy
Access sessionThe store's domain, the offline access token and refresh token Shopify issues to the app, granted scopes, token expiryTo call Shopify's Admin API for the store
Product catalog cacheThe public product data listed in section 2To answer shoppers quickly without querying Shopify on every message
Catalog sync stateCurrency, times of the last sync and last attempt, a fixed error message if a sync failedTo keep the cache up to date
Usage countersPer store and UTC day, totals only: number of assistant replies, AI input and output tokens, chats started, replies that showed products, replies without products to show, successful "Add to cart" clicks in the chat and "Contact the store" clicks. Kept for 90 days (today and the 89 days before)Daily limits, and the usage and analytics shown to the merchant
PlanThe store's plan (Free, Pro or Plus) and the last paid plan, its Shopify shop ID, the time of the first install (Free periods count from it), the current billing period dates, the number of replies used in the period, the time of the last plan checkPlan limits
Uninstall markerThe store's domain and the time of the uninstall (when the deletion was requested and when it finished)Makes sure the deletion completes, and prevents data from being written back after an uninstall (see section 7)

The data is stored in the app's database on Railway (railway.com), in its US East region (Virginia, United States).

4. Data we do not store

5. Data in the shopper's browser

The chat widget keeps the current conversation (up to 40 recent turns), the products it has shown, and a random anonymous visitor ID in the browser's sessionStorage. This data stays in that browser tab and is removed when the tab is closed. The widget does not use cookies or localStorage. Starting a new chat clears the conversation.

For the merchant's analytics the widget tells the app, through the same App Proxy, that a new chat started (a yes/no flag sent with each message, "yes" only with the first one), that an "Add to cart" in the chat succeeded, or that "Contact the store" was clicked. Such a report contains only the kind of event: no product, link, text, visitor ID or other identifier. The app adds one to that day's total for the store.

6. Data we share

The app does not send OpenAI the visitor ID, IP addresses or any Shopify customer data. Requests go to the Chat Completions endpoint with OpenAI's store: false option. OpenAI processes this data on our behalf, as a data processor, under the OpenAI Data Processing Addendum that is part of its terms for the API (OpenAI Data Processing Addendum), and under its API data controls (Data controls in the OpenAI platform). According to that page, data sent to the OpenAI API is not used to train OpenAI's models unless the API customer opts in. We have not opted in: sharing of inputs and outputs, feedback, and evaluation and fine-tuning data with OpenAI is turned off in our OpenAI account. For this endpoint OpenAI keeps abuse monitoring logs, which may contain the request content, for up to 30 days unless longer retention is required by law or is reasonably necessary to protect OpenAI's services or any third party from harm.

We do not sell data and do not share it with anyone else.

7. Retention and deletion

8. Logs

Server logs contain the request method, path (without query string), status code and duration, plus operational messages such as the store's domain, numbers of products, messages and tokens, plan names and error reasons; an unexpected server error can be logged with its technical details. The app's own log lines contain no chat messages, no access tokens and no shopper data.

The hosting platform (Railway) also logs each HTTP request to the app: method, path (without query string), host, status code, timing, size, a request ID, the network region, the IP address the request came from and the browser's user-agent string. Storefront chat requests reach the app through Shopify's App Proxy, so for them the logged IP address belongs to Shopify's proxy network, not to the shopper; the user-agent is the shopper's browser's. For requests that come directly to the app, such as the app page in the Shopify admin or this policy page, the logged IP address is the visitor's. Railway keeps the server logs and these request logs for 7 days on our current Railway plan.

9. Security

10. Changes and contact

We will update this policy when the app's data handling changes. Questions: merci.bot.support@gmail.com.