Security
Last updated October 30, 2026
Flower shops trust us with their customers’ names, addresses and messages. This is how we protect them.
Encryption
- In transit: every connection to the app uses HTTPS (TLS).
- At rest: the database runs on Railway, whose storage is encrypted (AES-256). Shopify access tokens and the shop’s connected-service credentials are encrypted again inside the app with AES-256-GCM.
- Backups: a daily copy of the database (kept 7 days) and a weekly one (kept 28 days), each encrypted with AES-256-GCM before it is written, on storage separate from the database.
Test and real data stay apart
Our automated tests run on throwaway in-memory databases, and our demo uses made-up sample shops. Real shop data is only in production and is never copied to development.
Who can reach the data
- Only the company owner has access to production systems.
- All admin accounts (hosting, Shopify, code) use strong, unique passwords and two-factor sign-in.
- Inside the app, each shop sees only its own data, and its staff see what their role needs. Staff sign in with one-time text links, not shared passwords.
- The app keeps an access log of who opened orders, customers, the inbox and routes. Shops can see it on the app’s Privacy page; it is kept for 12 months.
Preventing data loss and leaks
- We ask Shopify only for the permissions features need.
- No customer details in logs, error reports or analytics.
- Everything a customer or AI writes is treated as untrusted text and escaped before it is shown.
- Shopify’s requests are verified (signatures on webhooks and app proxy calls, signed session tokens).
- No bulk exports beyond a shop’s own data, and old personal data is cleared on a schedule (see how long we keep it).
- Encrypted backups let us restore after a mistake or failure.
If something goes wrong
- Detect: crash alerts from our host, error logs, and the access log.
- Contain: cut the access or turn off the feature involved, rotate keys.
- Assess within 24 hours: what happened, which shops and data are affected.
- Notify within 72 hours: the affected shops and Shopify, and authorities where the law requires it.
- Fix and learn: repair the cause and write down what changes so it does not happen again.
Report a problem
Found a security issue? Email hello@floristpilot.com with “Security” in the subject. We answer within 2 business days.