page.payment.settled
The page.payment.settled event is triggered when the payment page transaction is settled to the destination bank account.
Payload
Section titled “Payload”| Attribute | Type | Description |
|---|---|---|
event_id | String | Unique identifier for the webhook event. |
event | String | Event name: page.payment.settled. |
timestamp | Integer | Unix timestamp when the event was originated. |
version | String | Webhook payload version. |
payload.order_id | String | Payment page order ID. |
payload.order | Object | Payment page order details. |
payload.order.transaction_id | String | Transaction ID for the payment. |
payload.order.paid_at | Datetime | Time when payment was completed. |
payload.order.status | String | Current payment status. |
payload.order.details | Array | Payment detail rows with settlement details. |
payload.order.details[].settlement_utr | String | Settlement UTR. |
payload.order.details[].settled_at | Datetime | Settlement timestamp. |
Example
Section titled “Example”{ "event": "page.payment.settled", "event_id": "f8093bb5-29c7-4b3a-a99b-298520233820", "version": "1.0", "timestamp": 1655448963, "payload": { "order_id": "order_12345", "order": { "name": "Customer name", "phone": "9876543210", "identifier": "any_ref_id", "email": "you@example.com", "student_name": "Student Name", "custom_identifier": "cust_1234", "grade": "grade_5944", "new_admission": false, "date_of_birth": "2000-01-01", "academic_year_start": 2022, "academic_year_end": 2023, "transaction_id": "trans_568aaf1f9a65", "paid_at": "2022-03-01T10:05:45Z", "status": "paid", "details": [ { "component_type": "Payable Amount", "amount": 1000.0, "settlement_utr": "settl_1234", "settled_at": "2022-03-02T10:05:45Z" } ] } }}Handling the Event
Section titled “Handling the Event”- Mark the payment as settled in your ERP or reconciliation system.
- Store
settlement_utrandsettled_atfrom the detail rows. - Reconcile by
payload.order_idand any identifier fields sent with the order. - Use
event_idfor idempotency.