Last updated: October 22, 2026
Replenly ("the app", "we", "us") is a Shopify app that helps merchants manage replenishment, purchase orders, receiving, ingredients, and physical stocktakes. It is operated by an individual developer. This policy explains what data the app processes, why, and how it's protected.
When a merchant installs Replenly, we process:
We do not extract your customers' names, emails, phone numbers, shipping/billing addresses, or payment details from Shopify order data. Shopify webhook and API payloads can contain customer fields. We may transiently receive and process those payloads to authenticate and handle the Shopify request, but Replenly does not extract or persist those customer fields in its operational records. Replenly stores a customer's contact details only when you or your staff choose to enter them in the app yourselves, such as ship-to details on a purchase order, as described above. The order and order-line identifiers we retain exist only to compute how quickly a product sells and to deduplicate repeated webhook deliveries; they are never linked to who bought the item.
Every piece of data listed above is used to operate the app's replenishment, reorder suggestions, purchase-order, ingredient, and stocktake workflows. We do not use your shop or customer data for advertising, we do not sell it or share it for advertising or independent commercial purposes, and we do not build profiles of your shoppers. We disclose data to service providers acting on our behalf as described below. (See "Advertising attribution on our public marketing pages" and "Analytics on our website and App Store listing" below for the separate, limited measurement of how visitors and merchants find and install Replenly.)
Visitors to Replenly's public marketing pages (such as replenly.app and its guides) sometimes arrive from an online ad or marketing campaign, carrying attribution parameters in the page URL, for example a Google click identifier (gclid, gbraid, or wbraid) or standard UTM campaign parameters (utm_source, utm_medium, utm_campaign, utm_term, utm_content). When present, we forward those specific parameters, unchanged, onto the link we show for installing Replenly from the Shopify App Store, solely to measure which marketing campaigns lead visitors to the App Store listing and install funnel. Links from our pages to the App Store listing also carry our own campaign tags (for example utm_source=replenly_site) so we can tell which page and button a visitor used. When a visitor follows one of these links, the parameters are sent to Shopify as part of the App Store address.
A click identifier can be linked by the ad provider to a specific ad interaction, so we treat these parameters as potentially personal data. We do not store these attribution parameters in our merchant PostgreSQL database, attach them to a Shop or Session record, use them to profile Shopify customers, or sell them. They are read from the page address only for the purpose described above. replenly.app does not load any Google Ads or Google Analytics script and does not set any advertising cookie.
replenly.app is hosted by Cloudflare and uses Cloudflare Web Analytics to count page views and measure page-load performance. For each page view, Cloudflare's script reports the page path, the referring site, browser, operating system and device type, and Cloudflare reports the visitor's country. Cloudflare states that Web Analytics does not use cookies or local storage and does not fingerprint individuals by IP address or browser details. Cloudflare necessarily receives a visitor's IP address when it serves the page and the analytics request; we see only aggregated reports, not individual visitors or IP addresses.
We may also connect a Google Analytics 4 property to Replenly's Shopify App Store listing using Shopify's listing-tracking feature. When it is connected, Shopify sends that property events about visits to the listing, clicks on its install button and completed installs, together with any campaign parameters in the listing address, and Google Analytics on the listing page may use cookies or similar identifiers. Shopify documents that the install event includes the installing store's Shopify shop ID, shop name and shop URL. Google processes this data as our analytics provider. We use it only to measure how merchants find and install Replenly, not to profile your customers.
Shopify independently operates the Shopify App Store, including its own analytics and tracking on the listing page, under Shopify's own privacy policy and those of its analytics providers.
Data is stored in a managed PostgreSQL database. It's encrypted in transit (TLS) and at rest, and access is restricted to the systems that run the app. We don't grant broad third-party access to your shop data.
We rely on Shopify for the platform integration and on a small number of infrastructure and delivery providers to run the app. The infrastructure and delivery providers act on our behalf and are bound by their own security and confidentiality obligations:
None of these providers is given access to your data beyond what's necessary for the purposes described above. Sentry is limited to the diagnostic telemetry described above, is not initialized on the public marketing, terms, or privacy pages, and is not used to process your shop records.
If you connect a Slack incoming webhook, low-stock summaries (such as product titles, SKUs, quantities, supplier names and purchase order references) are also sent to the Slack workspace you chose. Slack is not a Replenly processor; you control that destination and can disconnect it in Settings.
shop/redact webhook, which Shopify normally issues about 48 hours after an app is uninstalled. When the delivery can be correlated safely to that uninstall generation, we begin the deletion promptly and drive it to completion (retried automatically until it succeeds). If Shopify's event clock is missing or invalid, we record the authenticated delivery for safe operator resolution rather than risk deleting a replacement installation. Backup copies are normally pruned after 30 days (see Backups below), and we retain only minimal redaction metadata (hashed identifiers, never the data itself) as necessary to prevent deleted data from being restored.We keep off-site database backups for disaster recovery and target pruning them after 30 days. Automated pruning runs nightly; if a provider or configuration failure prevents cleanup, older copies may remain until pruning succeeds and the failure is recorded for operator follow-up. Because of this, data you delete (including data removed by an uninstall or a redaction request) may persist in a backup beyond that target period. The supported restore process keeps deletion/redaction state separately from ordinary backups and reapplies that state after restoring, which is designed to prevent a restored backup from reactivating data that was already deleted or redacted. This protection depends on the deletion state having been durably recorded and on the supported restore process being used.
Replenly implements Shopify's three mandatory webhooks:
The two customer requests above cover the order-derived records described in this policy. They do not reach ship-to details typed on a purchase order, because those are not linked to a Shopify order; we handle them on your request as described under "What data we process". A copy already emailed to a supplier is held by that supplier, so you would need to ask them to delete it.
Subscription billing is handled entirely by Shopify's billing system. We never see or store your payment card details.
If this policy changes, we'll update the date at the top of this page. Continued use of the app after a change means you accept the updated policy.
Email vkundar@gmail.com.