*Domestic payments*, which you can use for local payments in the local currency of the user.:::noteRevolut supports only GBP as local in the UK and EUR in Single Euro Payments Area (SEPA) countries.:::As a regulated third party provider, you can use the provided endpoints to initiate a domestic payment in the following high-level workflow:- Create a consent.- Get the consent.- Create a payment.- Get the payment.Before you begin, ensure that you've registered your application with the `payments` scope.For more information, see [Tutorials: Initiate your first payment](https://developer.revolut.com/docs/guides/build-banking-apps/tutorials/initiate-your-first-payment).:::tipSee also [Domestic scheduled payments](https://developer.revolut.com/docs/api/open-banking#tag-domestic-scheduled-payment) and [Domestic standing orders](https://developer.revolut.com/docs/api/open-banking#tag-domestic-standing-order).:::
Revolut Domestic payment API is one of 46 APIs that Revolut publishes on the APIs.io network, described by a machine-readable OpenAPI specification.
Tagged areas include Domestic payment. The published artifact set on APIs.io includes an OpenAPI specification.
This API exposes
5 operations
across 5 paths,
and defines 32 schemas.
It is described by OpenAPI 3.0.1, at version 1.0.
Requests are made against 2 base URLs: https://b2b.revolut.com/api/1.0, https://sandbox-b2b.revolut.com/api/1.0.
5 operations5 paths32 schemas3 GET2 POST
Metadata
The identity and technical contract details declared by the specification.
Specification
OpenAPI 3.0.1
API Version
1.0
Base URL
https://b2b.revolut.com/api/1.0
Authentication
HTTP Bearer
Resource Areas
1
Authentication & Security 1
Revolut Domestic payment API declares
1 security scheme
for authenticating requests.
It accepts HTTP bearer tokens (AccessToken).
AccessToken — Each Business API request must contain an authorization header in the following format to make a call: Bearer . The access token will be obtained the first tim…
Paths & Operations 5
Across 5 paths, the API surfaces 5 operations — 3 GET, 2 POST. Each is listed below with its method, path, parameters, and response codes.
Domestic payment 5
Domestic payments, which you can use for local payments in the local currency of the user. :::note Revolut supports only GBP as local in the UK and EUR in Single Euro Payments Are…
The contract defines 32 schemas that model the data the API accepts and returns. The most detailed are OBPostalAddress6 (9 properties), OBDomesticInitiationBase (7 properties), OBWriteDataDomesticResponse2 (6 properties), OBWriteDataDomesticConsentResponse2 (5 properties). Each schema is shown below with its type and property counts.
OBExternalConsentStatus1Code
string
The status of the consent.
OBSupplementaryData1
object
The additional information that cannot be captured in the structured fields and/or any other specific block.
OBRemittanceInformation1
object
The information used for matching an entry with the items that the transfer is intended to settle, such as commercial invoices in an accounts' receivable syste…
2 properties
OBWriteDataFundsConfirmationResponse1
object
1 property
OBWriteDomesticConsentResponse2
object
4 properties4 required
OBTransactionIndividualStatus1Code
string
The status of the payment information group.
Meta
object
Meta data relevant to the payload.
1 property
OBWriteDataDomestic2
object
2 properties2 required
OBExternalAccountIdentification4Code
string
The name of the identification scheme.
OBExternalMerchantCategoryCode
string
The merchant category code.
OBDomesticInitiationBase
object
The initiation payload that the initiating party sends to the [ASPSP](https://developer.revolut.com/docs/guides/build-banking-apps/glossary), which is used to…
7 properties
OBCashAccountDebtorResponse
object
The details to identify the account which was used to approve the payment consent. This information can be used as a refund address.
4 properties2 required
OBActiveCurrencyAndAmount_SimpleType
string
The amount of money where the unit of currency is explicit and compliant with [ISO 4217](https://en.wikipedia.org/wiki/ISO4217).
OBCashAccountDebtor4
object
The details to identify the account from which the payment consent can be approved. If provided in the consent, the [PSU](https://developer.revolut.com/docs/gu…
4 properties2 required
OBWriteDomestic2
object
2 properties2 required
OBWriteFundsConfirmationResponse1
object
3 properties3 required
OBErrorResponse1
object
The detailed information about the error to help troubleshooting.
4 properties3 required
OBWriteDomesticResponse2
object
3 properties3 required
Links
object
Links relevant to the payload.
3 properties1 required
OBExternalMerchantCustomerIdentification
string
The merchant customer identification.
OBDomesticInitiationResponse
object
The initiation payload that the initiating party sends to the [ASPSP](https://developer.revolut.com/docs/guides/build-banking-apps/glossary), which is used to…
OBWriteDataDomesticConsent2
object
1 property1 required
OBWriteDataDomesticConsentResponse2
object
5 properties5 required
OBError1
object
2 properties2 required
OBFundsAvailableResult1
object
The results of the funds availability check.
2 properties2 required
OBExternalPaymentContext1Code
string
The payment context.
OBRisk1
object
The Risk section contains the risk indicators that the initiating party sends to the [ASPSP](https://developer.revolut.com/docs/guides/build-banking-apps/gloss…
4 properties
OBDomestic2
object
The initiation payload that the initiating party sends to the [ASPSP](https://developer.revolut.com/docs/guides/build-banking-apps/glossary), which is used to…
OBPostalAddress6
object
The postal address of the creditor, as defined by postal services.
9 properties
OBCashAccountCreditor3
object
The details to identify the account.
4 properties3 required
OBWriteDataDomesticResponse2
object
6 properties6 required
OBWriteDomesticConsent2
object
2 properties2 required
Specification
The full machine-readable OpenAPI contract behind this narrative.