POST transaction_settlement.settled
Request Headers
All webhook requests include the following headers for authentication and verification:
| Header | Description |
|---|---|
| X-PARTNER-ID | Your client identifier |
| X-TIMESTAMP | Request timestamp in ISO8601 format (e.g., 2024-12-18T16:21:07+07:00) |
| X-SIGNATURE | RSA signature for request verification (see Signature Generation) |
Payload Structure
All v2 webhooks use the unified envelope: { event, timestamp, data }.
| Name | Type | Description |
|---|---|---|
| event | string | Event name: "transaction_settlement.settled" |
| timestamp | string | Webhook dispatch timestamp (ISO 8601) |
| data.id | string | TransactionSettlement ID (ULID with "txs" prefix) |
| data.total_amount | string | Gross settlement amount |
| data.fee_amount | string | Total fee amount |
| data.nett_amount | string | Net amount after fees |
| data.transaction_count | integer | Number of transactions included in this settlement |
| data.started_at | string/null | When settlement was initiated (ISO 8601) |
| data.settled_at | string | When settlement completed (ISO 8601) |
| data.description | string/null | Settlement description (if provided) |
Example Payload
{
"event": "transaction_settlement.settled",
"timestamp": "2026-03-22T10:05:00+07:00",
"data": {
"id": "txs-01jq7m3k9xzv2b8n4hd5tcfw6e",
"total_amount": "1500000.00",
"fee_amount": "15000.00",
"nett_amount": "1485000.00",
"transaction_count": 12,
"started_at": "2026-03-22T09:00:00+07:00",
"settled_at": "2026-03-22T10:05:00+07:00",
"description": "Daily settlement batch"
}
}