Security at BrandGate
How we protect your catalog, orders and customer data.
- EU
- Data hosted in Ireland
- Every table
- Protected by row-level security
- HTTPS
- Encrypted in transit
- Stripe
- Handles all card data
Infrastructure
Hosted in the EU and encrypted in transit.
EU data hosting
Your data lives in Supabase (Postgres and file storage) in the EU, in Ireland. The web application runs on Vercel.
Encrypted in transit
BrandGate is served only over HTTPS, so data is encrypted in transit.
Hardened responses
Pages cannot be embedded in other sites, and browsers are told not to guess content types.
Checked on every change
Type checks, tests, static analysis and a dependency audit run on every change. Installs use a locked dependency tree.
Data isolation
Each company's data stays its own.
Row-level security
Row-level security is enabled on every table, so the database itself decides which rows a person can read or change.
Views run as the caller
Database views run with the permissions of the person asking, not with elevated rights.
Server-side membership checks
Server functions look up company membership in the database instead of trusting company IDs sent from the browser.
Scoped file storage
Uploads sit in company-specific folders, and storage policies stop one company writing into another's. Invoice documents are only reachable by the server.
Query time limits
Statement timeouts of 3 seconds for anonymous and 8 seconds for signed-in database roles stop runaway queries.
Access
Two-factor authentication, roles and an audit log.
Two-factor authentication
Every account can enrol an authenticator app. Once enrolled, the database refuses access until the session has passed the second factor.
No bypass for enrolled accounts
A password reset or email link does not skip an enrolled authenticator, and removing one requires a fresh two-factor challenge.
Role-based permissions
Administrators invite team members and assign their role. Distributors and buyers have their own restricted roles.
Verified sessions
The server verifies each session on every request. Session cookies are Secure and SameSite.
Audit log
Account activity is recorded in an audit log you can search in Settings.
AI
BrandGate Central suggests. People approve.
Approval first
Central turns a request into a proposed action. A person approves it before it runs, unless your team has set a standing rule with limits for that kind of action.
Never more than the person can do
Approved actions run with the permissions of the person who approved them, and Central's tools are limited by role-based scopes.
Every action is logged
Each proposal and its outcome is recorded, including a receipt of what changed.
Payments and accounting
Payment card details stay with the payment provider. Accounting connections remain under company administrator control.
Card data handled by Stripe
Subscription payments run through Stripe Checkout. BrandGate never sees or stores card numbers.
Verified payment events
Stripe webhooks are checked by signature within a time window and processed once.
Controlled accounting connections
A company administrator authorizes supported accounting integrations. Access can be disconnected, and sync issues remain visible for review.
Your data
Take it with you. Delete your account.
Export
Export products, invoices, distributors and reports as CSV.
Account deletion
Delete your own user account from inside the BrandGate Central app. Products, orders and invoices belong to the company workspace and stay with it.
