This tutorial walks you through the process of authorising a payment amount and capturing it later. You can authorise an amount on a customer's payment method and capture all or part of it later.
This is useful in many scenarios, for example:
Create an order that will not be automatically captured after making a payment. To do so, set the capture_mode
parameter to manual
in the body of the request.
See an example request payload, with minimal required parameters:
{
"amount": 100,
"currency": "GBP",
"capture_mode": "manual"
}
The default value of the capture_mode
parameter is automatic
. In this case, the authorised amount will be captured automatically, without further actions needed.
Take a payment from your customer with your preferred payment solution. To cater to different customer preferences we offer several options to take payments:
After taking the payment, you should have an order in authorised
state.
Uncaptured orders remain in authorised
state for 7 days. If not captured within this period, the funds are returned to the customer's original payment method.
To capture an order manually, use one of the following methods:
On the Revolut Business portal, only capturing full amount is possible.
To capture the authorised amount using the web UI, follow these steps:
This process assumes you already created an order and have an authorised payment.
To capture the payment using the Merchant API, follow these steps:
Confirm that the payment authorisation is valid and that your product or service is ready for delivery or fulfilment.
Use the Capture an order endpoint in the Merchant API to capture the payment. You can choose from two approaches to capture an amount:
Once the capture request is successful, the order will proceed to the processing stage.
The following limitations apply to manual captures:
0
amount captures are not allowedIf you would like to return the full authorised amount to your customer, you can Cancel the order. The amount will be immediately voided and returned to your customer's original payment method.