Capture 
capture 
You can initiate a capture request via the POST Capture API. You can specify the amount you want to complete, but it cannot exceed the original pre-authorization amount.
The main process is as follows:
- When initiating capture, use the merchantTransInfo.merchantTransIDthat you provided when calling thePOST PaymentAPI. You need to include this parameter in the URL of thePOST Capturerequest so that EVO Payment can locate the original pre-authorization transaction and proceed with the completion.
Capture Example
js
curl 'https://hkg-online-uat.everonet.com/g2/v0/payment/acq/10130014/evo.offline.capture/T20240306135818963' \
-H 'Authorization: 899fa642452915a04a698b20f5068b0a48dff5ff2187e602e8f9f85f136d4c5f' \
-H 'DateTime: 20240306140007+0800' \
-H 'SignType: SHA256' \
-H 'Content-Type: application/json' \
-H 'MsgID: M20240306140007152' \
-d '{
    "merchantTransInfo": {
        "merchantTransID": "T20240306140007152",
        "merchantTransTime": "2024-03-06T14:00:07+08:00"
    },
    "paymentMethod": {
        "type": "card",
        "card": {
            "posEntryMode":"magnetic",
            "pinFlag":true,
            "termReadability":"5",
            "cardInfo": {
                "cardNumber": "3569990012318852",
                "expiryDate": "2312",
                "track2": "3569990012318852=23121010000000000000"
            },
            "pin":{
                "encryptedPin":"A8B568E29FC8E959",
                "pinEncryptMethod":"DUKPT",
                "keySerialNumber":"FFFF123456ABCDE00004"
            }
        }
    },
    "transAmount": {
        "currency": "HKD",
        "value": "1.00"
    }
}'- Check the capture.statusfield in the EVO Payment response. If the value isSuccess, the transaction is successful; otherwise, check theresult.codeandresult.messageto determine the reason for the failure.
- If you do not receive a response from EVO Payment, you need to call GET Captureto query the transaction result. Upon receiving the response, also check thecapture.statusfield to determine the result, as described in step 2. If the transaction fails, usecapture.failureCodeandcapture.failureReasonto find the cause of the failure.
- If you included a webhookin yourPOST Capturerequest, you can also get the transaction result through asynchronous notifications. Similarly, use thecapture.statusfield to determine the result, as described in step 2.

