Webhooks
Boursa delivers lifecycle events to your configured webhook URL via a transactional outbox (at-least-once, ordered per entity). Verify each delivery's signature and respond 2xx to acknowledge.
Events
| Event | When |
|---|---|
order.received | an order was accepted and reserved |
order.filled / order.partially_filled | an execution booked |
order.cancelled / order.expired / order.rejected | terminal outcomes |
transfer.completed / transfer.failed | funding outcomes |
fund_order.processed / fund_order.settled | fund order outcomes |
report.ready / report.failed | a statement PDF finished |
Each payload carries the entity id and its new state. Pending deliveries are visible at GET /v1/webhook-deliveries.
Reliability
Delivery is at-least-once — dedupe on the event/entity id. The platform retries failed deliveries with backoff. Because the outbox is written in the same transaction as the state change, you never miss an event for a committed change.