Skip to main content
Forma B — append-only, particionada mensual. Separada de send porque un envío tiene muchos estados y llegan por webhook: desordenados, con retraso y a veces duplicados. provider_event_id único es la valla: el mismo webhook reintentado por el proveedor no puede escribir dos veces. Dos columnas de tiempo, y otra vez la distinción importa: occurred_at la declara el proveedor y received_at la ponemos nosotros.

Clave primaria

Atributos específicos

Claves foráneas

Atributos base

Restricciones e índices

RLS y particionamiento

RLS activa por tenant_id. Particionada RANGE mensual sobre occurred_at, designada en standards/data.md §4. Los estados llegan desordenados. El estado vigente de un envío es el de mayor occurred_at, no el último recibido.

Registro de cambios