Devrabyte

Security

Security

What's actually built, described plainly — not a badge wall.

Signed webhooks only

Every inbound WhatsApp webhook is verified against its provider's signature (HMAC-SHA256 for Meta) before it's processed. Unsigned or invalid requests are acknowledged and dropped.

Role-based access, enforced server-side

Four roles — Owner, Admin, Manager, Staff — gate what a user can do. Role changes are capped server-side: an Admin cannot grant themselves or anyone else the Owner role, and cannot change their own role at all. Every admin action is re-checked against the caller's actual role on the server, not just hidden in the UI.

Tenant isolation

Every table is scoped to an organization. Cross-tenant writes are blocked at the database query level, not just filtered out of the response.

An audit trail that can't be edited after the fact

Invoice, lead, and billing changes are recorded in an append-only event ledger. Application code only ever inserts into it — there is no code path that updates or deletes a past entry.

Passwords and sessions

Passwords are hashed with bcrypt and never stored in plain text. Sessions are signed JWTs; sensitive tokens (WhatsApp API keys, webhook secrets) are never returned to the browser.

Encrypted in transit and at rest

All traffic runs over HTTPS/TLS. Data is stored in PostgreSQL on Neon, which encrypts data at rest as part of its infrastructure.

Data protection posture

Built with data protection principles aligned to regulations like Nigeria's NDPR — organization-level data isolation, minimal data collection, and a documented retention policy. See our Privacy Policy for the full detail.