How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Revolut Payment intents API

Operations for managing payment intents in the push payments to Revolut Terminal flow.A **payment intent** represents the intention to complete payment for a specific order on a specific Revolut Terminal device. Payment intents are the mechanism that links orders created via the Merchant API with physical terminal devices in **Pay at Counter** mode.## What is a payment intent?When you create a payment intent, you're pushing a payment request from your POS system to a Revolut Terminal. The payment intent:- Links an order to a specific terminal device- Triggers the payment request to appear on the terminal screen- Tracks the customer's interaction with the terminal (pending → processing → completed)- Provides a `payment_id` when completed, which you use to retrieve the final payment status## Payment intent lifecycle1. **Create:** Push a payment intent to a terminal by [creating a payment intent](https://developer.revolut.com/docs/api/merchant#create-payment-intent)1. **Track:** Poll the payment intent status by [retrieving payment intent details](https://developer.revolut.com/docs/api/merchant#retrieve-payment-intent) until it reaches a final state1. **Complete:** When state is `completed`, extract the `payment_id` and [retrieve the final payment status](https://developer.revolut.com/docs/api/merchant#retrieve-payment-details)1. **Cancel (optional):** Cancel pending payment intents using [Cancel a payment intent](https://developer.revolut.com/docs/api/merchant#cancel-payment-intent)## Important notes- A payment intent reaching `completed` state means the checkout process finished on the terminal, but it does **not** guarantee the payment succeeded- You must check the actual payment status using the `payment_id` returned in the completed payment intent- Payment status can be `captured`/`completed` (successful), `declined` (card rejected), `failed` (technical error), or `cancelled`:::infoFor the complete push payments integration guide, see: [Push payments to Revolut Terminal](https://developer.revolut.com/docs/guides/merchant/accept-payments/in-person-payments/terminal/push-payments).:::

Revolut Payment intents API is one of 46 APIs that Revolut publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Payment Intents. The published artifact set on APIs.io includes an OpenAPI specification.

This API exposes 3 operations across 3 paths, and defines 10 schemas. It is described by OpenAPI 3.2.0, at version 2026-04-20.

Requests are made against 2 base URLs: https://merchant.revolut.com, https://sandbox-merchant.revolut.com.

3 operations 3 paths 10 schemas 1 GET2 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
2026-04-20
Base URL
https://b2b.revolut.com/api/1.0
Authentication
API Key
Resource Areas
1

Authentication & Security 1

Revolut Payment intents API declares 1 security scheme for authenticating requests. An API key is passed in the header as Authorization (Api-Key). By default, every request must be authenticated.

  • Api-Key — Each Merchant API request must contain an authorization header in the following format: 'Authorization: Bearer ' To use this API, you need to generate API keys…

Paths & Operations 3

Across 3 paths, the API surfaces 3 operations — 1 GET, 2 POST. Each is listed below with its method, path, parameters, and response codes.

Payment intents 3

Operations for managing payment intents in the push payments to Revolut Terminal flow. A payment intent represents the intention to complete payment for a specific order on a spec…

POST
/api/orders/{order_id}/payment-intents
Create a payment intent
createPaymentIntent 3 params body → 201400401404
GET
/api/payment-intents/{payment_intent_id}
Retrieve a payment intent
retrievePaymentIntent 3 params → 200401404
POST
/api/payment-intents/{payment_intent_id}/cancel
Cancel a payment intent
cancelPaymentIntent 3 params → 200400401404

Schemas 10

The contract defines 10 schemas that model the data the API accepts and returns. The most detailed are Payment-Intent (9 properties), Error (2 properties), Payment-Intent-Creation (2 properties). Each schema is shown below with its type and property counts.

Payment-Intent
object
Represents a payment intent that has been pushed to a Revolut Terminal device. When the payment intent reaches completed state, it includes a paymentid that ca…
9 properties 8 required
Payment-Id
string
The ID of the payment.
Currency
string
[ISO 4217](https://en.wikipedia.org/wiki/ISO4217) currency code in upper case. :::info For more information about the supported currencies, see: [Help Center](…
Payment-Intent-State
string
The current state of the payment intent. | State | Description | |-------|-------------| | pending | Payment intent created and sent to terminal, customer has…
Terminal-Id
string
The unique identifier of the terminal.
Order-Id
string
Permanent order ID used to retrieve, capture, cancel, or refund an order after authorization.
Error
object
2 properties 2 required
Payment-Intent-Id
string
The unique identifier of the payment intent.
Payment-Intent-Creation
object
Request body for creating a payment intent to push to a terminal.
2 properties 2 required
Payment-Intent-Amount
integer
The payment amount expressed in minor currency units, according to the [ISO 4217 standard](https://en.wikipedia.org/wiki/ISO4217). For example, 7034 in EUR cor…

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

revolut-payment-intents-api-openapi.yml Raw ↑

Other APIs Revolut publishes across the network.

Revolut Accounting API
Revolut Accounting categories API
Revolut Accounts API
Revolut Apple Pay merchant registration API
Revolut Applications API
Revolut Balance API
Revolut Card invitations API
Revolut Cards API
Revolut Configuration API
Revolut Counterparties API
Revolut Customers API
Revolut Disputes API
Where this information came from

This is an independent, third-party profile of Revolut Payment intents API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.