# Pre-authorisation on Revolut Terminal

**Hold funds on a customer's card at the time of service and capture the final amount when your service is complete**

---

Pre-authorisation on Revolut Terminal lets you hold funds on a customer's card at the time of service and capture the final amount later - up to 30 days depending on the card scheme.

This guide covers pre-authorisation for **in-person payments** using the Revolut Terminal and POS app:

- **Native Terminal and POS app flow** - take pre-auth payments and manage them (capture, cancel) via the GUI
- **Push payments flow** - create pre-authorised orders via the Merchant API and push them to the terminal

:::info
This guide focuses on the in-person (card-present) pre-authorisation flow. For the full conceptual background, API details, and clearing window rules, see [Advanced authorisation](/docs/guides/merchant/operations/capture-and-settlement/advanced-authorisation/introduction).
:::

:::warning[Payment method support]
Pre-authorisation on Revolut Terminal requires a **contactless** card payment.

| | Card brand | Support level |
|-|------------|---------------|
| :LogoMc\|image: | Mastercard | All cards |
| :LogoVisaColour: | Visa | All except _Vpay_ |
:::

## How it works

### Pre-authorisation vs. standard terminal payment

Pre-authorisation separates the card tap from the capture. Unlike a standard Terminal payment - which captures funds immediately - a pre-authorised payment places a hold on the customer's card, leaving you in control of when and how much to settle.

