POST payment.v2.completed
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: "payment.v2.completed" |
| timestamp | string | Webhook dispatch timestamp (ISO 8601) |
| data.transaction_id | string | Internal transaction identifier |
| data.merchant_transaction_id | string | Unique identifier for the merchant's transaction |
| data.created_at | string | Transaction creation timestamp (ISO 8601) |
| data.amount | string | Transaction amount |
| data.currency | string | Currency code (e.g. "IDR") |
| data.channel | string | Payment channel |
| data.payment_channel | string/null | Normalized payment channel, one format for every payment type and provider: a value such as QRIS, VA_BRI, BANK_BCA, or EWALLET_DANA (payment type prefix + code from the Appendix). null when the channel cannot be determined. Prefer this over channel. |
| data.service_fee_rate | number | Service fee rate applied |
| data.service_fee_rate_str | string | Service fee rate as an exact decimal string |
| data.service_fee_amount | number | Service fee amount charged |
| data.service_fee_amount_str | string | Service fee amount as an exact decimal string |
| data.nett_amount | number | Net amount after fees |
| data.nett_amount_str | string | Net amount as an exact decimal string |
| data.rrn | string/null | Retrieval Reference Number (if available) |
| data.status | string | Payment status: "success" |
| data.payment_at | string/null | Payment completion timestamp (ISO 8601), null if not yet paid |
| data.customer_info | object | Customer information object |
Example Payload
{
"event": "payment.v2.completed",
"timestamp": "2024-12-18T16:21:07+07:00",
"data": {
"transaction_id": "9dc1614d-ed70-426c-80da-5304ad258c9c",
"payment_channel": "VA_BCA",
"merchant_transaction_id": "RLP0000000000",
"created_at": "2024-12-18T16:21:07+07:00",
"amount": "10000.00",
"currency": "IDR",
"channel": "BCA",
"service_fee_rate": 0.00,
"service_fee_rate_str": "0.00",
"service_fee_amount": 0.00,
"service_fee_amount_str": "0.00",
"nett_amount": 10000.00,
"nett_amount_str": "10000.00",
"rrn": "0392813042",
"status": "success",
"payment_at": "2024-12-18T16:21:05+07:00",
"customer_info": {
"customer_name": "John Doe",
"product_name": "Deposit Now"
}
}
}