Security

How we keep your review data safe

ReviewForge handles your customer's reviews and business identifiers — the kind of data buyers ask about before they share anything. Here's what we do to keep it locked down, in plain language.

Security practices

In transit

Encryption in transit

  • Every request to ReviewForge runs over HTTPS / TLS — no plaintext credentials, ever.
  • HSTS is enforced at the edge so browsers refuse to downgrade the connection.
  • API keys, login tokens, and webhook callbacks all travel over encrypted channels.
Billing

Stripe Connect billing

  • Billing runs on Stripe Connect via Polsia — we never touch raw card numbers ourselves.
  • No Stripe SDK, no webhook handler — payment pages and verification happen through Polsia's platform endpoints.
  • Subscriptions, refunds, and tax are handled entirely on Stripe's side, so PCI scope stays with them.
Tenancy

Data isolation per account

  • Every query is scoped by your user_id and business_id from a signed JWT session — strict data isolation between accounts.
  • Cross-account reads are blocked at the data layer, not just in the UI.
  • Support staff only see the data you explicitly share when you file a request.
At rest

Inbound API key storage

  • API keys you provide are stored encrypted at rest in our Neon PostgreSQL tier.
  • Decryption only happens inside the request that needs them — keys are never logged or shipped to the browser.
  • Rotating a key takes a single dashboard action; old keys are invalidated immediately.
Operations

Least privilege & audited APIs

  • Platform access follows least-privilege roles — workers run with the minimum scope they need.
  • Admin actions write to an audit log so any privileged operation is reviewable.
  • Inbound integrations only get read-only or narrowly-scoped write tokens.

Platform health indicator

Live

The same badge feed powers /sources — every connected platform carries a live sync health indicator, and a problem with any single integration surfaces there in minutes. If you ever suspect something is off, the platform health page is the first place to look.