Webhook Payload Reference
Payload structure and event types delivered by Bre-B participant webhooks
This guide describes the envelope Mono uses for every Bre-B participant webhook delivery and lists the outgoing-transfer events your endpoint can expect.
Verify first
Before trusting any payload, verify the Mono-Signature header. See Webhook Signature
Verification.
Payload structure
All webhooks share the same envelope. The event.type string tells you which
event fired and implicitly which fields to expect inside event.data.
interface WebhookPayload {
timestamp: string; // ISO 8601 delivery time
event: {
type: string; // e.g., "outgoing_transfer.created", "outgoing_transfer.failed"
data: {
id: string;
state: string;
// ...additional fields depend on event.type
};
};
}For the exact shape of each event's data object, follow the link in the
events table below — every event has a dedicated schema in the API reference.
Outgoing transfer events
| Event | Description |
|---|---|
outgoing_transfer.created | Transfer was created. Schema |
outgoing_transfer.processing | Transfer is being processed. Schema |
outgoing_transfer.target_resolved | Target (Bre-B key) was resolved. Schema |
outgoing_transfer.held | Funds have been held on the source account. Schema |
outgoing_transfer.sent_to_breb_provider | Transfer was sent to the Bre-B provider. Schema |
outgoing_transfer.successful | Transfer completed successfully. Schema |
outgoing_transfer.failed | Transfer failed. Inspect state_reason for the cause. Schema |
When you receive outgoing_transfer.failed, the state_reason field tells you
why — see Outgoing Transfer Error Codes
for the full list and suggested handling per code.