Trust & Security
Payroll and bookkeeping data is sensitive — salaries, ID numbers, bank details. Here's specifically how Burse is built to protect it.
Row-level security
Every table that holds company data — employees, payslips, leave, journal entries, invoices — enforces row-level security in Postgres. A query can only ever return rows belonging to companies you own or have accepted access to; this is checked on every request, not just in the UI.
Access control
Owners see and edit everything for their own companies. Accountants only see what they've been explicitly invited into, and only after accepting — with a read-enforced view that can't approve payroll, change bank details, or edit salaries. Employees only see their own records.
Audit trail
Payroll runs, salary/bank-detail changes, accountant invites, and self-service edits are logged with who made the change and when, visible to the company owner.
South African hosting
Burse runs on Supabase's Cape Town (af-south-1) region for the database, and Vercel's edge network for the application — your payroll data is processed and stored in South Africa.
Backups
The underlying database is continuously backed up by our infrastructure provider, with point-in-time recovery, so a bad import or a mistaken deletion doesn't mean lost payroll history.
Encryption
All traffic to Burse is encrypted in transit (HTTPS/TLS). Passwords are hashed, never stored in plain text. Third-party integration credentials (e.g. accounting-system API keys) are stored in a secrets vault, not in application tables.
POPIA
Burse is designed to support your POPIA obligations as the employer (the "responsible party" for your employees' data) — role-based access, per-company data isolation, and an audit trail of who changed what are all built in. Burse acts as an "operator" processing that data on your instructions. This doesn't replace your own obligations: data subject notices to employees, consent records where needed, and registering an Information Officer if required. See our Privacy Policy for the full breakdown of roles and data flows.
Accountant permissions
Inviting an accountant grants access only to the company you invite them to, only after they accept, and only in a read-enforced capacity — reports, payslips, bank payment files, and the ability to leave you notes. They cannot approve a pay run, edit an employee's salary or bank details, or invite other accountants. You can revoke access at any time from Accountant Access in Settings.
Data retention
Burse retains your payroll and bookkeeping data for as long as your account is active, so historical payslips, tax certificates, and reports stay available. South African labour and tax law generally expects payroll records to be kept for several years (the BCEA and Tax Administration Act set different minimums depending on the record) — it's worth confirming your own retention policy periodically; the Compliance Centre in Burse includes an annual prompt for this.
What Burse doesn't do
- We never ask for or store your online banking password — bank payment files are CSVs you download and upload yourself, or (where you've explicitly connected one) an integration using its own OAuth flow, never raw banking credentials.
- We don't sell or share your payroll data with third parties for marketing.
- Integrations you haven't connected (shown as "not yet connected" in the product) don't move any data — nothing syncs until you explicitly authorize it.
Report a concern
Found a security issue, or have a question about how your data is handled? Email security@burse.co.za and we'll respond as a priority. For general support, use hello@burse.co.za.