Both events support an optional
eventReceivedAt timestamp that records when
Rain first received the status change. This helps with debugging timing
issues and building audit trails. It is excluded from payloads by default.
Contact your Rain account manager to enable it for your tenant.Webhook Rain sends youYour handler (ack 2xx)Action / API callCompliance provider
user.updated payload carries statusChangeReason only when a reason is recorded. company.updated mirrors this flow for business entities (KYB).
user.updated
This webhook is sent whenever a user’s identity verification (KYC) or compliance
status is updated. It applies to Consumer Programs. No response is required.
The
applicationStatus field can be one of these values:
An application moves through these statuses as it is reviewed, and every transition sends a
user.updated webhook. For what each status means, which states are terminal, and what to expect next, see Application states.
The statusChangeReason field can take these values:
The
applicationReason field contains comma-separated rejection labels. For a
complete reference of all labels and their meanings, see the webhook rejection
label reference.
company.updated
This webhook provides real-time updates on a company’s business verification
(KYB) and compliance status, helping you track application progress and
regulatory changes. It applies to Corporate Programs only and is
informational, so it does not require a response.
The
applicationStatus field can be one of these values:
For what each status means, which states are terminal, and what to expect next, see Application states.