Setvani / Legal
Privacy Policy.
Effective 29 September 2026
Setvani helps Shopify stores send custom-product proofs to customers, collect a decision about a specific version, and keep the result with the order. This policy explains the information used by our website and app, who receives it, and how to request access or deletion.
Contact and privacy roles
For privacy requests, contact privacy@setvani.com. For product support, contact support@setvani.com.
For information a Shopify merchant provides about its customers and orders, the merchant decides why the data is used and Setvani processes it to provide the service. We decide how information is used to run our website, support, security and business operations. Customers should normally contact their store first about an order; we will help the store handle its request.
Information we handle
- Store and staff: Shopify store identity, installation and access details, authorized staff identity and app activity, plan and subscription status, and support messages you send us.
- Orders and customers: the Shopify order identifiers and limited order/customer details needed to address a proof invitation, identify a proof, and show its status to the store. This can include the customer's email address.
- Proofs and responses: files a store uploads (JPG, PNG or PDF), version records, the customer's approval or request for changes, optional response text, timestamps, notification status and order tags.
- Technical records: essential session and security data, request and error logs, and delivery events needed to operate, protect and troubleshoot the service.
A customer can review through a private link without creating a Setvani account. Anyone given that link may be able to view the proof, so stores and customers should keep it private. Our interactive website example runs in the browser and does not submit its choices or sample proof data to the app.
How we use information
We use this information to install and authenticate the app; connect a proof to the correct Shopify order; store and display the current proof and earlier versions; send invitations, optional reminders and response notifications; record a customer's explicit decision; update proof status and order tags; manage Shopify plans and limits; answer support requests; and detect errors or misuse. We do not sell merchant or customer information or use uploaded proofs to train generative AI.
Shopify handles plan confirmation and charges. Setvani receives subscription status to apply the correct plan; we do not collect payment card details. The website does not use advertising trackers or analytics cookies. The app uses only the session and security mechanisms needed for access and the review flow.
Who receives information
We use Shopify for store, order, app and billing integration; Hetzner for application and database hosting; Cloudflare R2 for private proof-file storage and Cloudflare for domain and email routing; and Resend for transactional email and delivery events. Each receives only information needed for its role. Authorized Setvani operations access is limited to support, security and maintenance needs. We may also disclose information where law requires it.
These providers and the people using a store can be in different countries. We do not promise that all information stays in one country. Their services and applicable contracts govern their processing. A store may also receive proof decisions and status in its own Shopify account.
How long information is kept
Published proof files are scheduled for deletion 180 days after publication, and inactive unpublished drafts after 7 days. A customer review link expires no later than 30 days after issue, unless revoked earlier. After a plan ends, a limited export window can remain available for up to 30 days; cancellation or a privacy request can shorten access or retention. Expiry is handled by background deletion work, so it is a scheduled limit rather than a promise of deletion at an exact second.
Order and decision history needed by an active store is retained while the service is in use, subject to deletion requests and the store's lifecycle. Raw webhook bodies are scheduled to be purged after 7 days; operational and notification attempt records have a 30-day cleanup window. Minimal records required to complete or demonstrate a privacy request may be kept temporarily. Some information held by Shopify, email recipients or a merchant is outside Setvani's deletion controls. We do not claim a particular backup-retention period here; if an independent backup is introduced, this policy will be updated before it holds customer data.
Security
Setvani uses HTTPS for public traffic, private file storage, restricted service access, and controls that separate one store's data from another. We limit access to authorized operations and check requests before serving private proofs. No online service can guarantee absolute security. Please report suspected unauthorized access to privacy@setvani.com.
Access, deletion and questions
Merchants can contact privacy@setvani.com to request access, correction, export or deletion of information we control. Customers should first contact the Shopify store that sent the proof; the store can submit the relevant Shopify privacy request or ask us to assist. We verify requests before disclosing data and may need to retain limited information where legally required. Shopify privacy webhooks are used for customer data requests and redaction. We handle applicable requests under the relevant law and platform rules.
If you are in a jurisdiction with additional privacy rights, you may raise those rights at the same address. You can also contact your local data-protection authority where applicable. You may stop optional emails by contacting the store or us; service messages needed to complete an active proof may still be sent until the store changes or ends that proof.
Changes to this policy
We may update this page when the product, providers or legal requirements change. The effective date above identifies the current version. Material changes affecting active stores will be communicated through the app or a service message when appropriate.