Skip to content

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:

  1. When you initiate the recapture, you will use the merchantTransInfo.merchantTransID you sent when calling the POST Payment interface. You need to add this parameter to the URL of the POST Recapture request so that EVO Cloud can find the original authorization transaction and initiate recapture.

  2. Check the content of the recapture.status field in the EVO Cloud response. If the value of the field is Success, it means the transaction is successful. Otherwise, you need to check the result.code and result.message to see the reason for the transaction failure.

  3. If you do not receive a response message from EVO Cloud, you need to call GET Recapture to query the transaction result. When you receive the query response, you also need to judge the transaction result through the content of the recapture.status field, and the judgment method is the same as step 2. If the transaction fails, you need to check the reason for the transaction failure through recapture.failureCode and recapture.failureReason.

  4. If you included a webhook in your POST Recapture request and the transaction's recapture.status is Success, you can also obtain the transaction result through asynchronous notification, where the eventCode is Recapture. Again, assess the transaction result using the recapture.status field as in step 2.