Recapture
Recapture
You can use POST Recapture to capture a cancelled payment again. You can specify the amount you want to capture, but the capture amount cannot exceed the payment amount.
TIP
Currently, the Recapture feature only supports the following dual message PSP: American_Express, Diners, JCB, Mastercard, UnionPay, Visa.
Sync Flow:
Async Flow:
The main process is as follows:
When you initiate the
recapture, you will use themerchantTransInfo.merchantTransIDyou sent when calling thePOST Paymentinterface. You need to add this parameter to the URL of thePOST Recapturerequest so that EVO Payment can find the original authorization transaction and initiate recapture.Check the content of the
recapture.statusfield in the EVO Payment response. If the value of the field is Success, it means the transaction is successful. Otherwise, you need to check theresult.codeandresult.messageto see the reason for the transaction failure.If you do not receive a response message from EVO Payment, you need to call
GET Recaptureto query the transaction result. When you receive the query response, you also need to judge the transaction result through the content of therecapture.statusfield, and the judgment method is the same as step 2. If the transaction fails, you need to check the reason for the transaction failure throughrecapture.failureCodeandrecapture.failureReason.If you included a webhook in your
POST Recapturerequest and the transaction'srecapture.statusis Success, you can also obtain the transaction result through asynchronous notification, where theeventCodeisRecapture. Again, assess the transaction result using therecapture.statusfield as in step 2.

