Where your supplier and certificate data is stored
Your supplier records, expiry dates and the certificate documents behind them are held on Amazon Web Services, in Certly's own Postgres database, and uploaded files sit in that same database rather than in a separate shared file store. This page sets out everything else that is stored and why, who else touches it, how deletion, export and erasure work, and which assurances are not in place yet.
Where the data lives
Certly runs on Amazon Web Services. Your supplier list, the required certificate types against each supplier, expiry dates, alert settings and chase history are held in the product's own Postgres database there.
The certificate documents themselves, the PDFs, PNGs and JPEGs that you upload or that a supplier sends through an upload link, are stored in that same database rather than in a separate shared file store. When an auditor or an IT reviewer asks where the allergen declarations, CoAs and audit certificates actually sit, that is the whole answer: one database, on AWS, scoped to your plant.
It is a short answer on purpose. There is no document store standing beside the database, no third tool holding the files, and nothing to reconcile between the two when a reviewer asks for the version of a declaration that was current on a given date.
What is stored, and why
| What is stored | Why it is held |
|---|---|
| Your name, email address and password, stored hashed | To sign you in and keep the account yours |
| Your site's name and alert settings | To head the PDF export, name your plant in chase emails and time the expiry reminders |
| Supplier company names, contact names and contact email addresses | To track each supplier's certificates and chase the right person when one is due |
| Certificate documents in PDF, PNG or JPEG, with issue and expiry dates, including versions replaced by a renewal | To compute certificate status, build the dashboard and its PDF export, and answer an auditor asking for the document that was valid on a past date |
| The sending account you connect: from address, mail server, sign-in name, and the mailbox password or API key, encrypted before it is stored | So chase emails can leave from your own mailbox, which is what keeps them out of a supplier's spam folder |
| A log of every chase email: recipient, time sent, delivery result and opens | So you see what was actually sent and delivered rather than assuming |
| Sign-in session records, including IP address and browser | To keep sessions secure and let you stay signed in |
| A record of the product actions you complete, a chase sent, a certificate uploaded, a PDF exported, and when you last used the app | To see which parts of the product earn their keep and whether people come back; it stays in Certly's own database, no third party analyses it, and records older than 16 weeks are deleted |
| Your subscription status, mirrored from Stripe | To know which plan your site is on; card numbers never reach our servers |
That list is the whole list
Nine categories, and nothing beyond them. The written declaration the table is drawn from once named one more, a multi-site price request holding a number of sites, a note and an email address. No such feature exists in the product, so that line was taken out rather than left standing as a claim about data Certly never collects.
It matters in both directions when you are filling in a due diligence questionnaire. An over-long list invites questions about data that was never gathered, and a short one has to be honest about everything that is. Where the product adds a surface that collects something new, this is the list that changes with it, which is why the sending-account credentials and the record of product actions appear here by name rather than under a heading like operational data.
How people sign in, and who can read your plant's records
People sign in with an email address and a password.
Certly is single-site and single-tenant per plant, and every supplier and certificate query is scoped to the signed-in user's plant by design: reads are filtered to that plant, and the scoping is tested route by route across the supplier API, the certificate API and the dashboard loaders. We describe it as the design rather than as an audited guarantee, because no independent security audit has been carried out.
The sibling page on plant level data isolation sets out how that scoping holds across the dashboard, the supplier list and the PDF export, and there is a separate page on how sign-in works today, including single sign-on and two-factor authentication, neither of which is in place yet.
Deleting data, taking a copy, and how long it is kept
Deleting the account
Delete your account from Settings, Site details, confirming with your email address. Your sites, suppliers, certificate documents, chase history, settings and sign-in details are removed at once, and any live subscription is cancelled. The sibling page on deleting your account walks through what an auditor would no longer be able to ask for afterwards.
Taking a copy first
The same screen downloads a JSON file of your data before you delete anything, so the supplier records, dates and chase history do not have to be re-keyed somewhere else to be kept.
Erasing one supplier contact
A supplier contact's name and email can be erased on their own from that supplier's page, through a right-to-erasure action for supplier contact personal data. A confirmation step spells out what will be removed, the contact name and email address, and what will remain, the certificate records.
One limit worth knowing rather than discovering: an upload link already sent to that contact stays valid until it is used or until it expires on its own, because each link is single use and time limited. Closing live links at the moment of erasure is work on the list, not behaviour we will claim today.
Retention while the account is open
Everything is kept while your account is open: expired certificates, the superseded versions a renewal replaced, and the chase history, because that trail is what an auditor asks for. A renewal never deletes the document it replaced, so the question of which declaration was valid last March has an answer. Archiving a supplier you no longer buy from keeps its documents and chase history on file and stops its reminders. Upload links expire on their own, and the record of product actions is the one thing with a shorter clock: anything older than sixteen weeks is deleted.
The outside services that touch the data
Amazon Web Services
Hosts the application and its Postgres database, which is where your supplier records and certificate documents sit. It also delivers chase and upload-link emails through Amazon SES for a site that has not connected its own sending account.
Stripe
Takes card payments and manages subscriptions. Card numbers never reach Certly's servers; only your subscription status is mirrored back.
Resend
Delivers chase and upload-link emails only for a site that connects a Resend account rather than its own mailbox, and reports opens back, which is what fills the chase log.
What that means for supplier contact details
Three outside services, and no more than three. The practical consequence of the mail path is worth stating plainly: a supplier contact's name and email address are passed to whichever sender delivers the message, so that the person receives the chase and the one-click upload link, and the delivery result comes back so the log reflects what actually happened rather than what was attempted.
Which sender that is depends on your own choice. Connect your plant's mailbox and the message leaves from your own sending account, with its credentials encrypted before they are stored. Connect nothing and Amazon SES carries it, on the same AWS account that hosts the database. Connect a Resend account instead and Resend carries it and reports opens back.
If you are working out your own controller and processor position on supplier contact details before you put them into any system, the guide on handling supplier contact data when you automate certificate chasing covers that side in full, and there is a short page on how right to erasure applies to a single supplier contact.
Questions
Where exactly are the certificate documents stored?
On Amazon Web Services, inside Certly's own Postgres database. Uploaded PDF, PNG and JPEG files are held in that same database rather than in a separate shared file store, alongside the supplier record and the issue and expiry dates they are tied to.
What happens to an old certificate when a supplier sends a renewal?
The version it replaced is kept rather than overwritten, with its issue and expiry dates, so an auditor asking for the document that was valid on a past date can be answered. Those superseded versions are held for as long as the account is open.
What is removed if I delete the account, and can I take a copy first?
Deletion runs from Settings, Site details, confirmed with your email address, and removes your sites, suppliers, certificate documents, chase history, settings and sign-in details at once, cancelling any live subscription. The same screen downloads a JSON file of your data first. The page on deleting your account sets out what an auditor would no longer be able to ask you for once it is gone.
Who sends the chase emails, and where are our mailbox credentials kept?
A site can connect its own sending account, and the from address, mail server, sign-in name and the mailbox password or API key are encrypted before they are stored. A site that connects nothing has its chase and upload-link emails delivered through Amazon SES on the same AWS account that hosts the database, and a site that connects a Resend account has them delivered by Resend, which reports opens back.
Does erasing a supplier contact revoke upload links already sent to them?
Not yet. Erasing removes the contact's name and email address and leaves the certificate records in place, but a link already sent to that person stays valid until it is used or until it expires on its own, because each link is single use and time limited. Closing live links at the point of erasure is on the list rather than something we will claim today.
Can another plant see our suppliers or certificates?
Certly is single-tenant per plant, and supplier and certificate queries are scoped to the signed-in user's plant by design, with automated tests covering that scoping across the API routes. We state it as the design rather than as an audited guarantee, because no independent security audit has been carried out.
Which AWS region is used, and can I choose it?
Certly does not publish a hosting region, and a choice of data residency region is not in place today. If a named region is a requirement for your plant, raise it with us before you evaluate rather than after.
Can you sign our data processing agreement?
A standard agreement ready to countersign does not exist yet. What does exist is a written record of every category of data stored and why it is held, kept to the categories the product actually collects, a self-serve JSON download of your data, and an erasure action for supplier contact personal data.