Security
How we keep your information safe
You're handing us bills, meter numbers and sometimes a read-only view of your bank. That deserves a straight answer about how it's looked after.
Everything encrypted, both ways
Your connection to BILLOCKS is HTTPS only. Everything stored — database rows, uploaded documents, backups — is encrypted at rest on the platform we run on.
Documents kept private
Uploads go to private storage in a folder of your own. Nothing is publicly reachable: opening a document creates a link that works for 60 seconds and only for you.
One account can never read another
Every table carries row-level rules enforced by the database itself, keyed to your signed-in identity. It isn't a filter in the app that could be bypassed — the database refuses.
Bank connections are read-only
We ask for account information only. There is no payment permission, so nothing connected to BILLOCKS can move money. We never see or store your banking login.
Second factor for our own staff
Office and admin access requires an authenticator app on top of a password. Without it, admin screens and admin data refuse to load.
Least access, by role
Roles live in their own table, checked by the database, and are never taken from anything a browser sends. Agents see their own customers; admin functions are separate again.
Keys stay on the server
Secrets and API keys are held as server-side environment values. None is ever bundled into the pages your browser downloads.
Rate limiting
Sensitive actions — document reads, AI extraction, data requests, sign-in — are counted and throttled, so nobody can hammer them.
Audit logs
Applications, switches, consents, data exports and deletions are all logged with who did what and when. You can see your own history; we keep the record so anything disputed can be traced.
Backups
The database is backed up continuously by the platform with point-in-time recovery, encrypted in the same way as the live data.
Sessions that expire
Signing in gives you a short-lived token that refreshes while you're active and stops working when you're not. Signing out ends it immediately, on that device.
The usual web attacks
No raw SQL is built from anything you type; every server call validates its input against a strict schema; forms are protected against cross-site posting; and content is escaped on render rather than injected as HTML.
Dependencies kept current
Third-party packages are scanned for known vulnerabilities and updated on a fixed cycle, with security fixes taken out of cycle.
If something goes wrong
We have a written breach procedure. In short: we contain it, work out who and what is affected, and where there's a risk to you we tell you and the Information Commissioner's Office within 72 hours of becoming aware. We don't sit on bad news.
Found a hole? Please tell us
Report anything you find through our contact form and we'll take it seriously. Please don't test against other people's accounts or data.
Your side of it
- Use a password you don't use anywhere else.
- Keep your email account secure — a sign-in link goes there, so it's the key to the door.
- Nobody from BILLOCKS will ever ask you for your banking login or a one-time code. If someone does, it isn't us.