Legal

How Relay handles WhatsApp data

Last updated July 21, 2026

Placeholder — pending legal review

This document uses templated language adapted from a standard SaaS legal template. It is provided for transparency and product-review purposes and is not final or binding legal text. A lawyer-reviewed version will replace it before it takes effect.

WhatsApp / Meta Cloud API

Inbound messages, sender number, profile name, delivery status

HTTPS webhook

TLS in transit · HMAC-SHA256 signature verified before processing

Relay (Supabase Postgres)

Row-level security per account · access tokens AES-256-GCM at rest

Account members only

Role-scoped access (owner / admin / agent / viewer), enforced by RLS

Data flow from the WhatsApp Business Cloud API to role-scoped account members. Sub-processors are listed below.

1. Summary

This page describes, in plain language, how Relay receives, transmits, stores, restricts access to, retains and deletes data obtained through the WhatsApp Business Platform (Cloud API). It is intended for Meta App Review and for anyone who wants to understand how WhatsApp/Meta data flows through the Service.

2. What we receive from the WhatsApp/Meta Cloud API

When a customer connects their WhatsApp Business number, Relay receives, via Meta’s Cloud API webhooks, the following data:

  • Inbound messages sent to the business (text, media and interactive replies).
  • The sender’s phone number and WhatsApp profile name.
  • Delivery and read status of outbound messages.
  • Message template review/status updates.

We request only the permissions needed to operate a WhatsApp business inbox and CRM (e.g. whatsapp_business_messaging and whatsapp_business_management) and use the data solely to provide the Service to the connecting business.

3. How the data is transmitted

All communication with the Meta Cloud API occurs server-side over HTTPS/TLS. Inbound webhooks are delivered to a single endpoint that verifies Meta’s HMAC-SHA256 signature (using our app secret) before any payload is processed, so unsigned or tampered requests are rejected. Access tokens used to call the Cloud API are never exposed to the browser.

4. How the data is stored

Data is stored in a managed Supabase Postgres database. Every table enforces row-level security (RLS) so that records are strictly scoped to the owning account and cannot be read across tenants. WhatsApp access tokens are encrypted at rest using AES-256-GCM before being written to the database; the encryption key is held only in server-side configuration.

5. Who can access the data

Only members of the account that owns the WhatsApp connection can access its messages and contacts, and only according to their role (owner, admin, agent or viewer). Access is enforced at the database layer by RLS, not merely in the UI. Relay personnel do not access customer message content except where strictly necessary for support or security and where permitted by our agreements.

6. Retention and deletion

Data is retained for as long as the account is active and needs it to operate the inbox and CRM. Account members can export their data and delete contacts, conversations or the entire account from within the product; deletion removes the associated records from the primary database within a commercially reasonable period, subject to limited legal retention requirements.

Export and deletion tools live in the app:

7. Sub-processors

The third parties that may process this data on our behalf are:

  • Supabase — Managed Postgres database, authentication and file storage — the primary system of record. (United States / EU).
  • Meta Platforms (WhatsApp Business Cloud API) — Sending and receiving WhatsApp messages on your behalf via the official WhatsApp Business Platform. (United States / global).
  • Stripe — Subscription billing and payment processing. (United States).
  • Email delivery provider — Transactional email (invitations, notifications, password resets). (United States / EU).
  • AI model providers (bring-your-own — e.g. OpenAI, Anthropic) — Generating reply drafts and running the optional AI assistant, using an API key you supply. Only engaged when you enable AI features. (United States).