POST payment.v2.completed
请求头
所有 webhook 请求都包含以下请求头,用于身份验证和验证:
| 请求头 | 描述 |
|---|---|
| X-PARTNER-ID | 您的客户端标识符 |
| X-TIMESTAMP | 请求时间戳,采用 ISO8601 格式 (e.g., 2024-12-18T16:21:07+07:00) |
| X-SIGNATURE | 用于请求验证的 RSA 签名(参见签名生成) |
负载结构
| 名称 | 类型 | 描述 |
|---|---|---|
| event | string | 事件名称:"payment.v2.completed" |
| timestamp | string | 事件时间戳(ISO 8601 格式) |
| data | object | 付款明细 |
| data.transaction_id | string | 内部交易唯一标识符 |
| data.merchant_transaction_id | string | 客户为商户提供的唯一标识符 |
| data.created_at | string | 交易创建的时间戳(ISO 8601 格式) |
| data.amount | string | 交易的总金额 |
| data.currency | string | 交易所使用的货币(例如 "IDR") |
| data.channel | string | 本次交易所使用的支付渠道 |
| data.payment_channel | string/null | 标准化支付渠道,所有支付类型和服务商使用同一格式:例如 QRIS、VA_BRI、BANK_BCA、EWALLET_DANA(支付类型前缀 + 附录中的代码)。无法确定渠道时为 null。建议优先使用此字段而非 channel。 |
| data.service_fee_rate | number | 本次交易所适用的服务费比例 |
| data.service_fee_rate_str | string | 服务费比例的精确小数字符串 |
| data.service_fee_amount | number | 服务费金额 |
| data.service_fee_amount_str | string | 服务费金额的精确小数字符串 |
| data.nett_amount | number | 净额(扣除手续费后) |
| data.nett_amount_str | string | 净额的精确小数字符串 |
| data.rrn | string/null | 关联支付交易的 RRN(检索参考号) |
| data.status | string | 支付状态:"success" |
| data.payment_at | string/null | 付款完成时间戳(ISO 8601 格式),未付款时为 null |
| data.customer_info | object | 客户的附加详情 |
示例负载
{
"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"
}
}
}