:::info
For a full explanation of what pre-authorisation is and how clearing windows work, see: [What is pre-authorisation](/docs/guides/merchant/operations/capture-and-settlement/advanced-authorisation/pre-authorisation#what-is-pre-authorisation).
:::

| | Standard payment | Pre-authorised payment |
|---|---|---|
| **When funds settle** | Immediately on card tap | When you capture (up to 30 days) |
| **Amount flexibility** | Fixed at checkout | Fixed at initial authorised amount <!-- TODO: re-enable 'Can be increased via **Increase hold**' when incremental auth ships on Terminal --> |
| **Receipt at time of payment** | Standard payment receipt | Pre-authorisation receipt |
| **Order location after payment** | Transaction history | Active Orders until captured |

### Use cases

Pre-authorisation is suited for in-person scenarios where the final charge amount is unknown at the time of card tap - hotel security deposits at check-in, vehicle rental deposits at pickup, equipment hire. For the full use-case breakdown, see [When to use advanced authorisation](/docs/guides/merchant/operations/capture-and-settlement/advanced-authorisation/introduction#when-to-use-advanced-authorisation).

### What's available on each surface

Pre-authorisation spans multiple surfaces - the physical Terminal, the POS app (tablet or phone), the [POS web portal](https://pos.revolut.com), and the Merchant API. Not all actions are available on every surface: taking the initial pre-authorised payment requires the Terminal or POS app (or a push payments integration), while managing the order afterwards can be done from any surface. Use the table below to understand which tool fits each step.

| Feature | Revolut Terminal | POS app | POS web portal | Merchant API |
|---------|------------------|---------|----------------|--------------|
| **Take a pre-auth payment** | :Check: | :Check: via Terminal | | Via [push payments](#for-pos-integrators)\* |
| **Capture** (full or partial) | :Check: | :Check: | :Check: | :Check: |
| **Cancel pre-auth** | :Check: | :Check: | :Check: | :Check: |
<!-- TODO: re-enable Increase hold row when incremental auth ships on Terminal
| **Increase hold** | | :Check: | :Check: | :Check: |
-->

\* The Merchant API also supports pre-authorisation for card-not-present (online) payments. This guide covers only the in-person (push payments) flow. For the full API pre-authorisation guide, see [Pre-authorisation](/docs/guides/merchant/operations/capture-and-settlement/advanced-authorisation/pre-authorisation).

### Pre-authorisation lifecycle

A pre-authorised payment goes through two phases: the initial hold at the start of service, and settlement when the service is complete.

1. **Start of service**

    Merchant selects **:CardSecurity: Pre-authorise** in the Terminal or POS app. Customer taps card (contactless). On approval, a pre-authorisation receipt is issued, and the order appears on the **Active** tab in **:Receipt: Orders**.

1. **End of service**

    Choose one of three outcomes:

    - **Full capture** - settle the full pre-authorised amount
    - **Partial capture** - settle a lower amount; the remainder is released to the customer immediately
    - **Cancel** - void the hold entirely; funds returned to the customer immediately, without going through the standard refund process

<!-- TODO: re-enable on the 2nd place 'During service' step when incremental auth ships on Terminal - moving below as it breaks numbered list
1. **During service** _(optional)_

    If additional charges arise, you can increase the held amount - called **Increase hold** in the POS app and pos.revolut.com, and [incremental authorisation](/docs/guides/merchant/operations/capture-and-settlement/advanced-authorisation/incremental-authorisation) via the Merchant API. For clearing window extension rules, the 5× limit, and Mastercard vs. Visa behaviour, see [Incremental authorisation](/docs/guides/merchant/operations/capture-and-settlement/advanced-authorisation/incremental-authorisation).

    If the final amount exceeds the held amount (over-capture), the terminal requests approval for the extra amount. If the bank approves, the full over-amount is captured; if declined, process a separate standard payment for the difference.
-->

:::info[Clearing windows and capture deadline]
The maximum hold period depends on the card scheme and your Merchant Category Code (MCC). Always check the indicated deadline in your order details (`capture_deadline`) - do not rely solely on the 30-day figure. See [Clearing windows](/docs/guides/merchant/operations/capture-and-settlement/advanced-authorisation/clearing-windows).
:::

## Pre-authorisation in the POS apps

### Enable pre-authorisation

To enable pre-authorisation on your Terminal or POS app:

1. Go to **:Ellipsis: More > :Cart: Checkout**.
1. Toggle **:CardSecurity: Pre-authorisation** to enable it.

- ![$Terminal]

  ![Checkout settings with Pre-authorisation toggle on Terminal](/img/accept-payments/payment-methods/pos/pre-auth-phone-checkout-settings.png "Checkout settings with Pre-authorisation toggle on Terminal")

- ![$POS]

  ![Checkout settings with Pre-authorisation toggle on POS app](/img/accept-payments/payment-methods/pos/pre-auth-tablet-checkout-settings.png "Checkout settings with Pre-authorisation toggle on POS app")

:::note
Staff access to **:Cart: Checkout** settings can be restricted via the POS web portal **:People: Team** settings.
:::

### Pre-authorise a payment

:::warning
Only **contactless** card payments are supported for pre-authorisation at this stage. If a customer tries to insert their card, prompt them to tap instead.
:::

Once pre-authorisation is enabled, follow these steps to pre-authorise payments:

1. On the **:PosTablet: Register** screen, enter the amount or add products.
1. Tap **Checkout** to proceed to the checkout screen.
1. On the checkout screen, choose your payment mode:
    - **:CardSecurity: Pre-authorise** - hold funds on the customer's card and capture the final amount later
    - **:CardCheck: Pay** - take a standard payment that settles immediately

<!-- TODO: verify — is the "From the cart" option (Pre-authorise button in cart actions) actually available? Designs only show the Pre-authorise / Pay toggle on the checkout screen, not on the cart/register screen. -->

- ![$Terminal]

  ![Checkout screen with Pre-authorise / Pay toggle on Terminal](/img/accept-payments/payment-methods/pos/pre-auth-phone-checkout.png "Checkout screen with Pre-authorise / Pay toggle on Terminal")

- ![$POS]

  ![Checkout screen with Pre-authorise / Pay toggle on POS app](/img/accept-payments/payment-methods/pos/pre-auth-tablet-checkout.png "Checkout screen with Pre-authorise / Pay toggle on POS app")

Once your customer taps their card and the pre-authorisation is successful, the terminal issues a pre-authorisation receipt. The authorised order appears on the **Active** tab in **:Receipt: Orders**.

:::tip
If the payment is declined, the customer can try a different card, or you can cancel the transaction.
:::

### Manage pre-authorised orders

Pre-authorised orders remain in **Authorised** state until captured, cancelled, or expired. You can manage them from the Terminal device, POS app, or POS web portal on the **Active** tab in **:Receipt: Orders** menu.

#### Capture pre-authorised payment

Settle the held amount when the service is complete. You can capture the full authorised amount or a partial amount.

| | Full capture | Partial capture |
|-|--------------|-----------------|
| **What it does** | Settles the entire held amount | Settles a lower amount than authorised |
| **Remaining funds** | — | Released to the customer's card immediately |
| **When to use** | Final charge equals the authorised amount | Final charge is less than the held amount |
| **Can capture again** | — | No - partial capture is final |

:::warning
Partial capture is final. You cannot capture the remaining amount later.
:::

- ![Full capture]

  - ![$Terminal]

    1. Open **:Receipt: Orders** and go to the **Active** tab.
    1. Select the pre-authorised order and tap **:Check: Capture**.
    1. Confirm the full amount and tap **Continue**.
    1. Confirm the capture by tapping **Capture**.
    1. The final receipt is issued, and the order moves to **Completed** state on the **Paid** tab.

    ![Full capture on Terminal](/img/accept-payments/payment-methods/pos/pre-auth-phone-capture.png "Full capture on Terminal")

  - ![$POS]

    1. Open **:Receipt: Orders** and go to the **Active** tab.
    1. Select the pre-authorised order and tap **:Check: Capture**.
    1. Confirm the full amount and tap **Continue**.
    1. Confirm the capture by tapping **Capture**.
    1. The final receipt is issued, and the order moves to **Completed** state on the **Paid** tab.

    ![Full capture on POS](/img/accept-payments/payment-methods/pos/pre-auth-tablet-capture.png "Full capture on POS")

  - ![$POS web]

    1. Open **:PriceTag: Orders** and go to the **Active** tab.
    1. Select the pre-authorised order and tap **:Check: Capture**.
    1. Confirm the full amount and tap **Continue**.
    1. Confirm the capture by tapping **Capture**.
    1. The final receipt is issued, and the order moves to **Completed** state on the **Paid** tab.

    ![Full capture on POS web](/img/accept-payments/payment-methods/pos/pre-auth-web-capture.png "Full capture on POS web")

- ![Partial capture]

  - ![$Terminal]

    1. Open **:Receipt: Orders** and go to the **Active** tab.
    1. Select the pre-authorised order and tap **:Check: Capture**.
    1. Enter the partial **Capture amount** and tap **Continue**.
    1. Confirm the capture by tapping **Capture**.
    1. The final receipt is issued, and the order moves to **Completed** state on the **Paid** tab. Remaining hold is released to the customer immediately.

    ![Partial capture on Terminal](/img/accept-payments/payment-methods/pos/pre-auth-phone-partial-capture.png "Partial capture on Terminal")

  - ![$POS]

    1. Open **:Receipt: Orders** and go to the **Active** tab.
    1. Select the pre-authorised order and tap **:Check: Capture**.
    1. Enter the partial **Capture amount** and tap **Continue**.
    1. Confirm the capture by tapping **Capture**.
    1. The final receipt is issued, and the order moves to **Completed** state on the **Paid** tab. Remaining hold is released to the customer immediately.

    ![Partial capture on POS](/img/accept-payments/payment-methods/pos/pre-auth-tablet-partial-capture.png "Partial capture on POS")

  - ![$POS web]

    1. Open **:Receipt: Orders** and go to the **Active** tab.
    1. Select the pre-authorised order and tap **:Check: Capture**.
    1. Enter the partial **Capture amount** and tap **Continue**.
    1. Confirm the capture by tapping **Capture**.
    1. The final receipt is issued, and the order moves to **Completed** state on the **Paid** tab. Remaining hold is released to the customer immediately.

    ![Partial capture on POS web](/img/accept-payments/payment-methods/pos/pre-auth-web-partial-capture.png "Partial capture on POS web")

#### Cancel pre-authorisation

If the service is not delivered, cancel the hold to release funds immediately to the customer - without going through the standard refund process.

- ![$Terminal]

  1. Open **:Receipt: Orders** and go to the **Active** tab.
  1. Select the pre-authorised order, tap **:Ellipsis:** and select **:Delete: Discard pre-authorisation**.
  1. Confirm by tapping **Discard**. The order moves to **Cancelled** state — only the receipt is available.

  ![Cancel pre-authorisation on Terminal](/img/accept-payments/payment-methods/pos/pre-auth-phone-cancel.png "Cancel pre-authorisation on Terminal")

- ![$POS]

  1. Open **:Receipt: Orders** and go to the **Active** tab.
  1. Select the pre-authorised order, tap **:Ellipsis:** and select **:Delete: Discard pre-authorisation**.
  1. Confirm by tapping **Discard**. The order moves to **Cancelled** state — only the receipt is available.

  ![Cancel pre-authorisation on POS](/img/accept-payments/payment-methods/pos/pre-auth-tablet-cancel.png "Cancel pre-authorisation on POS")

- ![$POS web]

  1. Open **:PriceTag: Orders** and go to the **Active** tab.
  1. Select the pre-authorised order, tap **:Ellipsis:** and select **:Delete: Discard pre-authorisation**.
  1. Confirm by tapping **Discard**. The order moves to **Cancelled** state — only the receipt is available.

  ![Cancel pre-authorisation on POS web](/img/accept-payments/payment-methods/pos/pre-auth-web-cancel.png "Cancel pre-authorisation on POS web")

<!-- TODO: re-enable Increase hold section when incremental auth ships on Terminal
#### Increase hold

**Increase hold** is the in-app name for [incremental authorisation](/docs/guides/merchant/operations/capture-and-settlement/advanced-authorisation/incremental-authorisation) - the feature that lets you add to the authorised amount after the initial hold, without requesting a new payment from the customer.

If additional charges arise during service, you can increase the authorised amount before capture.

- ![POS app]

  1. Open the order from **Active Orders**.
  1. Select **Increase hold**.
  1. Enter the additional amount and confirm.

  TODO: screenshot - Increase hold amount entry screen on POS app. Confirm button/option label.

[//]: # 'separator'

- ![pos.revolut.com]

  1. Open the **Orders** screen and select the pre-auth order.
  1. Select **Increase hold**.
  1. Enter the additional amount and confirm.

  TODO: screenshot - Increase hold amount entry screen on pos.revolut.com. Confirm button label.

:::info
For card scheme rules, the 5× limit, and whether Mastercard extends the clearing window per increment, see [Incremental authorisation](/docs/guides/merchant/operations/capture-and-settlement/advanced-authorisation/incremental-authorisation).
:::
-->

## For POS integrators

If you're integrating a 3rd-party POS system via push payments, you can create pre-authorised orders via the Merchant API and push them to the Terminal.

Pre-authorisation requires manual capture, which separates authorisation from settlement, giving you control over when and how much to capture once the service is complete.

To create a pre-auth order, set both `capture_mode` and `authorisation_type` in your order creation request:

```json [Request body] {6-7}
{
  "amount": 10000,
  "currency": "GBP",
  "channel": "pos",
  "location_id": "<your_location_id>",
  "capture_mode": "manual",
  "authorisation_type": "pre_authorisation",
  "fulfilment_type": "eat_in",
  "metadata": {
    "pos_partner_name": "YourPOS"
  }
}
```

Push the payment intent to the terminal as normal, following the [Push payments to Revolut Terminal](/docs/guides/merchant/accept-payments/in-person-payments/terminal/push-payments) guide.

Once the customer pays via card-present on the Terminal, the order appears in [POS web portal](https://pos.revolut.com) and the POS app. You can manage it from either surface. Additionally, you can manage pre-authorised orders programmatically via the Merchant API.

:::info
For more information about managing pre-authorised orders via the Merchant API (capture, cancel), see [Pre-authorisation](/docs/guides/merchant/operations/capture-and-settlement/advanced-authorisation/pre-authorisation).
:::

## What's next

- [:CardSecurity: Advanced authorisation: Pre-authorisation](/docs/guides/merchant/operations/capture-and-settlement/advanced-authorisation/pre-authorisation 'API details, order creation parameters, and clearing window rules')
- [:Time: Advanced authorisation: Clearing windows](/docs/guides/merchant/operations/capture-and-settlement/advanced-authorisation/clearing-windows 'Card scheme and MCC clearing window reference')
- [:Webhook: Push payments to Revolut Terminal](/docs/guides/merchant/accept-payments/in-person-payments/terminal/push-payments 'Integrate your POS system with Revolut Terminal')
- [:CardTerminal: Manage payments](/docs/guides/merchant/accept-payments/in-person-payments/terminal/manage-payments 'Standard payment operations on Revolut Terminal')

<!-- TODO: re-enable incremental auth link card when incremental auth ships on Terminal
- [:ArrowExchange: Advanced authorisation: Incremental authorisation](/docs/guides/merchant/operations/capture-and-settlement/advanced-authorisation/incremental-authorisation 'Increase the authorised amount during service')
-->