Last updated: 1 August 2026
This page is POdraft's written security policy: what we collect, how it's protected, how long we keep it, and what we do if something goes wrong. It's the policy our Shopify Protected Customer Data access is built on.
All traffic to and from POdraft is served over HTTPS/TLS (enforced by Cloudflare Pages). Data at rest lives in Cloudflare D1, which encrypts data at rest on Cloudflare's underlying storage infrastructure. Shopify access tokens are stored per-shop and are never exposed to the browser or to any third party.
Only the merchant's own authenticated embedded-app session (verified via a Shopify session token on every request) can read that shop's data. There is no shared or cross-shop access, no admin UI that lists other merchants' data, and no third party is given access to the database. Internal access to production infrastructure (Cloudflare account, D1) is limited to the app's single operator and gated by account-level 2FA.
Purchase-order records (the email metadata, attachment-derived text, and extracted line items) are automatically deleted 90 days after they were received, whether or not the merchant acted on them, via a lazy cleanup pass that runs on every inbound-webhook and app-load request. Audit-log entries follow the same 90-day window. Uninstalling the app deletes all data for that shop immediately — shop record, purchase orders, and access log — via Shopify's app/uninstalled and shop/redact webhooks. A customers/redact request deletes that specific customer's purchase-order records immediately. A customers/data_request is logged and the held records are forwarded to our support address so the merchant can fulfil the request.
DELETE statements, so cleanup can safely run repeatedly without side effects or partial state.All staff accounts with access to podraft infrastructure (hosting, database, source control, support mailbox) are required to use strong, unique passwords managed via a password manager, with two-factor authentication enabled wherever the provider supports it. Credentials are never shared or reused across services, and access is revoked immediately when no longer required.
If a security incident is suspected:
Report a security concern or data request via the support form.