← Bucketback

Privacy Policy

App: Bucketback (the "App") Operator: Ravish Labs, a sole proprietorship of {{OWNER_LEGAL_NAME}}, {{STREET_ADDRESS}}, Bengaluru, Karnataka {{PIN}}, India ("we", "us") Contact: privacy@{{DOMAIN}} Effective: {{DATE}} · Version 1.0

This policy explains what data the App accesses when a Shopify merchant ("you") installs it, where that data goes, how long we keep it, and your rights. It is written to meet Shopify's privacy requirements for App Store apps (https://shopify.dev/docs/apps/launch/privacy-requirements), the EU/UK GDPR, the California CCPA/CPRA, and India's Digital Personal Data Protection Act, 2023 (DPDP Act).

1. Roles

For store data processed on your instructions (backing up and restoring your catalog, content and themes) you are the controller (GDPR) / business (CCPA) / data fiduciary (DPDP) and we are your processor / service provider / data processor. Section 11 contains the processing terms that apply to that relationship.

For the limited account data we hold about you as our customer (section 2.3), we are the controller.

2. What we access and store

2.1 Store data accessed through the Shopify Admin API

On install the App requests these access scopes: read_products, write_products, read_content, write_content, read_online_store_navigation, write_online_store_navigation, read_themes, write_themes, read_discounts, write_discounts. Using them, the App reads and (only during a restore you start) writes:

We do not request access to orders, customers, inventory levels, checkouts, payments or any other scope. The App does not receive Shopify "protected customer data" and does not process end-customer personal data. If a merchant stores personal data inside a product, page, metafield or theme file, it is backed up as-is; see section 6.

The App also receives webhooks from Shopify for product, collection and theme create/update/delete events, app/uninstalled, app/scopes_update, and the three mandatory compliance topics (section 7).

2.2 Where store data is stored

Your bucket (primary copy). Every backup is written as plain JSON and Liquid files to an S3-compatible storage bucket that you own and configure (for example AWS S3, Cloudflare R2, Backblaze B2 or MinIO). We are not the controller or processor of data at rest in your bucket beyond writing to it and reading from it on your instruction. Its location, encryption, retention and access are governed by your agreement with that storage provider.

Our database (working copy). To compute diffs and the change log we keep, on our servers:

2.3 Account and configuration data

2.4 Technical data

Standard server logs (IP address, user agent, request path, timestamp, error traces) for security and debugging. We do not use advertising cookies, third-party analytics beacons, or any tracking inside the App. The App sets only the session cookies required by Shopify App Bridge/session-token authentication.

3. Why we process it (purposes and legal bases)

Purpose Data Legal basis (GDPR)
Run backups, diffs, change log and restores you request 2.1, 2.2 Performance of contract (Art. 6(1)(b)); your instructions as controller
Operate your account, bill through Shopify, send service notices 2.3 Performance of contract
Security, abuse prevention, debugging 2.4 Legitimate interests (Art. 6(1)(f))
Legal compliance (tax records, lawful requests) 2.3 Legal obligation (Art. 6(1)(c))

We do not sell personal data, do not "share" it for cross-context behavioural advertising (CCPA), do not use it to train models, and do not use it for any purpose other than providing the App.

4. Who can see it (subprocessors)

Subprocessor Purpose Location
Shopify Inc. / Shopify International Ltd Platform, APIs, webhooks, billing, session auth Canada / Ireland / global
{{HOSTING_PROVIDER}} (e.g. Fly.io / Railway / Hetzner) Application and worker hosting {{REGION}}
{{POSTGRES_HOST}} (e.g. Neon / Supabase / self-hosted on the above) Managed PostgreSQL for the data in 2.2-2.3 {{REGION}}
{{EMAIL_PROVIDER}} (e.g. Postmark / Resend) Transactional service emails {{REGION}}
Your storage provider (AWS, Cloudflare, Backblaze, your MinIO host) Your bucket; engaged by you, not by us Your choice

We will update this table and notify you by email at least 14 days before adding a subprocessor that will handle your store data. No other third party receives your data except as required by law.

5. International transfers

We are established in India. Data in 2.2-2.4 is stored with the hosting and database providers above in {{REGION}}. Where EU/UK personal data is transferred to India or any other third country, we rely on the EU Standard Contractual Clauses (and the UK Addendum) incorporated into section 11, plus the technical measures in section 8.

6. Personal data inside your store content

Shopify catalog, page, menu, discount and theme data is normally not personal data. If you place personal data in those objects (for example a customer's name in a page or a metafield), the App will copy it faithfully into your bucket and into our working copy, and you remain responsible for having a lawful basis for that. We never attempt to extract or index personal data from those fields.

7. Shopify compliance webhooks

The App subscribes to all three mandatory topics, verifies the Shopify HMAC on every request (rejecting invalid signatures with HTTP 401), and acknowledges with HTTP 200:

8. Security

9. Retention

Data Kept until
Current-state working copy, metadata, change log, configuration shop/redact (48 h after uninstall) or your written request, whichever first
Sessions / access tokens Uninstall (app/uninstalled)
Backups in your bucket Never touched by us; controlled by you and your bucket lifecycle rules
Server logs 30 days
Billing and tax records (invoice-level only, no store data) 8 years, as required by Indian tax law
Support email 2 years

10. Your rights

Merchants, store staff whose names appear in the change log, and any other individual may ask us to access, correct, delete, restrict or port personal data we hold, or object to processing, by emailing privacy@{{DOMAIN}}. We answer within 30 days (shorter where the law requires). EU/UK residents may complain to their supervisory authority; California residents have the rights in the CCPA/CPRA (we do not sell or share data, so there is nothing to opt out of); Indian data principals may escalate to the Data Protection Board of India. We will not discriminate against you for exercising a right. For requests about data in your store, we will usually act on your instruction as controller.

11. Data processing terms (apply when you are the controller)

  1. We process store data only on your documented instructions, which are: install, backup, diff, change log, restore, export, and deletion as described here.
  2. Persons we authorise are bound by confidentiality.
  3. We implement the measures in section 8.
  4. We engage only the subprocessors in section 4 under written terms no less protective than these, and remain liable for them.
  5. We assist you with data-subject requests, security, breach notification and DPIAs as far as the App's design allows.
  6. On termination we delete the working copy as in section 9; your bucket copy is already in your possession.
  7. We make available the information needed to demonstrate compliance and allow audits, at your cost, once a year on 30 days' notice, under NDA.
  8. Transfers: the EU SCCs (Module 2, controller-to-processor) and UK Addendum are incorporated by reference; the parties' details and annexes are this policy's sections 2, 4 and 8.

12. Children

The App is a business tool for Shopify merchants and is not directed at anyone under 18.

13. Governing law and changes

This policy is governed by the laws of India, without prejudice to protections you have under the GDPR, UK GDPR or CCPA. We will post changes here, update the version and date, and email you at least 14 days before any change that reduces your rights.

14. Contact

Ravish Labs ({{OWNER_LEGAL_NAME}}), {{STREET_ADDRESS}}, Bengaluru, Karnataka {{PIN}}, India privacy@{{DOMAIN}} · support@{{DOMAIN}} Grievance officer (DPDP Act / IT Rules): {{OWNER_LEGAL_NAME}}, same address and email; acknowledges within 24 hours, resolves within 15 days.