Data Management Policy
Effective 19 October 2026 · Company name TBC (ABN TBC), trading as Script Pilot AI
How we store, protect, keep and delete the data in Script Pilot.
In short
- Each account’s data is kept separate, encrypted in transit, and protected with hashing and encryption where it matters most.
- Data is stored in India (Mumbai) and processed by named providers, mostly in the United States.
- We keep data while your account needs it and delete it within 30 days of a deletion request, apart from billing records kept for tax law.
- If a breach is likely to cause serious harm, we notify you and the OAIC.
1.Purpose and scope
This policy sets out how we manage the data in Script Pilot across its life: what we hold, where it’s kept, how it’s protected, how long we keep it, and how it’s deleted. It covers all customer data in the app, the API, our website and our support mailbox, and it supports our Privacy Policy.
2.Our principles
- Collect only what’s needed to provide the service.
- Use it only for the reason it was given: running Script Pilot for you. We don’t sell data or use your content to train AI models.
- Keep each customer’s data separate: every request is checked against the account that owns the data.
- Protect it with encryption, hashing and limited access.
- Keep it only as long as it’s needed, then delete it.
- Be open about where it goes and who handles it.
3.Data we hold
| Category | Examples | How it’s protected |
|---|---|---|
| Account | Name, email, plan, last sign-in IP | Password stored only as a bcrypt hash |
| Brand and voice | Brand descriptions, voice settings, past posts used as voice examples | Visible only to the owning account |
| Content | Drafts, posts, schedules, check results | Visible only to the owning account |
| Files | Uploaded photos, videos and documents; AI descriptions of media | Stored at long, unguessable addresses (anyone with the address can open the file) |
| Connections | Connected-account ID, name, access tokens | Tokens encrypted (AES with an integrity check) |
| Access credentials | Session tokens, API keys | Stored only as one-way fingerprints (SHA-256) |
| Billing | Stripe customer reference, plan, billing dates | Card details never reach us; held by Stripe |
| Support | Emails and attachments you send us | Kept in our support mailbox |
| Technical | Server logs: IP address, browser details, requests | Held by our hosting provider for a short period |
4.Where data is stored and processed
Our main database and file storage are in India (Mumbai). Other providers process data in the United States and elsewhere. Each receives only what its job needs.
| Provider | Role | Location |
|---|---|---|
| Supabase | Database and file storage | India (Mumbai) |
| Render | Runs our application servers and background jobs | Outside Australia (Render data centres) |
| Vercel | Hosts our website; cookieless page-view analytics | United States and global edge network |
| OpenAI | Writes drafts, describes photos and videos, transcribes video audio, checks drafts | United States |
| Stripe | Payments and subscriptions | United States and other countries |
| Resend | Sends our emails and receives email sent to us | United States |
| Sentry | Error monitoring | United States |
| Google Fonts | Delivers typefaces used in the app | United States |
| LinkedIn (only if you connect it) | Publishes the posts you schedule | United States and Ireland |
5.Security controls
Technical
- Encryption in transit (HTTPS) for all traffic to the app, the API and our providers.
- Passwords hashed with bcrypt; session tokens and API keys stored as SHA-256 fingerprints; connected-account tokens encrypted.
- Every request is checked so that an account (or an API key) can only reach its own data. Automated tests check this.
- API keys carry only the permissions their owner chose, and can never reach account, billing or connection settings.
- Our database blocks direct public access to every table, and an automated test makes sure every new table does too.
- Requests to fetch web pages for voice examples are checked so they can’t reach internal systems.
Organisational
- Access to production systems and customer data is limited to the people who run the service, and only for running it, fixing problems or answering a customer’s request.
- Secrets such as encryption keys are kept in our hosting provider’s secure settings, not in our code.
- Changes to the service are reviewed and tested before they go live.
6.AI providers
We send OpenAI only what a request needs: brand details, topics, relevant voice examples and the media you’ve added. OpenAI doesn’t use data sent through its API to train its models, and keeps it for up to 30 days for abuse monitoring before deleting it. We don’t use customer content to train any model.
7.Retention schedule
| Data | How long we keep it |
|---|---|
| Account details (name, email, password hash, plan, last sign-in IP) | While your account is open. Deleted within 30 days of a deletion request. |
| Brand settings, voice examples, drafts and posts | Until you delete them, the brand or your account. |
| Uploaded photos, videos and documents (and their AI descriptions) | Until you delete the upload or your account. |
| Connected-account access tokens (encrypted) | Until you disconnect the account, delete the brand or delete your account. |
| API keys (stored only as a fingerprint) | Until your account is deleted. Revoked keys stay listed as revoked so past use remains traceable. |
| Sign-in sessions | Expire after 30 days; the records are removed with your account. |
| Change history of account, brand and post records (security log) | While your account is open, for security and to investigate problems. Erased with your account. |
| Billing records (Stripe customer and invoice details) | 5 years after the transaction, as Australian tax law requires. |
| Support emails you send us | As long as needed to help you and keep a record of the request. |
| Server logs (IP address, browser details, pages requested) | A short period set by our hosting provider, then deleted automatically. |
| Copies held by OpenAI for abuse monitoring | Up to 30 days, then deleted by OpenAI. Not used to train their models. |
8.Deletion
What you can delete yourself
- Posts, uploads and connected accounts: delete or disconnect them in the app.
- A brand: deleting it removes its posts, voice examples, connections and history. Files you uploaded for it stay in your account until you delete them.
- Voice examples from a file: adding a file with the same name replaces the earlier text.
Deactivating or deleting your account
Deactivating your account in Settings stops access and billing but keeps your data, so you can come back. To delete your account and its data, email support@scriptpilot.com.au from your account’s address. We:
- confirm the request comes from you;
- within 30 days, delete your account details, brands, voice examples, posts, uploaded files, connections, keys, sessions and security-log entries;
- keep billing records for 5 years, as Australian tax law requires; and
- confirm by email when it’s done.
Copies in providers’ short-lived logs (our hosting provider’s server logs, OpenAI’s 30-day abuse monitoring) expire on their own schedules.
9.Access, correction and copies
You can correct most information yourself in the app. For a copy of your personal information, or any correction you can’t make yourself, email support@scriptpilot.com.au. We’ll confirm your identity, respond within 30 days and won’t charge you.
10.Data breach response
If we suspect a data breach, we:
- Contain it straight away: revoke exposed credentials, close the gap and preserve evidence.
- Assess it promptly, and within 30 days at most: what data, whose, and whether it’s likely to cause serious harm.
- Notify: if serious harm is likely, we tell the people affected and the Office of the Australian Information Commissioner as soon as practicable, with what happened and what to do.
- Review: find the root cause, fix it, and record what we changed.
11.Review of this policy
We review this policy at least once a year and whenever we change how we store or process data, such as adding a provider or moving where data is held. Questions: support@scriptpilot.com.au.
Questions about this document: support@scriptpilot.com.au