go to Evonet

Capture API

对 authorized 状态的交易,通过 POST /payment/{merchantTransID}/capture 完成扣款。

请求示例:

{
    "merchantTransInfo": {
        "merchantTransID": "capture_25072",
        "merchantTransTime": "2025-07-21T16:08:07+08:00"
    },
    "transAmount": {
        "currency": "HKD",
        "value": "100"
    },
    "webhook": "https://6ee8218a-52e4-4b16-8d67-594cdb34bb23.mock.pstmn.io",
    "initiatingReason": "initiatingReason",
    "metadata": "metadata"
}

响应示例:

{
    "capture": {
        "evoTransInfo": {
            "evoTransID": "pay_2507211608080001000077754735",
            "evoTransTime": "2025-07-21T08:08:08Z",
            "retrievalReferenceNum": "520216126377",
            "traceNum": "032153"
        },
        "merchantTransInfo": {
            "merchantTransID": "capture_25072",
            "merchantTransTime": "2025-07-21T16:08:07+08:00"
        },
        "pspTransInfo": {
            "authorizationCode": "007867",
            "pspTransTime": "2025-07-21T08:06:06Z",
            "retrievalReferenceNum": "520216126377"
        },
        "status": "capture_pending",
        "transAmount": {
            "currency": "HKD",
            "value": "100.00"
        }
    },
    "metadata": "metadata",
    "payment": {
        "evoTransInfo": {
            "evoTransID": "pay_2507211605580001000028762426",
            "evoTransTime": "2025-07-21T08:05:58Z",
            "retrievalReferenceNum": "520216125927",
            "traceNum": "125927"
        },
        "merchantTransInfo": {
            "merchantOrderReference": "mc-250528",
            "merchantTransID": "pay_2507211605580001000028762426",
            "merchantTransTime": "2025-07-09T11:18:00+08:00"
        },
        "pspTransInfo": {
            "authorizationCode": "007867",
            "pspTransID": "305202291673371",
            "pspTransTime": "2025-07-21T08:06:06Z",
            "retrievalReferenceNum": "520216125927"
        },
        "status": "capture_pending",
        "transAmount": {
            "currency": "HKD",
            "value": "100.00"
        }
    },
    "paymentMethod": {
        "card": {
            "first6No": "489533",
            "fundingType": "credit",
            "issuingCountry": "USA",
            "last4No": "1119",
            "paymentBrand": "Visa"
        }
    },
    "result": {
        "code": "S0000",
        "message": "Success"
    }
}

处理逻辑

响应中,需首先查看 result.code

  • 非 S 开头:捕获失败
  • S 开头(如 S0000):查询成功,需要查看 capture.status
    • capture_pending:需接收 eventCode: "Capture" 的异步通知,通过异步通知中的 capture.status 字段确定捕获结果

关键字段:

字段名类型描述注意事项
capture.statusstring捕获状态
result.codestring应答码S 开头表示查询成功

更多参数信息请参考:payment API 中 POST capture 部分。