public class Capture {
@Autowired
MyFatoorahTransactionService myFatoorahTransactionService;
public void performCapture() {
CurrencyUnit currency = Monetary.getCurrency(currencyCode);
MonetaryAmount transactionTotal = Monetary.getDefaultAmountFactory().setCurrency(currency).setNumber(amount).create();
PaymentRequest paymentRequest = new PaymentRequest()
.additionalField("invoiceId", invoiceId) // The MyFatoorah invoice id gathered from the Authorize transaction.
.transactionTotal(transactionTotal);
PaymentResponse paymentResponse = myFatoorahTransactionService.capture(paymentRequest);
paymentResponse.isSuccessful();
paymentResponse.getGatewayResponseCode(); // MyFatoorah reason_code
paymentResponse.getGatewayTransactionId(); // MyFatoorah transaction ID
paymentResponse.getRawResponse(); // MyFatoorah Raw response stored as a JSON object.
paymentResponse.getGatewayTransactionType();// MyFatoorah GatewayTransactionType
paymentResponse.getResponseMap().get("invoiceId"); // MyFatoorah invoiceId.
paymentResponse.getResponseMap().get("paymentId"); // MyFatoorah paymentId.
paymentResponse.getResponseMap().get("paymentGateway"); // MyFatoorah paymentGateway.
paymentResponse.getResponseMap().get("transactionId"); // MyFatoorah transactionId.
}
}