Security

Security and financial integrity by design

How VEXORA protects accounts, credentials and the integrity of every balance.

Account protection

Memory-hard password hashing, TOTP two-factor authentication (required for staff), session expiry and rate-limited sign-in.

Secrets stay on the server

Provider credentials live only in server environment variables and never reach your browser.

No sensitive card data

The card provider exposes masked card numbers only. Full card numbers and CVVs are never stored or logged. Verification codes are encrypted, short-lived and visible only to the cardholder.

Verified webhooks

Provider events are verified with HMAC-SHA256 over the raw body, deduplicated by event ID and re-checked against the provider API.

Double-entry ledger

Every payment, order and balance credit is recorded as balanced, append-only entries enforced by the database. Corrections are explicit reversals.

Reconciliation

Local records are regularly compared with provider balances and statuses; discrepancies raise alerts.

Audit trail

Sensitive administrative actions are logged with operator, timestamp, reason and result — and cannot be edited.

Role-based access

Server-enforced permissions for support, compliance, finance and administrators, with separation of duties for sensitive operations.

Live-mode safeguards

Real-money operations stay disabled until explicitly enabled by an authorised operator after provider approval.
Responsible disclosure
Found a vulnerability? Please report it through the contact page with the topic "Security". Do not access data that is not yours.