Skip to content

Instantly share code, notes, and snippets.

@MarwanRefaat
Created March 15, 2022 17:51
Show Gist options
  • Save MarwanRefaat/f6b300b5b6f0984a1642f1918116e706 to your computer and use it in GitHub Desktop.
Save MarwanRefaat/f6b300b5b6f0984a1642f1918116e706 to your computer and use it in GitHub Desktop.
revolut-openapi.json
{
"openapi": "3.0.0",
"info": {
"title": "Open Banking API",
"description": "The Revolut Open Banking API is the gateway for third-party providers to interact with Revolut customers and products. \n\nYou can take advantage of the Open Banking API to build your banking applications whether you are \n- A regulated third party provider that wants to get account and transaction information of Revolut customers and initiate different types of payments, or \n- An innovative service provider that is looking to seamlessly integrate Revolut functions into your own applications.\n\nTo get started using the Open Banking API, check the [user guide](https://developer.revolut.com/docs/build-banking-apps/#get-started).\n\n# Authentication\n\n<!-- ReDoc-Inject: <security-definitions> -->",
"version": "v3.1.0"
},
"paths": {
"/account-access-consents": {
"post": {
"summary": "Create an account access consent",
"operationId": "CreateAccountAccessConsents",
"parameters": [
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"requestBody": {
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBReadConsent1"
}
}
},
"description": "Default",
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201AccountAccessConsentsCreated"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"415": {
"$ref": "#/components/responses/415ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"tags": [
"Account and Transactions"
],
"description": "Before you can access any data from a Revolut user, you must create an access consent to read data from the user's profile.\n\n**Note**: When you create an account access consent, you must include a specific permission that follows the rules in the table below; otherwise, you get a `400 Bad request` error.\n\n**Request Permissions**\n\n| PERMISSIONS | DEPENDENCIES |\n|--|--|\n| ReadAccountsBasic | None |\n| ReadAccountsDetail |None|\n| ReadBalances |None|\n| ReadBeneficiariesBasic |None|\n| ReadBeneficiariesDetail |None|\n| ReadDirectDebits |None|\n| ReadScheduledPaymentsBasic |None|\n| ReadScheduledPaymentsDetail |None|\n| ReadStandingOrdersBasic |None|\n| ReadStandingOrdersDetail |None|\n| ReadTransactionsBasic |None|\n| ReadTransactionsCredits |ReadTransactionsBasic OR ReadTransactionsDetail|\n|ReadTransactionsDebits |ReadTransactionsBasic OR ReadTransactionsDetail|\n| ReadTransactionsDetail | None |\n"
}
},
"/account-access-consents/{ConsentId}": {
"get": {
"tags": [
"Account and Transactions"
],
"summary": "Retrieve an account access consent",
"operationId": "GetAccountAccessConsentsConsentId",
"parameters": [
{
"$ref": "#/components/parameters/ConsentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200AccountAccessConsentsConsentIdRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the details of the account access consent as described in the Open Banking [official documentation](https://openbanking.atlassian.net/wiki/spaces/DZ/pages/999622968/Account+and+Transaction+API+Specification+-+v3.1.1).\n"
},
"delete": {
"tags": [
"Account and Transactions"
],
"summary": "Delete an account access consent",
"operationId": "DeleteAccountAccessConsentsConsentId",
"parameters": [
{
"$ref": "#/components/parameters/ConsentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"204": {
"$ref": "#/components/responses/204AccountAccessConsentsConsentIdDeleted"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Use this endpoint to:\n\n- Reject a consent if it is in the `AwaitingAuthorisation` state or any error occurs while the consent is being authorised.\n- Revoke a consent if it is in the `Authorised` state."
}
},
"/accounts": {
"get": {
"tags": [
"Account and Transactions"
],
"summary": "Retrieve all accounts",
"operationId": "GetAccounts",
"parameters": [
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200AccountsRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get a list of user accounts.\n"
}
},
"/accounts/{AccountId}": {
"get": {
"tags": [
"Account and Transactions"
],
"summary": "Retrieve an account",
"operationId": "GetAccountsAccountId",
"parameters": [
{
"$ref": "#/components/parameters/AccountId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200AccountsAccountIdRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the information about a specific account by ID.\n"
}
},
"/accounts/{AccountId}/balances": {
"get": {
"tags": [
"Account and Transactions"
],
"summary": "Retrieve an account balance",
"operationId": "GetAccountsAccountIdBalances",
"parameters": [
{
"$ref": "#/components/parameters/AccountId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200AccountsAccountIdBalancesRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the balance of an account.\n"
}
},
"/accounts/{AccountId}/beneficiaries": {
"get": {
"tags": [
"Account and Transactions"
],
"summary": "Retrieve all account's beneficiaries",
"operationId": "GetAccountsAccountIdBeneficiaries",
"parameters": [
{
"$ref": "#/components/parameters/AccountId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200AccountsAccountIdBeneficiariesRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get all the beneficiaries of a specific user account.\n"
}
},
"/accounts/{AccountId}/direct-debits": {
"get": {
"tags": [
"Account and Transactions"
],
"summary": "Retrieve all account's direct debits",
"operationId": "GetAccountsAccountIdDirectDebits",
"parameters": [
{
"$ref": "#/components/parameters/AccountId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200AccountsAccountIdDirectDebitsRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get a list of all the direct debits for a specific user account.\n"
}
},
"/accounts/{AccountId}/standing-orders": {
"get": {
"tags": [
"Account and Transactions"
],
"summary": "Retrieve all account's standing orders",
"operationId": "GetAccountsAccountIdStandingOrders",
"parameters": [
{
"$ref": "#/components/parameters/AccountId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200AccountsAccountIdStandingOrdersRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get a list of all the standing orders for a specific user account.\n"
}
},
"/accounts/{AccountId}/transactions": {
"get": {
"tags": [
"Account and Transactions"
],
"summary": "Retrieve all transactions",
"operationId": "GetAccountsAccountIdTransactions",
"parameters": [
{
"$ref": "#/components/parameters/AccountId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/FromBookingDateTimeParam"
},
{
"$ref": "#/components/parameters/ToBookingDateTimeParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200AccountsAccountIdTransactionsRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get all the recent transactions for an account.\n\n>To be compliant with PSD2 SCA regulations, we only allow access to the last 90 days’ transactions. However, you can access older transactions within the first 5 minutes of an account access token being authorized. This means that within the first 5 minutes of a Revolut user authenticating your request, you can request data older than 90 days. After the 5 minute mark, the access to the transaction data is automatically restricted only to the last 90 days.\n"
}
},
"/domestic-payment-consents": {
"post": {
"tags": [
"Payment Initiation"
],
"summary": "Create a domestic payment consent",
"operationId": "CreateDomesticPaymentConsents",
"parameters": [
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-idempotency-key"
},
{
"$ref": "#/components/parameters/x-jws-signature-Param"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"requestBody": {
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomesticConsent2"
}
}
},
"description": "Default",
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201DomesticPaymentConsentsCreated"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"415": {
"$ref": "#/components/responses/415ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Create a domestic payment consent described in the [Open Banking API documentation: Account and Transaction API Specification](https://openbanking.atlassian.net/wiki/spaces/DZ/pages/999622968/Account+and+Transaction+API+Specification+-+v3.1.1). \n\nUse domestic payments for local payments in the local currency of the user. \n\n> **Note**: Revolut supports only GBP as local in the UK and EUR in Single Euro Payments Area (SEPA) countries.\n\nBecause Revolut Business users can have multiple accounts in the same currency, they can choose which account to be charged in the consent authorization UI. \n\nWhen you make the API call, ensure that you:\n- Pass the `x-jws-signature` header in your request. The signature is generated from the request body with the TPP signing key that is specified in the JWS header. \n- Pass `head` and `signature` in the `<jws_head>..<jws_signature>` format.\n\n> **Note**: Currently, the `EndToEndIdentification` field isn't supported.\n"
}
},
"/domestic-payment-consents/{ConsentId}": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Retrieve a domestic payment consent",
"operationId": "GetDomesticPaymentConsentsConsentId",
"parameters": [
{
"$ref": "#/components/parameters/ConsentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200DomesticPaymentConsentsConsentIdRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the details of a domestic payment consent.\n"
}
},
"/domestic-payment-consents/{ConsentId}/funds-confirmation": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Get funds confirmation for a domestic payment consent",
"operationId": "GetDomesticPaymentConsentsConsentIdFundsConfirmation",
"parameters": [
{
"$ref": "#/components/parameters/ConsentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200DomesticPaymentConsentsConsentIdFundsConfirmationRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Check the funds for a domestic payment with the given consent. You can get the information only if the user has authorized the related consent.\n"
}
},
"/domestic-payments": {
"post": {
"tags": [
"Payment Initiation"
],
"summary": "Create a domestic payment",
"operationId": "CreateDomesticPayments",
"parameters": [
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-idempotency-key"
},
{
"$ref": "#/components/parameters/x-jws-signature-Param"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"requestBody": {
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomestic2"
}
}
},
"description": "Default",
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201DomesticPaymentsCreated"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"415": {
"$ref": "#/components/responses/415ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Create a domestic payment. \n\n> **Note**: As is defined in the Open Banking Specifications, the `/Data/Initiation` and the `/Data/Risk` sections of the request must be an exact match for the related consent passed in `ConsentId`.\n"
}
},
"/domestic-payments/{DomesticPaymentId}": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Retrieve a domestic payment",
"operationId": "GetDomesticPaymentsDomesticPaymentId",
"parameters": [
{
"$ref": "#/components/parameters/DomesticPaymentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200DomesticPaymentsDomesticPaymentIdRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the state of a domestic payment.\n"
}
},
"/domestic-scheduled-payment-consents": {
"post": {
"tags": [
"Payment Initiation"
],
"summary": "Create a domestic scheduled payment consent",
"operationId": "CreateDomesticScheduledPaymentConsents",
"parameters": [
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-idempotency-key"
},
{
"$ref": "#/components/parameters/x-jws-signature-Param"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"requestBody": {
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomesticScheduledConsent2"
}
}
},
"description": "Default",
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201DomesticScheduledPaymentConsentsCreated"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"415": {
"$ref": "#/components/responses/415ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Create a scheduled payment consent as described in the [Open Banking API documentation: Account and Transaction API Specification](https://openbanking.atlassian.net/wiki/spaces/DZ/pages/999622968/Account+and+Transaction+API+Specification+-+v3.1.1). \n\nUse domestic scheduled payments for local scheduled payments in the local currency of the user. \n\n> **Note**: Revolut supports only GBP as local in the UK and EUR in SEPA countries.\n\nBecause Revolut Business users can have multiple accounts in the same currency, they can select which account to be charged in the consent authorization UI. \n\nWhen you make the API call, ensure that you:\n- Pass the `x-jws-signature` header in your request. The signature is generated from the request body with the TPP signing key that is specified in the JWS header. \n- Pass `head` and `signature` in the `<jws_head>..<jws_signature>` format.\n\n> **Note**: The domestic scheduled payments API is in beta.\n"
}
},
"/domestic-scheduled-payment-consents/{ConsentId}": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Retrieve a domestic scheduled payment consent",
"operationId": "GetDomesticScheduledPaymentConsentsConsentId",
"parameters": [
{
"$ref": "#/components/parameters/ConsentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200DomesticScheduledPaymentConsentsConsentIdRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the details of a domestic scheduled payment consent.\n"
}
},
"/domestic-scheduled-payments": {
"post": {
"tags": [
"Payment Initiation"
],
"summary": "Create a domestic scheduled payment",
"operationId": "CreateDomesticScheduledPayments",
"parameters": [
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-idempotency-key"
},
{
"$ref": "#/components/parameters/x-jws-signature-Param"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"requestBody": {
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomesticScheduled2"
}
}
},
"description": "Default",
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201DomesticScheduledPaymentsCreated"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"415": {
"$ref": "#/components/responses/415ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Create a domestic scheduled payment. \n\n> **Note**: As is defined in the Open Banking Specifications, the `/Data/Initiation` and the `/Data/Risk` sections of the request must be an exact match for the related consent passed in `ConsentId`.\n"
}
},
"/domestic-scheduled-payments/{DomesticScheduledPaymentId}": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Retrieve a domestic scheduled payment",
"operationId": "GetDomesticScheduledPaymentsDomesticScheduledPaymentId",
"parameters": [
{
"$ref": "#/components/parameters/DomesticScheduledPaymentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200DomesticScheduledPaymentsDomesticScheduledPaymentIdRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the state of a domestic scheduled payment.\n"
}
},
"/domestic-standing-order-consents": {
"post": {
"tags": [
"Payment Initiation"
],
"summary": "Create a domestic standing order consent",
"operationId": "CreateDomesticStandingOrderConsents",
"parameters": [
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-idempotency-key"
},
{
"$ref": "#/components/parameters/x-jws-signature-Param"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"requestBody": {
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomesticStandingOrderConsent2"
}
}
},
"description": "Default",
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201DomesticStandingOrderConsentsCreated"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"415": {
"$ref": "#/components/responses/415ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Create a domestic standing order consent described in the [Open Banking API documentation: Account and Transaction API Specification](https://openbanking.atlassian.net/wiki/spaces/DZ/pages/999622968/Account+and+Transaction+API+Specification+-+v3.1.1). \n\nUse domestic standing orders for local recurring payments in the local currency of the user. \n\n> **Note**: Revolut supports only GBP as local in the UK and EUR in Single Euro Payments Area (SEPA) countries.\n\nBecause Revolut Business users can have multiple accounts in the same currency, they can choose which account to be charged in the consent authorization UI. \n\nWhen you make the API call, ensure that you:\n- Pass the `x-jws-signature` header in your request. The signature is generated from the request body with the TPP signing key that is specified in the JWS header. \n- Pass `head` and `signature` in the `<jws_head>..<jws_signature>` format.\n\n\nThe following types of standing orders frequency are supported:\n\n| FREQUENCY | EXAMPLE | DETAILS |\n|---|---|---|\n| `EvryDay` | EvryDay | daily, supported only for personal accounts |\n| `IntrvlWkDay` | IntrvlWkDay:01:03 | weekly on a specified week day, only 1 week interval is supported |\n| `IntrvlWkDay` | IntrvlMnthDay:01:03 | monthly on a specified day of month, only 1 month interval is supported |\n\n\n> **Note**: The standing orders API is in beta."
}
},
"/domestic-standing-order-consents/{ConsentId}": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Retrieve a domestic standing order consent",
"operationId": "GetDomesticStandingOrderConsentsConsentId",
"parameters": [
{
"$ref": "#/components/parameters/ConsentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200DomesticStandingOrderConsentsConsentIdRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the details of a domestic standaring order consent.\n"
}
},
"/domestic-standing-orders": {
"post": {
"tags": [
"Payment Initiation"
],
"summary": "Create a domestic standing order",
"operationId": "CreateDomesticStandingOrders",
"parameters": [
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-idempotency-key"
},
{
"$ref": "#/components/parameters/x-jws-signature-Param"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"requestBody": {
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomesticStandingOrder2"
}
}
},
"description": "Default",
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201DomesticStandingOrdersCreated"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"415": {
"$ref": "#/components/responses/415ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Create a domestic standing order.\n\n> **Note**: As is defined in the Open Banking Specifications, the `/Data/Initiation` and the `/Data/Risk` sections of the request must be an exact match for the related consent passed in `ConsentId`.\n"
}
},
"/domestic-standing-orders/{DomesticStandingOrderId}": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Retrieve a domestic standing order",
"operationId": "GetDomesticStandingOrdersDomesticStandingOrderId",
"parameters": [
{
"$ref": "#/components/parameters/DomesticStandingOrderId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200DomesticStandingOrdersDomesticStandingOrderIdRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the state of a domestic standing order.\n"
}
},
"/file-payment-consents": {
"post": {
"tags": [
"Payment Initiation"
],
"summary": "Create a file payment consent",
"operationId": "CreateFilePaymentConsents",
"parameters": [
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-idempotency-key"
},
{
"$ref": "#/components/parameters/x-jws-signature-Param"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"requestBody": {
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteFileConsent2"
}
}
},
"description": "Default",
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201FilePaymentConsentsCreated"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"415": {
"$ref": "#/components/responses/415ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Create a file payment consent described in the [Open Banking API documentation: Account and Transaction API Specification](https://openbanking.atlassian.net/wiki/spaces/DZ/pages/999622968/Account+and+Transaction+API+Specification+-+v3.1.1). \n\n> **Note**: File Payments are available only for Revolut Business users. Currently only the `text/csv` file type is supported for File Payments.\n\nWhen you make the API call, ensure that you:\n- Pass the `x-jws-signature` header in your request. The signature is generated from the request body with the TPP signing key that is specified in the JWS header. \n- Pass `head` and `signature` in the `<jws_head>..<jws_signature>` format.\n\n\n> **Note**: The file payments API is in beta."
}
},
"/file-payment-consents/{ConsentId}": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Retrieve a file payment consent",
"operationId": "GetFilePaymentConsentsConsentId",
"parameters": [
{
"$ref": "#/components/parameters/ConsentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200FilePaymentConsentsConsentIdRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the details of a file payment consent.\n"
}
},
"/file-payment-consents/{ConsentId}/file": {
"post": {
"tags": [
"Payment Initiation"
],
"summary": "Upload a payment file",
"operationId": "CreateFilePaymentConsentsConsentIdFile",
"parameters": [
{
"$ref": "#/components/parameters/ConsentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-idempotency-key"
},
{
"$ref": "#/components/parameters/x-jws-signature-Param"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"requestBody": {
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/File"
}
}
},
"description": "Default",
"required": true
},
"responses": {
"200": {
"$ref": "#/components/responses/200FilePaymentConsentsConsentIdFileCreated"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"415": {
"$ref": "#/components/responses/415ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Use this endpoint to upload a file for the given file payment consent.\n\n> **Note**: Only CSV files with the following structure are supported.\n\n| FIELD | REQUIRED | DESCRIPTION |\n|---|---|---|\n|`Name`|Yes| Can contain up to 80 characters. If `recipient type` is `INDIVIDUAL`, this field must contain a first and a last name, separated by a space.|\n|`Recipient type` |Yes| Can be either `INDIVIDUAL` or `COMPANY`.|\n|`Account number` |For UK transfers| Must contain valid account number if provided.|\n|`Sort code` or `Routing number`| For UK transfers| Must contain valid sort code or routing number if provided.|\n|`IBAN` |For SEPA transfers| Must contain valid IBAN if provided.|\n|`BIC` |For SEPA transfers| Must contain valid BIC if provided.|\n|`Recipient bank country` |Yes| Must contain valid ISO 3166-1 country code.|\n|`Currency`| Yes |Must contain valid ISO 4217 currency code.|\n|`Amount` |Yes| Must match following pattern `[0-9]*(\\\\\\\\.[0-9]*)?`.|\n|`Payment reference` |Yes| Can contain up to 100 characters.|\n|`Recipient country` |No |Must contain valid ISO 3166-1 country code if provided.|\n|`State or province`| No| Can contain up to 50 characters.|\n|`Address line 1` |No| Can contain up to 50 characters.|\n|`Address line 2` | No |Can contain up to 50 characters.|\n|`City` |No| Can contain up to 50 characters.|\n|`Postal code` |No| Can contain up to 50 characters.|\n"
},
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Retrieve an uploaded payment file",
"operationId": "GetFilePaymentConsentsConsentIdFile",
"parameters": [
{
"$ref": "#/components/parameters/ConsentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200FilePaymentConsentsConsentIdFileRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the payment file that was uploaded with the given consent.\n"
}
},
"/file-payments": {
"post": {
"tags": [
"Payment Initiation"
],
"summary": "Create a file payment",
"operationId": "CreateFilePayments",
"parameters": [
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-idempotency-key"
},
{
"$ref": "#/components/parameters/x-jws-signature-Param"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"requestBody": {
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteFile2"
}
}
},
"description": "Default",
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201FilePaymentsCreated"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"415": {
"$ref": "#/components/responses/415ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Create a file payment. \n\n> **Note**: As is defined in the Open Banking Specifications, the `/Data/Initiation` and the `/Data/Risk` sections of the request must be an exact match for the related consent passed in `ConsentId`.\n"
}
},
"/file-payments/{FilePaymentId}": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Retrieve a file payment",
"operationId": "GetFilePaymentsFilePaymentId",
"parameters": [
{
"$ref": "#/components/parameters/FilePaymentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200FilePaymentsFilePaymentIdRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the state of a file payment."
}
},
"/file-payments/{FilePaymentId}/report-file": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Retrieve all payments of a file payment",
"operationId": "GetFilePaymentsFilePaymentIdReportFile",
"parameters": [
{
"$ref": "#/components/parameters/FilePaymentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200FilePaymentsFilePaymentIdReportFileRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the state of all individual payments for the given file payment. \n\n> **Note**: Currently only the `JSON` format is supported.\n"
}
},
"/international-payment-consents": {
"post": {
"tags": [
"Payment Initiation"
],
"summary": "Create an international payment consent",
"operationId": "CreateInternationalPaymentConsents",
"parameters": [
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-idempotency-key"
},
{
"$ref": "#/components/parameters/x-jws-signature-Param"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"requestBody": {
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternationalConsent2"
}
}
},
"description": "Default",
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201InternationalPaymentConsentsCreated"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"415": {
"$ref": "#/components/responses/415ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Create an international payment consent described in the [Open Banking API documentation: Account and Transaction API Specification](https://openbanking.atlassian.net/wiki/spaces/DZ/pages/999622968/Account+and+Transaction+API+Specification+-+v3.1.1). \n\nUse international payments for international SWIFT payments in all currencies supported by Revolut.\n\n> **Note**: Only the payments with `InstructedAmount` in the same currency as `CurrencyOfTransfer` are supported. \n\nHowever, users can select which account to be charged in the consent authorization UI even if the selected account is in a different currency. \n\nIn such a case, the `ExchangeRateInformation` response field contains information about the `ExchangeRate` between `SourceCurrency` and `CurrencyOfTransfer`. If the user doesn't have enough funds on the selected account, the consent authorization is rejected.\n\nWhen you make the API call, ensure that you:\n- Pass the `x-jws-signature` header in your request. The signature is generated from the request body with the TPP signing key that is specified in the JWS header. \n- Pass `head` and `signature` in the `<jws_head>..<jws_signature>` format.\n\n> **Note**: Currently, the `EndToEndIdentification` field isn't supported. \n> The international payments API is in beta.\n"
}
},
"/international-payment-consents/{ConsentId}": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Retrieve an international payment consent",
"operationId": "GetInternationalPaymentConsentsConsentId",
"parameters": [
{
"$ref": "#/components/parameters/ConsentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200InternationalPaymentConsentsConsentIdRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the details of an international payment consent."
}
},
"/international-payment-consents/{ConsentId}/funds-confirmation": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Get funds confirmation for an international payment consent",
"operationId": "GetInternationalPaymentConsentsConsentIdFundsConfirmation",
"parameters": [
{
"$ref": "#/components/parameters/ConsentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200InternationalPaymentConsentsConsentIdFundsConfirmationRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Check the funds for an international payment with the given consent. You can get the information only if the user has authorized the related consent.\n"
}
},
"/international-payments": {
"post": {
"tags": [
"Payment Initiation"
],
"summary": "Create an international payment",
"operationId": "CreateInternationalPayments",
"parameters": [
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-idempotency-key"
},
{
"$ref": "#/components/parameters/x-jws-signature-Param"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"requestBody": {
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternational2"
}
}
},
"description": "Default",
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201InternationalPaymentsCreated"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"415": {
"$ref": "#/components/responses/415ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Create an international payment. \n\n> **Note**: As is defined in the Open Banking Specifications, the `/Data/Initiation` and the `/Data/Risk` sections of the request must be an exact match for the related consent passed in `ConsentId`.\n"
}
},
"/international-payments/{InternationalPaymentId}": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Retrieve an international payment",
"operationId": "GetInternationalPaymentsInternationalPaymentId",
"parameters": [
{
"$ref": "#/components/parameters/InternationalPaymentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200InternationalPaymentsInternationalPaymentIdRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the state of an international payment.\n"
}
},
"/international-scheduled-payment-consents": {
"post": {
"tags": [
"Payment Initiation"
],
"summary": "Create an international scheduled payment consent",
"operationId": "CreateInternationalScheduledPaymentConsents",
"parameters": [
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-idempotency-key"
},
{
"$ref": "#/components/parameters/x-jws-signature-Param"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"requestBody": {
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternationalScheduledConsent2"
}
}
},
"description": "Default",
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201InternationalScheduledPaymentConsentsCreated"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"415": {
"$ref": "#/components/responses/415ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Create an international scheduled payment consent described in the [Open Banking API documentation: Account and Transaction API Specification](https://openbanking.atlassian.net/wiki/spaces/DZ/pages/999622968/Account+and+Transaction+API+Specification+-+v3.1.1). \n\nUse international scheduled payments for international SWIFT payments in all currencies supported by Revolut.\n\n> **Note**: Only the payments with `InstructedAmount` in the same currency as `CurrencyOfTransfer` are supported. \n\nHowever, users can select which account to be charged in the consent authorization UI even if the selected account is in a different currency. \n\nIn such a case, the `ExchangeRateInformation` response field contains information about the `ExchangeRate` between `SourceCurrency` and `CurrencyOfTransfer`. If the user doesn't have enough funds on the selected account, the consent authorization is rejected.\n\nWhen you make the API call, ensure that you:\n- Pass the `x-jws-signature` header in your request. The signature is generated from the request body with the TPP signing key that is specified in the JWS header. \n- Pass `head` and `signature` in the `<jws_head>..<jws_signature>` format.\n\n> **Note**: The international scheduled payments API is in beta.\n"
}
},
"/international-scheduled-payment-consents/{ConsentId}": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Retrieve an international scheduled payment consent",
"operationId": "GetInternationalScheduledPaymentConsentsConsentId",
"parameters": [
{
"$ref": "#/components/parameters/ConsentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200InternationalScheduledPaymentConsentsConsentIdRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the details of an international scheduled payment consent.\n"
}
},
"/international-scheduled-payment-consents/{ConsentId}/funds-confirmation": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Get funds confirmation for an international scheduled payment",
"operationId": "GetInternationalScheduledPaymentConsentsConsentIdFundsConfirmation",
"parameters": [
{
"$ref": "#/components/parameters/ConsentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200InternationalScheduledPaymentConsentsConsentIdFundsConfirmationRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Check the funds for an international scheduled payment with the given consent. You can get the information only if the user has authorized the related consent."
}
},
"/international-scheduled-payments": {
"post": {
"tags": [
"Payment Initiation"
],
"summary": "Create an international scheduled payment",
"operationId": "CreateInternationalScheduledPayments",
"parameters": [
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-idempotency-key"
},
{
"$ref": "#/components/parameters/x-jws-signature-Param"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"requestBody": {
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternationalScheduled2"
}
}
},
"description": "Default",
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201InternationalScheduledPaymentsCreated"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"415": {
"$ref": "#/components/responses/415ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Create an international scheduled payment.\n\n> **Note**: As is defined in the Open Banking Specifications, the `/Data/Initiation` and the `/Data/Risk` sections of the request must be an exact match for the related consent passed in `ConsentId`."
}
},
"/international-scheduled-payments/{InternationalScheduledPaymentId}": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Retrieve an international scheduled payment",
"operationId": "GetInternationalScheduledPaymentsInternationalScheduledPaymentId",
"parameters": [
{
"$ref": "#/components/parameters/InternationalScheduledPaymentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200InternationalScheduledPaymentsInternationalScheduledPaymentIdRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the state of an international scheduled payment.\n"
}
},
"/international-standing-order-consents": {
"post": {
"tags": [
"Payment Initiation"
],
"summary": "Create an international standing order consent",
"operationId": "CreateInternationalStandingOrderConsents",
"parameters": [
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-idempotency-key"
},
{
"$ref": "#/components/parameters/x-jws-signature-Param"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"requestBody": {
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternationalStandingOrderConsent2"
}
}
},
"description": "Default",
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201InternationalStandingOrderConsentsCreated"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"415": {
"$ref": "#/components/responses/415ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Creating an international standing order consent described in the [Open Banking API documentation: Account and Transaction API Specification](https://openbanking.atlassian.net/wiki/spaces/DZ/pages/999622968/Account+and+Transaction+API+Specification+-+v3.1.1). \n\nUse international standing orders for international SWIFT payments in all currencies supported by Revolut.\n\n> **Note**: Only the payments with `InstructedAmount` in the same currency as `CurrencyOfTransfer` are supported. \n\nHowever, users can select which account to be charged in the consent authorization UI even if the selected account is in a different currency. \n\nIn such a case, the `ExchangeRateInformation` response field contains information about the `ExchangeRate` between `SourceCurrency` and `CurrencyOfTransfer`. If the user doesn't have enough funds on the selected account, the consent authorization is rejected.\n\nWhen you make the API call, ensure that you:\n- Pass the `x-jws-signature` header in your request. The signature is generated from the request body with the TPP signing key that is specified in the JWS header. \n- Pass `head` and `signature` in the `<jws_head>..<jws_signature>` format.\n\n> **Note**: Only the following types of standing orders frequency are supported:\n\n| FREQUENCY | EXAMPLE | DETAILS |\n|---|---|---|\n| EvryDay | EvryDay | daily, supported only for personal accounts |\n| IntrvlWkDay | IntrvlWkDay:01:03 | weekly on a specified week day, only 1 week interval is supported |\n| IntrvlWkDay | IntrvlMnthDay:01:03 | monthly on a specified day of month, only 1 month interval is supported |\n\n> **Note**: The international standing orders API is in beta stage."
}
},
"/international-standing-order-consents/{ConsentId}": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Retrieve an international standing order consent",
"operationId": "GetInternationalStandingOrderConsentsConsentId",
"parameters": [
{
"$ref": "#/components/parameters/ConsentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200InternationalStandingOrderConsentsConsentIdRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the details of an international standing order consent.\n"
}
},
"/international-standing-orders": {
"post": {
"tags": [
"Payment Initiation"
],
"summary": "Create an international standing order",
"operationId": "CreateInternationalStandingOrders",
"parameters": [
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-idempotency-key"
},
{
"$ref": "#/components/parameters/x-jws-signature-Param"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"requestBody": {
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternationalStandingOrder2"
}
}
},
"description": "Default",
"required": true
},
"responses": {
"201": {
"$ref": "#/components/responses/201InternationalStandingOrdersCreated"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"415": {
"$ref": "#/components/responses/415ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Create an international standing order.\n\n> **Note**: As is defined in the Open Banking Specifications, the `/Data/Initiation` and the `/Data/Risk` sections of the request must be an exact match for the related consent passed in `ConsentId`.\n"
}
},
"/international-standing-orders/{InternationalStandingOrderPaymentId}": {
"get": {
"tags": [
"Payment Initiation"
],
"summary": "Retrieve an international standing order",
"operationId": "GetInternationalStandingOrdersInternationalStandingOrderPaymentId",
"parameters": [
{
"$ref": "#/components/parameters/InternationalStandingOrderPaymentId"
},
{
"$ref": "#/components/parameters/x-fapi-financial-id-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-last-logged-time-Param"
},
{
"$ref": "#/components/parameters/x-fapi-customer-ip-address-Param"
},
{
"$ref": "#/components/parameters/x-fapi-interaction-id-Param"
},
{
"$ref": "#/components/parameters/AuthorizationParam"
},
{
"$ref": "#/components/parameters/x-customer-user-agent-Param"
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200InternationalStandingOrdersInternationalStandingOrderPaymentIdRead"
},
"400": {
"$ref": "#/components/responses/400ErrorResponse"
},
"401": {
"$ref": "#/components/responses/401ErrorResponse"
},
"403": {
"$ref": "#/components/responses/403ErrorResponse"
},
"404": {
"$ref": "#/components/responses/404ErrorResponse"
},
"405": {
"$ref": "#/components/responses/405ErrorResponse"
},
"406": {
"$ref": "#/components/responses/406ErrorResponse"
},
"429": {
"$ref": "#/components/responses/429ErrorResponse"
},
"500": {
"$ref": "#/components/responses/500ErrorResponse"
}
},
"security": [],
"description": "Get the state of an international standing order."
}
},
"/draft-payments": {
"post": {
"parameters": [
{
"description": "The date and time the draft payment is executed. \n\n**Note**: Any draft payment in the CSV file is created as a scheduled payment.",
"in": "query",
"name": "scheduledDate",
"required": false,
"schema": {
"type": "string",
"format": "YYYY-MM-DD"
}
},
{
"description": "The title of draft payment",
"in": "query",
"name": "title",
"required": false,
"schema": {
"type": "string"
}
},
{
"description": "Idempotency key in UUID format.",
"in": "header",
"name": "x-idempotency-key",
"required": true,
"schema": {
"type": "string",
"format": "UUID"
}
}
],
"requestBody": {
"content": {
"text/csv": {
"schema": {
"type": "string"
}
}
},
"description": "For the format of the CSV file, check the tables above.",
"required": true
},
"responses": {
"201": {
"description": "Draft Payment Details",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DraftPaymentResponse"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CsvError"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"429": {
"description": "Too Many Requests",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"503": {
"description": "Service Unavailable",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"default": {
"description": "Unexpected error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
},
"security": [],
"tags": [
"Draft Payments"
],
"description": "Before you begin, ensure that you've got an access token. For information about getting the access token, see [Tutorial: Create your first draft payment](https://developer.revolut.com/docs/build-banking-apps/#tutorials-tutorials-create-your-first-draft-payment-1-get-authorisation-from-user). Then, you can use the `/draft_payments` endpoint to create a draft payment on behalf of a user, and the draft payment appears in the user account where they can approve or reject. \n\nIn addition, you can use this endpoint to make multiple draft payments by creating new rows for new drafts with the supported CSV format shown in the following tables. \n\nFor each draft payment request you make, ensure that the same currency is used. Upon a successful request for multiple draft payments, you recieve a `DraftPaymentID` that represents all the draft payments associated with this request.\n\nPlease note that the maximum number of rows in a CSV file is 50 and all the payments must be in the same currency.\n\n**Parameters**\n\n|NAME |LOCATED IN| DESCRIPTION | REQUIRED|\n|--|--|--|--|\n| `scheduledDate` | query |The date and time the draft payment is executed. Any draft payment in the CSV file is created as a scheduled payment.| No|\n\n**CSV Format**\n\n|FIELD |REQUIRED|DESCRIPTION|\n|---|---|---|\n|`Name`|Yes|Can contain up to 80 characters. If `recipient type` is `INDIVIDUAL`, this field must contain a first and a last name, separated by a space.|\n|`Recipient type`|Yes| Can be either `INDIVIDUAL` or `COMPANY`.|\n|`Account number` |For non-IBAN accounts| Must contain a valid account number if provided.|\n|`Sort code` or `Routing number`| For UK/US local transfers| Must contain a valid sort code or routing number if provided.|\n|`IBAN` |For IBAN accounts| Must contain a valid IBAN if provided.|\n|`BIC` |All the countries except for UK/US local| Must contain a valid BIC if provided.|\n|`Recipient bank country` |Yes| Must contain a valid ISO 3166-1 country code.|\n|`Currency`| Yes |Must contain a valid ISO 4217 currency code.|\n|`Amount` |Yes| Match the pattern: `[0-9]*(\\\\.[0-9]*)?`|\n|`Payment reference` |Yes| Can contain up to 100 characters.|\n|`Recipient country` |No |Must contain a valid ISO 3166-1 country code if provided.|\n|`State or province`| No| Can contain up to 50 characters.|\n|`Address line 1` |No| Can contain up to 50 characters.|\n|`Address line 2`| No |Can contain up to 50 characters.|\n|`City` |No| Can contain up to 50 characters.|\n|`Postal code` |No| Can contain up to 50 characters.|\n",
"operationId": "createDraftPayment",
"summary": "Create a draft payment"
},
"get": {
"parameters": [
{
"description": "Creation time inclusive lower bound in UTC ISO 8601 Date Time format YYYY-MM-DDThh:mm:ssZ",
"in": "query",
"name": "from",
"required": false,
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"description": "Creation time exclusive upper bound in UTC ISO 8601 Date Time format YYYY-MM-DDThh:mm:ssZ",
"in": "query",
"name": "to",
"required": false,
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"description": "Maximum number of items",
"in": "query",
"name": "limit",
"required": false,
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "Draft Payment List",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DraftPaymentListResponse"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"default": {
"description": "Unexpected error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
},
"security": [],
"tags": [
"Draft Payments"
],
"description": "Get draft payments list sorted by creation time in descending order.\n",
"operationId": "listDraftPayment",
"summary": "List draft payments"
}
},
"/draft-payments/{DraftPaymentId}/transfers/{DraftPaymentTransferId}": {
"delete": {
"parameters": [
{
"description": "The id of the draft payment",
"in": "path",
"name": "DraftPaymentId",
"required": true,
"schema": {
"type": "string",
"format": "UUID"
}
},
{
"description": "The id of the draft payment transfer",
"in": "path",
"name": "DraftPaymentTransferId",
"required": true,
"schema": {
"type": "string",
"format": "UUID"
}
}
],
"responses": {
"204": {
"description": "No content"
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"default": {
"description": "Unexpected error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
},
"security": [],
"tags": [
"Draft Payments"
],
"description": "Delete a specific draft payment transfer with the given draft payment transfer ID. A draft payment transfer can be deleted only if the user hasn't taken any action upon it, for example, approved or executed the draft payment.\n",
"operationId": "deleteDraftPaymentTransfer",
"summary": "Delete a draft payment transfer"
}
},
"/draft-payments/{DraftPaymentId}": {
"delete": {
"parameters": [
{
"description": "The ID of the draft payment.",
"in": "path",
"name": "DraftPaymentId",
"required": true,
"schema": {
"type": "string",
"format": "UUID"
}
}
],
"responses": {
"204": {
"description": "No content"
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"422": {
"description": "Unprocessable Entity",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"default": {
"description": "Unexpected error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
},
"security": [],
"tags": [
"Draft Payments"
],
"description": "Delete a specific draft payment with the given draft payment ID. A draft payment can be deleted only if the user hasn't taken any action upon it, for example, approved or executed the draft payment.\n",
"operationId": "deleteDraftPayment",
"summary": "Delete a draft payment"
},
"get": {
"parameters": [
{
"description": "The ID of the draft payment.",
"in": "path",
"name": "DraftPaymentId",
"required": true,
"schema": {
"type": "string",
"format": "UUID"
}
}
],
"responses": {
"200": {
"description": "Draft Payment Details",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DraftPaymentResponse"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"403": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"default": {
"description": "Unexpected error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
},
"security": [],
"tags": [
"Draft Payments"
],
"description": "Get the details about a specific draft payment with the given draft payment ID. \n",
"operationId": "findDraftPayment",
"summary": "Retrieve a draft payment"
}
},
"/webhooks": {
"get": {
"responses": {
"200": {
"description": "List of webhooks",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/WebhooksResponse"
}
}
}
},
"default": {
"description": "Unexpected error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
},
"security": [
{
"AccessToken": [
"read"
]
}
],
"tags": [
"Webhooks"
],
"description": "Get the details of all the webhooks.\n",
"operationId": "findWebhooks",
"summary": "Retrieve all webhooks"
}
},
"/webhooks/subscribe": {
"post": {
"responses": {
"200": {
"description": "List of webhooks",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/WebhooksResponse"
}
}
}
},
"default": {
"description": "Unexpected error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
},
"security": [
{
"AccessToken": [
"read"
]
}
],
"tags": [
"Webhooks"
],
"description": "Create webhooks to receive real-time notifications for events that are happening in relation to your application.\n",
"operationId": "subscribe",
"summary": "Subscribe to receive notifications"
}
},
"/webhooks/unsubscribe": {
"post": {
"responses": {
"200": {
"description": "List of webhooks",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/WebhooksResponse"
}
}
}
},
"default": {
"description": "Unexpected error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
},
"security": [
{
"AccessToken": [
"read"
]
}
],
"tags": [
"Webhooks"
],
"description": "Unsubscribe to stop receiving notifications.\n",
"operationId": "unsubscribe",
"summary": "Unsubscribe from given topic"
}
},
"/expenses": {
"get": {
"parameters": [
{
"description": "All the expenses created after this date and time are returned. The default value is the date and time the first expense was created.",
"in": "query",
"name": "from",
"required": false,
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"description": "All the expenses created till this date and time are returned. The default value is **Now**.",
"in": "query",
"name": "to",
"required": false,
"schema": {
"type": "string",
"format": "date-time"
}
}
],
"responses": {
"200": {
"description": "List of business expenses",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExpensesResponse"
}
}
}
},
"default": {
"description": "Unexpected error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
},
"security": [
{
"AccessToken": [
"read"
]
}
],
"tags": [
"Expenses"
],
"description": "Get the details of all the expenses to an account that occur during the specified period.\n",
"operationId": "findExpenses",
"summary": "Retrieve all expenses"
}
},
"/transactions/{TransactionId}/receipt/{ReceiptId}": {
"get": {
"parameters": [
{
"description": "The ID of the transaction that `ReceiptId` is retrieved for.",
"in": "path",
"name": "TransactionId",
"required": true,
"schema": {
"type": "string",
"format": "UUID"
}
},
{
"description": "The ID of the receipt.",
"in": "path",
"name": "ReceiptId",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Receipt",
"content": {
"image/png": {
"schema": {
"$ref": "#/components/schemas/Receipt"
}
},
"image/jpeg": {
"schema": {
"$ref": "#/components/schemas/Receipt"
}
},
"image/gif": {
"schema": {
"$ref": "#/components/schemas/Receipt"
}
},
"application/pdf": {
"schema": {
"$ref": "#/components/schemas/Receipt"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/Receipt"
}
}
}
},
"default": {
"description": "Unexpected error",
"content": {
"image/png": {
"schema": {
"$ref": "#/components/schemas/Error"
}
},
"image/jpeg": {
"schema": {
"$ref": "#/components/schemas/Error"
}
},
"image/gif": {
"schema": {
"$ref": "#/components/schemas/Error"
}
},
"application/pdf": {
"schema": {
"$ref": "#/components/schemas/Error"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
},
"security": [
{
"AccessToken": [
"read"
]
}
],
"tags": [
"Expenses"
],
"description": "Get the receipt tied to the transaction ID and the receipt ID. \n",
"operationId": "getReceipt",
"summary": "Retrieve a receipt"
}
}
},
"tags": [
{
"name": "Account and Transactions",
"description": "Open Banking Account and Transaction API is implemented as specified in the [Open Banking API documentation: Account and Transaction API Specification](https://openbanking.atlassian.net/wiki/spaces/DZ/pages/999622968/Account+and+Transaction+API+Specification+-+v3.1.1)."
},
{
"name": "Payment Initiation",
"description": "As a regulated third party provider, you can use the provided endpoints to initiate a payment in the following high-level workflow:\n\n1. Create a consent\n2. Get the consent\n3. Create a payment\n4. Get the payment\n\nThe available payment types include:\n - *Domestic payments*, which you can use for local payments in the local currency of the user. A domestic payment can be a domestic payment, a domestic scheduled payment, or a domestic standing order.\n \n - *File payments*, which you can use to process all individual payments in an uploaded CSV file that you specify.\n \n - *International payments*, which you can use for international SWIFT payments in all currencies that Revolut supports. An international payment can be an international payment, an international scheduled payment, or an international standing order.\n\nBefore you begin, ensure that you've registered your application with the `payments` scope. For more information, see [Tutorial: Initiate your first payment](https://developer.revolut.com/docs/build-banking-apps/#tutorials-initiate-your-first-payment)."
},
{
"name": "Draft Payments",
"description": "You can create a draft payment to initiate a payment on behalf of a user, and request the approval for the draft payment in the user account. \n\nThen, you can retrieve or delete a draft payment.\n\n> **Note**: The draft payments API is available only for Revolut Business customers. If you'd like to use this endpoint, reach out to us."
},
{
"name": "Webhooks",
"description": "Webhooks allow you to receive real-time notifications for events that are happening in relation to your application.\nWhen a supported event occurs, a real-time notification is posted, via HTTP POST method, to the specified endpoint.\nPlease see [tutorial](https://developer.revolut.com/docs/build-banking-apps/#tutorials-work-with-webhooks) for more details."
},
{
"description": "Get all the expenses to an account during the specified period or get the receipt with the given transaction ID and the receipt ID.\n\n>The expenses API is in beta and not generally available. To get more details, reach out to us.",
"name": "Expenses"
}
],
"servers": [
{
"url": "https://oba.revolut.com"
}
],
"components": {
"parameters": {
"FromBookingDateTimeParam": {
"in": "query",
"name": "fromBookingDateTime",
"description": "The UTC ISO 8601 Date Time to filter transactions FROM\nNB Time component is optional - set to 00:00:00 for just Date.\nIf the Date Time contains a timezone, the ASPSP must ignore the timezone component.",
"schema": {
"type": "string",
"format": "date-time"
}
},
"ToBookingDateTimeParam": {
"in": "query",
"name": "toBookingDateTime",
"description": "The UTC ISO 8601 Date Time to filter transactions TO\nNB Time component is optional - set to 00:00:00 for just Date.\nIf the Date Time contains a timezone, the ASPSP must ignore the timezone component.",
"schema": {
"type": "string",
"format": "date-time"
}
},
"FromStatementDateTimeParam": {
"in": "query",
"name": "fromStatementDateTime",
"description": "The UTC ISO 8601 Date Time to filter statements FROM\nNB Time component is optional - set to 00:00:00 for just Date.\nIf the Date Time contains a timezone, the ASPSP must ignore the timezone component.",
"schema": {
"type": "string",
"format": "date-time"
}
},
"ToStatementDateTimeParam": {
"in": "query",
"name": "toStatementDateTime",
"description": "The UTC ISO 8601 Date Time to filter statements TO\nNB Time component is optional - set to 00:00:00 for just Date.\nIf the Date Time contains a timezone, the ASPSP must ignore the timezone component.",
"schema": {
"type": "string",
"format": "date-time"
}
},
"x-fapi-financial-id-Param": {
"in": "header",
"name": "x-fapi-financial-id",
"required": true,
"description": "The unique ID of the ASPSP that the request is issued to. The ID of Revolut is `001580000103UAvAAM`.",
"schema": {
"type": "string"
}
},
"x-fapi-customer-ip-address-Param": {
"in": "header",
"name": "x-fapi-customer-ip-address",
"required": false,
"description": "The IP address of the PSU if the PSU is logged in with the TPP.",
"schema": {
"type": "string"
}
},
"x-fapi-interaction-id-Param": {
"in": "header",
"name": "x-fapi-interaction-id",
"required": false,
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-fapi-customer-last-logged-time-Param": {
"in": "header",
"name": "x-fapi-customer-last-logged-time",
"required": false,
"description": "The date and time the PSU last logged in with the TPP.\n\nAll dates in the HTTP headers are represented as RFC 7231 Full Dates. For example: Sun, 10 Sep 2017 19:43:31 UTC.",
"schema": {
"type": "string",
"pattern": "^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), \\d{2} (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \\d{4} \\d{2}:\\d{2}:\\d{2} (GMT|UTC)$"
}
},
"AuthorizationParam": {
"in": "header",
"name": "Authorization",
"required": true,
"description": "The access token that you've generated. For more information, see [Generate an access token](https://developer.revolut.com/docs/build-banking-apps/#tutorials-get-account-and-transaction-information).",
"schema": {
"type": "string"
}
},
"AccountId": {
"name": "AccountId",
"in": "path",
"description": "The ID of the account.",
"required": true,
"schema": {
"type": "string"
}
},
"ConsentId": {
"name": "ConsentId",
"in": "path",
"description": "The ID of the account access consent.",
"required": true,
"schema": {
"type": "string"
}
},
"StatementId": {
"name": "StatementId",
"in": "path",
"description": "StatementId",
"required": true,
"schema": {
"type": "string"
}
},
"x-customer-user-agent-Param": {
"in": "header",
"name": "x-customer-user-agent",
"description": "The user agent that the PSU is using.",
"required": false,
"schema": {
"type": "string"
}
},
"x-idempotency-key": {
"name": "x-idempotency-key",
"in": "header",
"description": "Each request is processed only once per `x-idempotency-key`. The idempotency key is valid for 24 hours.",
"required": true,
"schema": {
"type": "string",
"maxLength": 40,
"pattern": "^(?!\\s)(.*)(\\S)$"
}
},
"x-jws-signature-Param": {
"in": "header",
"name": "x-jws-signature",
"required": true,
"description": "A detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
},
"DomesticStandingOrderId": {
"name": "DomesticStandingOrderId",
"in": "path",
"description": "The ID of the domestic standing order.",
"required": true,
"schema": {
"type": "string"
}
},
"DomesticPaymentId": {
"name": "DomesticPaymentId",
"in": "path",
"description": "The ID of the domestic payment.",
"required": true,
"schema": {
"type": "string"
}
},
"DomesticScheduledPaymentId": {
"name": "DomesticScheduledPaymentId",
"in": "path",
"description": "The ID of the domestic scheduled payment.",
"required": true,
"schema": {
"type": "string"
}
},
"InternationalStandingOrderPaymentId": {
"name": "InternationalStandingOrderPaymentId",
"in": "path",
"description": "The ID of the international standing order payment.",
"required": true,
"schema": {
"type": "string"
}
},
"FilePaymentId": {
"name": "FilePaymentId",
"in": "path",
"description": "The ID of the file payment.",
"required": true,
"schema": {
"type": "string"
}
},
"InternationalPaymentId": {
"name": "InternationalPaymentId",
"in": "path",
"description": "The ID of the international payment.",
"required": true,
"schema": {
"type": "string"
}
},
"InternationalScheduledPaymentId": {
"name": "InternationalScheduledPaymentId",
"in": "path",
"description": "The ID of the international schedule payment.",
"required": true,
"schema": {
"type": "string"
}
}
},
"responses": {
"201AccountAccessConsentsCreated": {
"description": "Account Access Consents Created",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBReadConsentResponse1"
}
}
}
},
"200AccountAccessConsentsConsentIdRead": {
"description": "Account Access Consents Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBReadConsentResponse1"
}
}
}
},
"204AccountAccessConsentsConsentIdDeleted": {
"description": "Account Access Consents Deleted",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
}
}
},
"200AccountsRead": {
"description": "Accounts Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBReadAccount3"
}
}
}
},
"200AccountsAccountIdRead": {
"description": "Accounts Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBReadAccount3"
}
}
}
},
"200AccountsAccountIdTransactionsRead": {
"description": "Transactions Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBReadTransaction4"
}
}
}
},
"200AccountsAccountIdDirectDebitsRead": {
"description": "Direct Debits Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBReadDirectDebit1"
}
}
}
},
"200AccountsAccountIdStandingOrdersRead": {
"description": "Standing Orders Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBReadStandingOrder4"
}
}
}
},
"200AccountsAccountIdBalancesRead": {
"description": "Balances Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBReadBalance1"
}
}
}
},
"200AccountsAccountIdBeneficiariesRead": {
"description": "Beneficiaries Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBReadBeneficiary3"
}
}
}
},
"201DomesticStandingOrderConsentsCreated": {
"description": "Domestic Standing Order Consents Created",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomesticStandingOrderConsentResponse2"
}
}
}
},
"200DomesticStandingOrderConsentsConsentIdRead": {
"description": "Domestic Standing Order Consents Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomesticStandingOrderConsentResponse2"
}
}
}
},
"201DomesticStandingOrdersCreated": {
"description": "Domestic Standing Orders Created",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomesticStandingOrderResponse2"
}
}
}
},
"200DomesticStandingOrdersDomesticStandingOrderIdRead": {
"description": "Domestic Standing Orders Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UID used as a correlation id.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomesticStandingOrderResponse2"
}
}
}
},
"201DomesticPaymentConsentsCreated": {
"description": "Domestic Payment Consents Created",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomesticConsentResponse2"
}
}
}
},
"200DomesticPaymentConsentsConsentIdRead": {
"description": "Domestic Payment Consents Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomesticConsentResponse2"
}
}
}
},
"201DomesticPaymentsCreated": {
"description": "Domestic Payments Created",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomesticResponse2"
}
}
}
},
"200DomesticPaymentsDomesticPaymentIdRead": {
"description": "Domestic Payments Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomesticResponse2"
}
}
}
},
"201DomesticScheduledPaymentConsentsCreated": {
"description": "Domestic Scheduled Payment Consents Created",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomesticScheduledConsentResponse2"
}
}
}
},
"200DomesticScheduledPaymentConsentsConsentIdRead": {
"description": "Domestic Scheduled Payment Consents Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomesticScheduledConsentResponse2"
}
}
}
},
"201DomesticScheduledPaymentsCreated": {
"description": "Domestic Scheduled Payments Created",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomesticScheduledResponse2"
}
}
}
},
"200DomesticScheduledPaymentsDomesticScheduledPaymentIdRead": {
"description": "Domestic Scheduled Payments Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteDomesticScheduledResponse2"
}
}
}
},
"201InternationalStandingOrderConsentsCreated": {
"description": "International Standing Order Consents Created",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternationalStandingOrderConsentResponse2"
}
}
}
},
"200InternationalStandingOrderConsentsConsentIdRead": {
"description": "International Standing Order Consents Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternationalStandingOrderConsentResponse2"
}
}
}
},
"201InternationalStandingOrdersCreated": {
"description": "International Standing Orders Created",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternationalStandingOrderResponse2"
}
}
}
},
"200InternationalStandingOrdersInternationalStandingOrderPaymentIdRead": {
"description": "International Standing Orders Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternationalStandingOrderResponse2"
}
}
}
},
"201FilePaymentConsentsCreated": {
"description": "File Payment Consents Created",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteFileConsentResponse2"
}
}
}
},
"200FilePaymentConsentsConsentIdFileCreated": {
"description": "File Payment Consents Created",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
}
}
},
"200FilePaymentConsentsConsentIdRead": {
"description": "File Payment Consents Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteFileConsentResponse2"
}
}
}
},
"200FilePaymentConsentsConsentIdFileRead": {
"description": "File Payment Consents Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"type": "string",
"format": "binary"
}
}
}
},
"201FilePaymentsCreated": {
"description": "File Payments Created",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteFileResponse2"
}
}
}
},
"200FilePaymentsFilePaymentIdRead": {
"description": "File Payments Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteFileResponse2"
}
}
}
},
"200FilePaymentsFilePaymentIdReportFileRead": {
"description": "File Payments Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"type": "string",
"format": "binary"
}
}
}
},
"201InternationalPaymentConsentsCreated": {
"description": "International Payment Consents Created",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternationalConsentResponse2"
}
}
}
},
"200InternationalPaymentConsentsConsentIdRead": {
"description": "International Payment Consents Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternationalConsentResponse2"
}
}
}
},
"201InternationalPaymentsCreated": {
"description": "International Payments Created",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternationalResponse2"
}
}
}
},
"200InternationalPaymentsInternationalPaymentIdRead": {
"description": "International Payments Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternationalResponse2"
}
}
}
},
"201InternationalScheduledPaymentConsentsCreated": {
"description": "International Scheduled Payment Consents Created",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternationalScheduledConsentResponse2"
}
}
}
},
"200InternationalScheduledPaymentConsentsConsentIdRead": {
"description": "International Scheduled Payment Consents Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternationalScheduledConsentResponse2"
}
}
}
},
"201InternationalScheduledPaymentsCreated": {
"description": "International Scheduled Payments Created",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternationalScheduledResponse2"
}
}
}
},
"200InternationalScheduledPaymentsInternationalScheduledPaymentIdRead": {
"description": "International Scheduled Payments Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteInternationalScheduledResponse2"
}
}
}
},
"200DomesticPaymentConsentsConsentIdFundsConfirmationRead": {
"description": "Domestic Payment Consents Funds Confirmation Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteFundsConfirmationResponse1"
}
}
}
},
"200InternationalPaymentConsentsConsentIdFundsConfirmationRead": {
"description": "International Payment Consents Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteFundsConfirmationResponse1"
}
}
}
},
"200InternationalScheduledPaymentConsentsConsentIdFundsConfirmationRead": {
"description": "International Payment Consents Read",
"headers": {
"x-fapi-interaction-id": {
"description": "An RFC4122 UUID used as a correlation ID.",
"schema": {
"type": "string"
}
},
"x-jws-signature": {
"description": "Header containing a detached JWS signature of the body of the payload.",
"schema": {
"type": "string"
}
}
},
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBWriteFundsConfirmationResponse1"
}
}
}
},
"400ErrorResponse": {
"description": "Bad request",
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBErrorResponse1"
}
}
}
},
"401ErrorResponse": {
"description": "Unauthorized"
},
"403ErrorResponse": {
"description": "Forbidden"
},
"404ErrorResponse": {
"description": "Not found"
},
"405ErrorResponse": {
"description": "Method Not Allowed"
},
"406ErrorResponse": {
"description": "Not Acceptable"
},
"415ErrorResponse": {
"description": "Unsupported Media Type"
},
"429ErrorResponse": {
"description": "Too Many Requests",
"headers": {
"Retry-After": {
"description": "Time in seconds to wait before you make a new request.",
"schema": {
"type": "integer"
}
}
}
},
"500ErrorResponse": {
"description": "Internal Server Error",
"content": {
"application/json; charset=utf-8": {
"schema": {
"$ref": "#/components/schemas/OBErrorResponse1"
}
}
}
}
},
"securitySchemes": {
"AccessToken": {
"type": "apiKey",
"in": "header",
"name": "Authorization",
"description": "Each Open Banking API must contain an authorization header in the following format to make a call: `Bearer [yourAccessToken]`.\n\nBefore you start, ensure that you've got an access token using the `/token` endpoint. You need to get the authorization code first and exchange it for an access token.\n\nFor more information, see [Tutorial: Get account and transaction information](https://developer.revolut.com/docs/build-banking-apps/#tutorials-get-account-and-transaction-information) as an example."
}
},
"schemas": {
"WebhooksResponse": {
"description": "List of all the webhooks.",
"type": "array",
"items": {
"$ref": "#/components/schemas/Webhook"
}
},
"Webhook": {
"type": "object",
"description": "The details of the webhook.",
"properties": {
"Topic": {
"description": "Type of events for which notifications will be sent.",
"type": "string"
},
"Version": {
"description": "Version of notification message.",
"type": "integer"
},
"Url": {
"description": "Url to which notifications will be sent.",
"type": "string"
}
},
"required": [
"Topic",
"Version",
"Url"
]
},
"ExpensesResponse": {
"properties": {
"Data": {
"$ref": "#/components/schemas/Data"
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Links",
"Meta"
],
"type": "object"
},
"Receipt": {
"type": "string"
},
"Data": {
"properties": {
"Expenses": {
"$ref": "#/components/schemas/Expenses"
}
},
"type": "object"
},
"Expense": {
"type": "object",
"description": "The details of the expense.",
"properties": {
"Amount": {
"$ref": "#/components/schemas/Amount"
},
"Category": {
"$ref": "#/components/schemas/Category"
},
"CreationDateTime": {
"description": "The date and time the expense was created.",
"format": "date-time",
"type": "string"
},
"Currency": {
"$ref": "#/components/schemas/Currency"
},
"Description": {
"description": "The description of the expense.",
"type": "string"
},
"ExpenseId": {
"description": "The ID of the expense.",
"format": "UUID",
"type": "string"
},
"Merchant": {
"description": "The name of the merchant.",
"type": "string"
},
"Receipts": {
"description": "The details of the receipt.",
"type": "array",
"items": {
"$ref": "#/components/schemas/ReceiptInfo"
}
},
"TaxRate": {
"$ref": "#/components/schemas/TaxRate"
},
"TransactionId": {
"description": "The ID of the transaction.",
"format": "UUID",
"type": "string"
}
},
"required": [
"Amount",
"CreationDateTime",
"Currency",
"Description",
"ExpenseId",
"TransactionId"
]
},
"Expenses": {
"items": {
"$ref": "#/components/schemas/Expense"
},
"type": "array"
},
"TaxRate": {
"type": "object",
"description": "The details of the tax.",
"properties": {
"Name": {
"type": "string",
"description": "The name of the tax."
},
"Percentage": {
"type": "string",
"description": "The percentage of the tax."
},
"Type": {
"type": "string",
"description": "The type of the tax."
}
},
"required": [
"Name",
"Percentage",
"Type"
]
},
"Category": {
"properties": {
"Id": {
"description": "The ID of the category.",
"format": "UUID",
"type": "string"
},
"Name": {
"description": "The name of the category.",
"type": "string"
}
},
"required": [
"Id",
"Name"
],
"type": "object"
},
"ReceiptInfo": {
"type": "object",
"description": "The details of the receipt.",
"properties": {
"ContentType": {
"description": "The MIME type of the receipt.",
"type": "string"
},
"Id": {
"format": "UUID",
"type": "string",
"description": "The ID of the receipt."
}
},
"required": [
"ContentType",
"Id"
]
},
"Amount": {
"description": "The amount of the order (minor currency unit).",
"pattern": "^\\d{1,13}\\.\\d{1,5}$",
"type": "string"
},
"Currency": {
"description": "ISO 4217 currency code in upper case.",
"pattern": "^[A-Z]{3}$",
"type": "string"
},
"DraftPaymentListResponse": {
"type": "object",
"properties": {
"Items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"Id": {
"type": "string",
"format": "UUID",
"description": "The ID of the draft payment."
},
"CreatedAt": {
"format": "date-time",
"type": "string",
"description": "Date time when the draft payment was created."
},
"Status": {
"$ref": "#/components/schemas/DraftPaymentStatus"
},
"RequestedExecutionDate": {
"format": "YYYY-MM-DD",
"type": "string",
"description": "The execution date the draft payment is requested."
},
"Title": {
"type": "string",
"description": "Title of the draft payment."
}
},
"required": [
"Id",
"CreatedAt",
"Status"
]
}
},
"Links": {
"type": "object",
"description": "Links relevant to the payload.",
"properties": {
"Next": {
"type": "string",
"format": "uri",
"description": "Relative URI to the next page."
}
}
}
},
"required": [
"Items",
"Links"
]
},
"DraftPaymentStatus": {
"description": "The status of the draft payment.",
"enum": [
"Awaiting",
"Processed",
"Approved",
"Deleted"
],
"type": "string"
},
"DraftPaymentTransfer": {
"type": "object",
"properties": {
"Id": {
"format": "uuid",
"type": "string",
"description": "The ID of the transfer."
},
"InstructedAmount": {
"$ref": "#/components/schemas/InstructedAmount"
},
"Reference": {
"description": "The reference of the draft payment.",
"type": "string"
},
"Status": {
"$ref": "#/components/schemas/DraftPaymentTransferStatus"
},
"Index": {
"description": "The row number the draft payment represents in the CSV file.",
"type": "integer"
},
"FailedReason": {
"description": "The reason of the `failed` draft payment.",
"type": "string"
},
"FailedReasonCode": {
"type": "integer",
"description": "The reason code for the `failed` draft payment."
}
},
"required": [
"Id",
"InstructedAmount",
"Reference",
"Status"
]
},
"DraftPaymentResponse": {
"properties": {
"DraftPaymentId": {
"description": "The ID of the draft payment. ",
"format": "uuid",
"type": "string"
},
"RequestedExecutionDate": {
"format": "YYYY-MM-DD",
"type": "string",
"description": "The execution date the draft payment is requested."
},
"Status": {
"$ref": "#/components/schemas/DraftPaymentStatus"
},
"Transfers": {
"$ref": "#/components/schemas/DraftPaymentTransfers"
}
},
"required": [
"DraftPaymentId",
"Status",
"Transfers"
],
"type": "object"
},
"DraftPaymentTransferStatus": {
"enum": [
"Created",
"Pending",
"Completed",
"Failed",
"Deleted"
],
"type": "string",
"description": "The status of the draft payment."
},
"DraftPaymentTransfers": {
"items": {
"$ref": "#/components/schemas/DraftPaymentTransfer"
},
"type": "array"
},
"Error": {
"type": "object",
"properties": {
"Code": {
"type": "integer",
"description": "The error code in high level that helps categorize the error."
},
"Id": {
"type": "string",
"description": "The ID of the error. You can share this ID with Revolut support for troubleshooting."
},
"Message": {
"type": "string",
"description": "The error message."
}
},
"required": [
"Code",
"Id",
"Message"
]
},
"CsvError": {
"type": "object",
"properties": {
"Code": {
"type": "integer",
"description": "The error code in high level that helps categorize the error."
},
"Id": {
"type": "string",
"description": "The ID of the error. You can share this ID with Revolut support for troubleshooting."
},
"Message": {
"type": "string",
"description": "The error message."
},
"Errors": {
"$ref": "#/components/schemas/ErrorDetails"
}
},
"required": [
"Code",
"Id",
"Message"
]
},
"ErrorDetails": {
"type": "array",
"description": "The details of the error.",
"items": {
"$ref": "#/components/schemas/ErrorDetail"
}
},
"ErrorDetail": {
"type": "object",
"properties": {
"Row": {
"type": "integer",
"description": "The number of the row."
},
"Errors": {
"type": "array",
"items": {
"$ref": "#/components/schemas/FieldError"
}
}
},
"required": [
"Row",
"Errors"
]
},
"FieldError": {
"type": "object",
"properties": {
"Message": {
"type": "string",
"description": "The error message for the field."
},
"Code": {
"type": "integer",
"description": "The error code in high level that helps categorize the error."
},
"Field": {
"type": "string",
"description": "The name of the field."
}
},
"required": [
"Message",
"Code"
]
},
"InstructedAmount": {
"properties": {
"Amount": {
"$ref": "#/components/schemas/Amount"
},
"Currency": {
"$ref": "#/components/schemas/Currency"
}
},
"required": [
"Amount",
"Currency"
],
"type": "object"
},
"AccountId": {
"description": "The unique and immutable ID to identify the account resource. This ID has no meaning to the account owner.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"OBAccount3": {
"description": "The unique ID of the account that credit and debit entries are made to.",
"type": "object",
"properties": {
"AccountId": {
"$ref": "#/components/schemas/AccountId"
},
"Currency": {
"description": "The currency that the account is held in (ISO 4217 currency code in upper case).\n\nThis value is used only when one account number covers multiple accounts for different currencies, and the initiating party needs to identify which currency to use for settlement on the account.",
"type": "string",
"pattern": "^[A-Z]{3,3}$"
},
"AccountType": {
"$ref": "#/components/schemas/OBExternalAccountType1Code"
},
"AccountSubType": {
"$ref": "#/components/schemas/OBExternalAccountSubType1Code"
},
"Nickname": {
"description": "The nickname of the account that the account owner assigns to easily identify the account.",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"Account": {
"items": {
"$ref": "#/components/schemas/OBCashAccount5"
},
"type": "array",
"description": "The details to identify an account."
}
},
"required": [
"AccountId",
"Currency",
"AccountType",
"AccountSubType"
],
"additionalProperties": false
},
"OBActiveCurrencyAndAmount_SimpleType": {
"description": "The amount of the money (minor currency unit).",
"type": "string",
"pattern": "^\\d{1,13}\\.\\d{1,5}$"
},
"OBActiveOrHistoricCurrencyAndAmount": {
"description": "The amount of the cash balance after a transaction entry is applied to the account.",
"type": "object",
"additionalProperties": false,
"title": "",
"properties": {
"Amount": {
"$ref": "#/components/schemas/OBActiveCurrencyAndAmount_SimpleType"
},
"Currency": {
"description": "IOS 4217 currency code in upper case.",
"type": "string",
"pattern": "^[A-Z]{3,3}$"
}
},
"required": [
"Amount",
"Currency"
]
},
"OBBalanceType1Code": {
"description": "The balance type.",
"type": "string",
"enum": [
"InterimAvailable"
]
},
"OBBeneficiary3": {
"type": "object",
"additionalProperties": false,
"properties": {
"AccountId": {
"$ref": "#/components/schemas/AccountId"
},
"BeneficiaryId": {
"description": "The unique and immutable ID to identify the beneficiary resource. This ID has no meaning to the account owner.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"CreditorAccount": {
"$ref": "#/components/schemas/OBCashAccount5"
}
}
},
"OBCashBalance1": {
"description": "A list of elements to define the balance details.",
"type": "object",
"additionalProperties": false,
"minProperties": 1,
"properties": {
"AccountId": {
"$ref": "#/components/schemas/AccountId"
},
"CreditDebitIndicator": {
"type": "string",
"enum": [
"Credit",
"Debit"
],
"description": "Indicates whether the balance is a credit or a debit balance.\n\n**Note**: A zero balance is considered a credit balance."
},
"Type": {
"$ref": "#/components/schemas/OBBalanceType1Code"
},
"DateTime": {
"description": "The date and time of the balance.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone.\n\nFor example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Amount": {
"$ref": "#/components/schemas/OBActiveOrHistoricCurrencyAndAmount"
},
"CreditLine": {
"type": "array",
"description": "A list of elements to provide details on the credit line.",
"items": {
"$ref": "#/components/schemas/OBCreditLine1"
}
}
},
"required": [
"AccountId",
"CreditDebitIndicator",
"Type",
"DateTime",
"Amount"
]
},
"OBCreditLine1": {
"description": "Set of elements used to provide details on the credit line.",
"type": "object",
"additionalProperties": false,
"properties": {
"Included": {
"description": "Indicates whether the credit line is included in the balance of the account.\n\n**Note**: If set to `false`, credit line is not included in the account balance.",
"type": "boolean"
},
"Type": {
"$ref": "#/components/schemas/OBExternalLimitType1Code"
},
"Amount": {
"$ref": "#/components/schemas/OBActiveOrHistoricCurrencyAndAmount"
}
},
"required": [
"Included"
]
},
"OBCurrencyExchange5": {
"description": "A list of elements to provide details on the currency exchange.",
"type": "object",
"additionalProperties": false,
"properties": {
"SourceCurrency": {
"description": "The currency that is exchanged from.",
"type": "string",
"pattern": "^[A-Z]{3,3}$"
},
"TargetCurrency": {
"description": "The currency that is exchanged to.",
"type": "string",
"pattern": "^[A-Z]{3,3}$"
},
"UnitCurrency": {
"description": "The currency that the exchange rate is expressed in. For example, for 1 GBP = xxx EUR, the `UnitCurrency` value is GBP.",
"type": "string",
"pattern": "^[A-Z]{3,3}$"
},
"ExchangeRate": {
"description": "The exchange rate used to convert an amount of money from one currency into another. \n\nThis reflects the price that one currency was bought at with another currency.\n\n**Note**: `ExchangeRate` expresses the ratio between `UnitCurrency` and `QuotedCurrency`. (`ExchangeRate` = `UnitCurrency`/`QuotedCurrency`).",
"type": "number"
},
"InstructedAmount": {
"$ref": "#/components/schemas/OBActiveOrHistoricCurrencyAndAmount"
}
},
"required": [
"SourceCurrency",
"ExchangeRate"
]
},
"OBDirectDebit1": {
"description": "The account that a cash entry is made to or from.",
"type": "object",
"additionalProperties": false,
"properties": {
"AccountId": {
"$ref": "#/components/schemas/AccountId"
},
"DirectDebitId": {
"description": "The unique and immutable ID to identify the direct debit resource. This ID has no meaning to the account owner.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"MandateIdentification": {
"description": "The direct debit reference. \n\n- For AUDDIS (Automated Direct Debit Instruction Service), users provide core reference. \n- For non AUDDIS, users provide core reference if possible, or last used reference.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"DirectDebitStatusCode": {
"$ref": "#/components/schemas/OBExternalDirectDebitStatus1Code"
},
"Name": {
"description": "The name of service user.",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"PreviousPaymentAmount": {
"$ref": "#/components/schemas/OBActiveOrHistoricCurrencyAndAmount"
}
},
"required": [
"AccountId",
"MandateIdentification",
"Name"
]
},
"OBEntryStatus1Code": {
"description": "The status of a transaction entry on the books of the account servicer.",
"type": "string",
"enum": [
"Booked",
"Pending"
]
},
"OBExternalAccountSubType1Code": {
"description": "The sub-type of the account.",
"type": "string",
"enum": [
"CurrentAccount",
"Loan",
"Savings"
]
},
"OBExternalAccountType1Code": {
"description": "The type of the account.",
"type": "string",
"enum": [
"Business",
"Personal"
]
},
"OBExternalDirectDebitStatus1Code": {
"description": "The status of the direct debit.",
"type": "string",
"enum": [
"Active",
"Inactive"
]
},
"OBExternalLimitType1Code": {
"description": "The limit type.",
"type": "string",
"enum": [
"Available"
]
},
"OBExternalPermissions1Code": {
"description": "The type of data access to the account.",
"type": "string",
"enum": [
"ReadAccountsBasic",
"ReadAccountsDetail",
"ReadBalances",
"ReadBeneficiariesBasic",
"ReadBeneficiariesDetail",
"ReadDirectDebits",
"ReadOffers",
"ReadPAN",
"ReadParty",
"ReadPartyPSU",
"ReadProducts",
"ReadScheduledPaymentsBasic",
"ReadScheduledPaymentsDetail",
"ReadStandingOrdersBasic",
"ReadStandingOrdersDetail",
"ReadStatementsBasic",
"ReadStatementsDetail",
"ReadTransactionsBasic",
"ReadTransactionsCredits",
"ReadTransactionsDebits",
"ReadTransactionsDetail"
]
},
"OBExternalRequestStatus1Code": {
"description": "The status of the account access consent.",
"type": "string",
"enum": [
"Authorised",
"AwaitingAuthorisation",
"Rejected",
"Revoked"
]
},
"OBExternalStandingOrderStatus1Code": {
"description": "The status of the standing order.",
"type": "string",
"enum": [
"Active",
"Inactive"
]
},
"OBMerchantDetails1": {
"description": "The details of the merchant involved in the transaction.",
"type": "object",
"additionalProperties": false,
"properties": {
"MerchantName": {
"description": "The name of the merchant.",
"type": "string",
"minLength": 1,
"maxLength": 350
}
}
},
"OBReadAccount3": {
"type": "object",
"properties": {
"Data": {
"type": "object",
"properties": {
"Account": {
"items": {
"$ref": "#/components/schemas/OBAccount3"
},
"type": "array",
"description": "The unique ID of the account that credit and debit entries are made to."
}
},
"additionalProperties": false
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBReadBalance1": {
"type": "object",
"additionalProperties": false,
"properties": {
"Data": {
"type": "object",
"additionalProperties": false,
"required": [
"Balance"
],
"description": "The balance details.",
"properties": {
"Balance": {
"type": "array",
"description": "A list of elements to define the balance details.",
"minItems": 1,
"items": {
"$ref": "#/components/schemas/OBCashBalance1"
}
}
}
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Links",
"Meta"
]
},
"OBReadBeneficiary3": {
"type": "object",
"additionalProperties": false,
"properties": {
"Data": {
"type": "object",
"additionalProperties": false,
"description": "A list of beneficiaries.",
"properties": {
"Beneficiary": {
"type": "array",
"items": {
"$ref": "#/components/schemas/OBBeneficiary3"
}
}
}
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Links",
"Meta"
]
},
"OBReadConsent1": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBReadData1"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk2"
}
},
"required": [
"Data",
"Risk"
],
"additionalProperties": false
},
"OBReadConsentResponse1": {
"type": "object",
"additionalProperties": false,
"properties": {
"Data": {
"type": "object",
"additionalProperties": false,
"required": [
"ConsentId",
"CreationDateTime",
"Status",
"StatusUpdateDateTime",
"Permissions"
],
"properties": {
"ConsentId": {
"description": "The unique ID that is assigned to identify the account access consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"CreationDateTime": {
"description": "The date and time the account access consent was created.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Status": {
"$ref": "#/components/schemas/OBExternalRequestStatus1Code"
},
"StatusUpdateDateTime": {
"description": "The date and time the account access consent was updated. \n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Permissions": {
"type": "array",
"description": "The type of data access to the account.",
"minItems": 1,
"items": {
"$ref": "#/components/schemas/OBExternalPermissions1Code"
}
},
"ExpirationDateTime": {
"description": "The date and time the permission expires. If this is not specified, the permission is open ended.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"TransactionFromDateTime": {
"description": "The start date and time for the transaction query period. If this is not specified, the start date is open ended, and data is returned from the earliest available transaction. \n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"TransactionToDateTime": {
"description": "The end date and time for the transaction query period. If this is not specified, the end date is open ended, and data is returned to the latest available transaction.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
}
}
},
"Risk": {
"$ref": "#/components/schemas/OBRisk2"
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Risk",
"Links",
"Meta"
]
},
"OBReadData1": {
"type": "object",
"properties": {
"Permissions": {
"items": {
"$ref": "#/components/schemas/OBExternalPermissions1Code"
},
"type": "array",
"description": "Specifies the type of data access to the account. This is a list of the data clusters being consented by the PSU, and requested for authorisation with the ASPSP.",
"minItems": 1
},
"ExpirationDateTime": {
"description": "Specifies the date and time the permission expires. If this is not specified, the permission is open ended.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"TransactionFromDateTime": {
"description": "Specifies the start date and time for the transaction query period.\nIf this is not specified, the start date is open ended, and data is returned from the earliest available transaction.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"TransactionToDateTime": {
"description": "Specifies the end date and time for the transaction query period. If this is not specified, the end date is open ended, and data is returned to the latest available transaction.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
}
},
"required": [
"Permissions"
],
"additionalProperties": false
},
"OBReadDirectDebit1": {
"type": "object",
"additionalProperties": false,
"properties": {
"Data": {
"type": "object",
"additionalProperties": false,
"description": "A list of direct debits.",
"properties": {
"DirectDebit": {
"type": "array",
"description": "The account that a cash entry is made to or from.",
"items": {
"$ref": "#/components/schemas/OBDirectDebit1"
}
}
}
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Links",
"Meta"
]
},
"OBReadStandingOrder4": {
"type": "object",
"properties": {
"Data": {
"type": "object",
"properties": {
"StandingOrder": {
"items": {
"$ref": "#/components/schemas/OBStandingOrder4"
},
"type": "array"
}
},
"additionalProperties": false
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBReadTransaction4": {
"type": "object",
"properties": {
"Data": {
"type": "object",
"properties": {
"Transaction": {
"items": {
"$ref": "#/components/schemas/OBTransaction4"
},
"type": "array",
"description": "The details about the transaction."
}
},
"additionalProperties": false
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBStandingOrder4": {
"type": "object",
"additionalProperties": false,
"description": "A list of standing orders.",
"properties": {
"AccountId": {
"$ref": "#/components/schemas/AccountId"
},
"StandingOrderId": {
"description": "The unique and immutable ID to identify the standing order resource. This ID has no meaning to the account owner.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"Frequency": {
"description": "The frequency of the standing order:\n- `EvryDay`: Every day\n- `IntrvlWkDay`: Only one week interval is supported (01) and any day within the week (01 to 07)\n- `IntrvlMnthDay`: Only one month interval is supported (01) and any day within the month (1 to 31)\n\nExamples:\n- EvryDay\n- IntrvlWkDay:01:0[1-7]\n- IntrvlMnthDay:01:(0[1-9]|[12][0-9]|3[01])",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"Reference": {
"description": "The unique reference that the creditor assigns to refer to the payment transaction.\n\nIf available, the initiating party should provide this reference in the structured remittance information to enable reconciliation by the creditor upon receipt of the amount of money.\n\nIf the business context requires the use of a creditor reference or a payment remit identification, and only one identifier can be passed through the end-to-end chain, the creditor's reference or payment remittance identification should be quoted in the end-to-end transaction identification.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"FirstPaymentDateTime": {
"description": "The date the first payment for a standing order schedule is made.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. \n\nFor example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"StandingOrderStatusCode": {
"$ref": "#/components/schemas/OBExternalStandingOrderStatus1Code"
},
"CreditorAccount": {
"$ref": "#/components/schemas/OBCashAccount5"
}
},
"required": [
"AccountId",
"Frequency"
]
},
"OBTransaction4": {
"description": "The details of the transactions.",
"type": "object",
"additionalProperties": false,
"title": "",
"properties": {
"AccountId": {
"$ref": "#/components/schemas/AccountId"
},
"TransactionId": {
"description": "The unique and immutable ID to identify the transaction within an servicing institution.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"CreditDebitIndicator": {
"type": "string",
"enum": [
"Credit",
"Debit"
],
"description": "Indicates whether the transaction is a credit or a debit entry."
},
"Status": {
"$ref": "#/components/schemas/OBEntryStatus1Code"
},
"BookingDateTime": {
"description": "The date and time a transaction entry is posted to an account on the account servicer's books.\n\nIf the status of the transaction entry is `booked`, the booking date is the actual booking date; otherwise, it is the expected booking date.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. \n\nFor example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"ValueDateTime": {
"description": "The date and time the assets\n- Become available to the account owner in case of a credit entry, or \n- Cease to be available to the account owner in case of a debit transaction entry.\n\nIf `status` of the transaction entry is `pending`, and `ValueDateTime` is present, the value date refers to an expected/requested value date.\n\nFor transaction entries subject to availability/float and for which availability information is provided, the value date must not be used. In this case the availability component identifies the number of availability days.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. \n\nFor example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Amount": {
"$ref": "#/components/schemas/OBActiveOrHistoricCurrencyAndAmount"
},
"ChargeAmount": {
"$ref": "#/components/schemas/OBActiveOrHistoricCurrencyAndAmount"
},
"CurrencyExchange": {
"$ref": "#/components/schemas/OBCurrencyExchange5"
},
"ProprietaryBankTransactionCode": {
"description": "A list of elements to fully identify a proprietary bank transaction code.",
"type": "object",
"additionalProperties": false,
"properties": {
"Code": {
"description": "The proprietary bank transaction code to identify the underlying transaction.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"Issuer": {
"description": "The identification of the issuer of the proprietary bank transaction code.",
"type": "string",
"minLength": 1,
"maxLength": 35
}
},
"required": [
"Code"
]
},
"SupplementaryData": {
"$ref": "#/components/schemas/OBSupplementaryData1"
},
"TransactionInformation": {
"$ref": "#/components/schemas/TransactionInformation"
},
"Balance": {
"$ref": "#/components/schemas/OBTransactionCashBalance"
},
"MerchantDetails": {
"$ref": "#/components/schemas/OBMerchantDetails1"
},
"CreditorAccount": {
"$ref": "#/components/schemas/OBCashAccount6"
},
"DebtorAccount": {
"$ref": "#/components/schemas/OBCashAccount6"
}
},
"required": [
"AccountId",
"CreditDebitIndicator",
"Status",
"BookingDateTime",
"Amount"
]
},
"OBTransactionCashBalance": {
"description": "A list of elements used to define the balance as a numerical representation of the net increases and decreases in an account after a transaction entry is applied to the account.",
"type": "object",
"additionalProperties": false,
"properties": {
"CreditDebitIndicator": {
"type": "string",
"enum": [
"Credit",
"Debit"
],
"description": "Indicates whether the balance is a credit or a debit balance.\n\n**Note**: A zero balance is considered a credit balance."
},
"Type": {
"$ref": "#/components/schemas/OBBalanceType1Code"
},
"Amount": {
"$ref": "#/components/schemas/OBActiveOrHistoricCurrencyAndAmount"
}
},
"required": [
"CreditDebitIndicator",
"Type",
"Amount"
]
},
"TransactionInformation": {
"description": "The additional information of the transaction, which is unstructured text.",
"type": "string",
"minLength": 1,
"maxLength": 500
},
"OBCashAccount5": {
"description": "The details to identify the account.",
"type": "object",
"additionalProperties": false,
"properties": {
"SchemeName": {
"$ref": "#/components/schemas/OBExternalAccountIdentification4Code"
},
"Identification": {
"description": "The identification of the account.",
"type": "string",
"minLength": 1,
"maxLength": 256
},
"Name": {
"description": "The account name that the account servicing institution assigns.\n\nThe account name is the name or names of the account owner(s) represented at an account level. \n\nThe account name is not the product name or the nickname of the account.",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"SecondaryIdentification": {
"description": "The secondary account ID that the account servicing institution assigns.\n\nBuilding societies can use this ID to identify accounts with a roll number in addition to a sort code and account number combination.",
"type": "string",
"minLength": 1,
"maxLength": 34
}
},
"required": [
"SchemeName",
"Identification"
]
},
"OBCashAccount6": {
"description": "The unique ID of the account in the case of a transaction.",
"type": "object",
"additionalProperties": false,
"properties": {
"SchemeName": {
"$ref": "#/components/schemas/OBExternalAccountIdentification4Code"
},
"Identification": {
"description": "The account ID that the institution assigns to identify an account, which is known by the account owner.",
"type": "string",
"minLength": 1,
"maxLength": 256
},
"Name": {
"description": "The account name that the account servicing institution assigns.\n\nThe account name is the name or names of the account owner(s) represented at an account level. \n\nThe account name is not the product name or the nickname of the account.",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"SecondaryIdentification": {
"description": "The secondary account ID that the account servicing institution assigns.\n\nBuilding societies can use this ID to identify accounts with a roll number in addition to a sort code and account number combination.",
"type": "string",
"minLength": 1,
"maxLength": 34
}
}
},
"OBExternalAccountIdentification4Code": {
"description": "The name of the identification scheme, which is published in an external list.",
"type": "array",
"example": [
"UK.OBIE.IBAN",
"UK.OBIE.SortCodeAccountNumber",
"US.RoutingNumberAccountNumber",
"US.BranchCodeAccountNumber"
],
"minLength": 1,
"maxLength": 40,
"items": {}
},
"OBError1": {
"type": "object",
"additionalProperties": false,
"minProperties": 1,
"properties": {
"ErrorCode": {
"description": "The error code in low level, for example, `UK.OBIE.Field.Missing`.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"Message": {
"description": "The description of the error that occurred. For example, `A mandatory field isn't supplied`, `RequestedExecutionDateTime must be in future`, and `OBIE doesn't standardise this field`.",
"type": "string",
"minLength": 1,
"maxLength": 500
}
},
"required": [
"ErrorCode",
"Message"
]
},
"OBErrorResponse1": {
"description": "The detailed information about the error to help troubleshooting.",
"type": "object",
"additionalProperties": false,
"properties": {
"Code": {
"description": "The error code in high level that helps categorize the error.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"Id": {
"description": "The ID of the error. You can share this ID with Revolut support for troubleshooting.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"Message": {
"description": "The error message. For example, `There is something wrong with the request parameters provided`.",
"type": "string",
"minLength": 1,
"maxLength": 500
},
"Errors": {
"type": "array",
"minItems": 1,
"items": {
"$ref": "#/components/schemas/OBError1"
}
}
},
"required": [
"Code",
"Message",
"Errors"
]
},
"Links": {
"type": "object",
"description": "Links relevant to the payload.",
"additionalProperties": false,
"properties": {
"Self": {
"type": "string",
"format": "uri",
"description": "The absolute URI to the resource."
}
},
"required": [
"Self"
]
},
"File": {
"type": "string",
"format": "binary"
},
"Meta": {
"title": "MetaData",
"type": "object",
"description": "Meta data relevant to the payload.",
"additionalProperties": false,
"properties": {
"TotalPages": {
"type": "integer",
"format": "int32",
"description": "Indicates how many pages of results for pagination are available."
}
}
},
"OBRisk2": {
"description": "The Risk section contains the risk indicators that the initiating party sends to the ASPSP, which can be used to specify additional details for risk scoring for account information.",
"type": "object",
"properties": {},
"additionalProperties": false
},
"OBChargeBearerType1Code": {
"description": "The party or parties bear the charges associated with the processing of the payment transaction.",
"type": "string",
"enum": [
"BorneByDebtor",
"FollowingServiceLevel"
]
},
"OBDomestic2": {
"description": "The initiation payload that the initiating party sends to the ASPSP, which is used to request movement of funds from the debtor account to the creditor for a single domestic payment.",
"type": "object",
"additionalProperties": false,
"properties": {
"InstructionIdentification": {
"description": "The unique ID that an instructing party assigns for an instructed party to unambiguously identify the instruction.\n\nThis ID is used between the instructing party and the instructed party to refer to an individual instruction. It can be included in the messages related to the instruction.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"EndToEndIdentification": {
"description": "The unique and immutable ID that the initiating party assigns to unambiguously identify the transaction.\n\nThis ID is used for reconciliation or to link tasks related to the transaction. It can be included in the messages related to the transaction.\n\n**Note**: Faster Payments Scheme can access only 31 characters for the `EndToEndIdentification` field.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"InstructedAmount": {
"type": "object",
"additionalProperties": false,
"description": "The amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency that the initiating party instructs.\n\nThis amount has to be transported unchanged through the transaction chain.",
"required": [
"Amount",
"Currency"
],
"properties": {
"Amount": {
"$ref": "#/components/schemas/OBActiveCurrencyAndAmount_SimpleType"
},
"Currency": {
"type": "string",
"pattern": "^[A-Z]{3,3}$",
"description": "ISO 4217 currency code in upper case."
}
}
},
"DebtorAccount": {
"$ref": "#/components/schemas/OBCashAccountDebtor4"
},
"CreditorAccount": {
"$ref": "#/components/schemas/OBCashAccountCreditor3"
},
"CreditorPostalAddress": {
"$ref": "#/components/schemas/OBPostalAddress6"
},
"RemittanceInformation": {
"$ref": "#/components/schemas/OBRemittanceInformation1"
},
"SupplementaryData": {
"$ref": "#/components/schemas/OBSupplementaryData1"
}
},
"required": [
"InstructionIdentification",
"EndToEndIdentification",
"InstructedAmount",
"CreditorAccount"
]
},
"OBDomesticScheduled2": {
"description": "The Initiation payload that the initiating party sends to the ASPSP, which is used to request movement of funds from the debtor account to the creditor for a single scheduled domestic payment.",
"type": "object",
"additionalProperties": false,
"properties": {
"InstructionIdentification": {
"description": "The unique ID that an instructing party assigns for an instructed party to unambiguously identify the instruction.\n\nThis ID is used between the instructing party and the instructed party to refer to an individual instruction. It can be included in the messages related to the instruction.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"EndToEndIdentification": {
"description": "The unique and immutable ID that the initiating party assigns to unambiguously identify the transaction. \n\nThis ID is used for reconciliation or to link tasks related to the transaction. It can be included in the messages related to the transaction.\n\n**Note**: Faster Payments Scheme can access only 31 characters for the `EndToEndIdentification` field.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"RequestedExecutionDateTime": {
"description": "The date and time the initiating party requests the clearing agent to process the payment.\n\nThis is the date the debtor's account is to be debited.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"InstructedAmount": {
"type": "object",
"additionalProperties": false,
"description": "The amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency that the initiating party instructs.\n\nThis amount has to be transported unchanged through the transaction chain.",
"required": [
"Amount",
"Currency"
],
"properties": {
"Amount": {
"$ref": "#/components/schemas/OBActiveCurrencyAndAmount_SimpleType"
},
"Currency": {
"type": "string",
"pattern": "^[A-Z]{3,3}$",
"description": "ISO 4217 currency code in upper case."
}
}
},
"DebtorAccount": {
"$ref": "#/components/schemas/OBCashAccountDebtor4"
},
"CreditorAccount": {
"$ref": "#/components/schemas/OBCashAccountCreditor3"
},
"CreditorPostalAddress": {
"$ref": "#/components/schemas/OBPostalAddress6"
},
"RemittanceInformation": {
"$ref": "#/components/schemas/OBRemittanceInformation1"
}
},
"required": [
"InstructionIdentification",
"RequestedExecutionDateTime",
"InstructedAmount",
"CreditorAccount"
]
},
"OBDomesticStandingOrder2": {
"description": "The Initiation payload that the initiating party sends to the ASPSP, which is used to request movement of funds from the debtor account to the creditor for a domestic standing order.",
"type": "object",
"additionalProperties": false,
"properties": {
"Frequency": {
"description": "The frequency of the standing order: \n- `EvryDay`: Every day\n- `IntrvlWkDay`: Only one week interval is supported (01) and any day within the week (01 to 07)\n- `IntrvlMnthDay`: Only one month interval is supported (01) and any day within the month (1 to 31)\n\nExamples:\n- EvryDay\n- IntrvlWkDay:01:0[1-7]\n- IntrvlMnthDay:01:(0[1-9]|[12][0-9]|3[01])",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"Reference": {
"description": "The unique reference that the creditor assigns to unambiguously identify the payment transaction.\n\nIf available, the initiating party should provide this reference in the structured remittance information to enable reconciliation by the creditor upon receipt of the amount of money.\n\nIf the business context requires the use of a creditor reference or a payment remit identification, and only one identifier can be passed through the end-to-end chain, the creditor's reference or payment remittance identification should be quoted in the end-to-end transaction identification.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"NumberOfPayments": {
"description": "The number of the payments to be made to complete this frequency sequence including any executed payments since the sequence start date.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"FirstPaymentDateTime": {
"description": "The date and time the first payment for a standing order schedule is made.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"FinalPaymentDateTime": {
"description": "The date and time the final payment for a standing order schedule is made.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"FirstPaymentAmount": {
"type": "object",
"additionalProperties": false,
"description": "The amount of the first standing order.",
"required": [
"Amount",
"Currency"
],
"properties": {
"Amount": {
"$ref": "#/components/schemas/OBActiveCurrencyAndAmount_SimpleType"
},
"Currency": {
"type": "string",
"pattern": "^[A-Z]{3,3}$",
"description": "ISO 4217 currency code in upper case."
}
}
},
"RecurringPaymentAmount": {
"type": "object",
"additionalProperties": false,
"description": "The amount of the recurring standing order.",
"properties": {
"Amount": {
"$ref": "#/components/schemas/OBActiveCurrencyAndAmount_SimpleType"
},
"Currency": {
"type": "string",
"pattern": "^[A-Z]{3,3}$",
"description": "ISO 4217 currency code in upper case."
}
},
"required": [
"Amount",
"Currency"
]
},
"FinalPaymentAmount": {
"type": "object",
"additionalProperties": false,
"description": "The amount of the final standing order.",
"properties": {
"Amount": {
"$ref": "#/components/schemas/OBActiveCurrencyAndAmount_SimpleType"
},
"Currency": {
"type": "string",
"pattern": "^[A-Z]{3,3}$",
"description": "ISO 4217 currency code in upper case."
}
},
"required": [
"Amount",
"Currency"
]
},
"DebtorAccount": {
"$ref": "#/components/schemas/OBCashAccountDebtor4"
},
"CreditorAccount": {
"$ref": "#/components/schemas/OBCashAccountCreditor3"
}
},
"required": [
"Frequency",
"FirstPaymentDateTime",
"FirstPaymentAmount",
"CreditorAccount"
]
},
"OBExchangeRate1": {
"description": "The details on the currency exchange rate and contract.",
"type": "object",
"properties": {
"UnitCurrency": {
"description": "The currency that the exchange rate is expressed in. For example, for 1 GBP = xxx EUR, the `UnitCurrency` value is GBP.",
"type": "string",
"pattern": "^[A-Z]{3,3}$"
},
"ExchangeRate": {
"description": "The exchange rate used to convert an amount from one currency into another. \nThis reflects the price that one currency was bought at with another currency.",
"type": "number"
},
"RateType": {
"$ref": "#/components/schemas/OBExchangeRateType2Code"
},
"ContractIdentification": {
"description": "The unique reference to the foreign exchange contract agreed between the initiating party/creditor and the debtor agent.",
"type": "string",
"minLength": 1,
"maxLength": 256
}
},
"required": [
"UnitCurrency",
"RateType"
],
"additionalProperties": false
},
"OBExchangeRate2": {
"description": "Further detailed information on the exchange rate that is used in the payment transaction.",
"type": "object",
"properties": {
"UnitCurrency": {
"description": "The currency that the exchange rate is expressed in. For example, for 1 GBP = xxx EUR, the `UnitCurrency` value is GBP.",
"type": "string",
"pattern": "^[A-Z]{3,3}$"
},
"ExchangeRate": {
"description": "The exchange rate used to convert an amount of money from one currency into another. \n\nThis reflects the price that one currency was bought at with another currency.",
"type": "number"
},
"RateType": {
"$ref": "#/components/schemas/OBExchangeRateType2Code"
},
"ContractIdentification": {
"description": "The unique reference to the foreign exchange contract agreed between the initiating party/creditor and the debtor agent.",
"type": "string",
"minLength": 1,
"maxLength": 256
},
"ExpirationDateTime": {
"description": "The date and time the exchange rate agreement expires.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example: \n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
}
},
"required": [
"UnitCurrency",
"ExchangeRate",
"RateType"
],
"additionalProperties": false
},
"OBExchangeRateType2Code": {
"description": "The type used to complete the currency exchange.",
"type": "string",
"enum": [
"Actual",
"Agreed",
"Indicative"
]
},
"OBExternalConsentStatus1Code": {
"description": "The status of the consent.",
"type": "string",
"enum": [
"Authorised",
"AwaitingAuthorisation",
"Consumed",
"Rejected"
]
},
"OBExternalConsentStatus2Code": {
"description": "The status of the consent.",
"type": "string",
"enum": [
"Authorised",
"AwaitingAuthorisation",
"AwaitingUpload",
"Consumed",
"Rejected"
]
},
"OBExternalPaymentContext1Code": {
"description": "The payment context.",
"type": "string",
"enum": [
"BillPayment",
"EcommerceGoods",
"EcommerceServices",
"Other",
"PartyToParty"
]
},
"OBExternalPermissions2Code": {
"description": "The Open Banking service request type.",
"type": "string",
"enum": [
"Create"
]
},
"OBExternalStatus1Code": {
"description": "The status of the payment.",
"type": "string",
"enum": [
"InitiationCompleted",
"InitiationFailed",
"InitiationPending"
]
},
"OBFile2": {
"description": "The initiation payload that the initiating party sends to the ASPSP, which is used to request movement of funds using a payment file.",
"type": "object",
"properties": {
"FileType": {
"$ref": "#/components/schemas/OBExternalFileType1Code"
},
"FileHash": {
"description": "A base64 encoding of a SHA256 hash of the file to be uploaded.",
"type": "string",
"minLength": 1,
"maxLength": 44
},
"FileReference": {
"description": "Reference for the file.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"RequestedExecutionDateTime": {
"description": "The date and time the initiating party requests the clearing agent to process the payment. This is the date the debtor's account is to be debited.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"LocalInstrument": {
"$ref": "#/components/schemas/OBExternalLocalInstrument1Code"
},
"DebtorAccount": {
"$ref": "#/components/schemas/OBCashAccountDebtor4"
},
"RemittanceInformation": {
"$ref": "#/components/schemas/OBRemittanceInformation1"
}
},
"required": [
"FileType",
"FileHash"
],
"additionalProperties": false
},
"OBInternational2": {
"description": "The initiation payload that the initiating party sends to the ASPSP, which is used to request movement of funds from the debtor account to the creditor for a single international payment.",
"type": "object",
"properties": {
"InstructionIdentification": {
"description": "The unique ID that an instructing party assigns for an instructed party to unambiguously identify the instruction.\n\nThis ID is used between the instructing party and the instructed party to refer to the individual instruction. It can be included in the messages related to the instruction.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"EndToEndIdentification": {
"description": "The unique and immutable ID that the initiating party assigns to unambiguously identify the transaction.\n\nThis ID is used for reconciliation or to link tasks related to the transaction. It can be included in the messages related to the transaction.\n\n**Note**: Faster Payments Scheme can access only 31 characters for the `EndToEndIdentification` field.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"ChargeBearer": {
"$ref": "#/components/schemas/OBChargeBearerType1Code"
},
"CurrencyOfTransfer": {
"description": "The currency of the money to be transferred, which is different from the currency of the debtor's account.",
"type": "string",
"pattern": "^[A-Z]{3,3}$"
},
"InstructedAmount": {
"type": "object",
"properties": {
"Amount": {
"$ref": "#/components/schemas/OBActiveCurrencyAndAmount_SimpleType"
},
"Currency": {
"type": "string",
"pattern": "^[A-Z]{3,3}$"
}
},
"required": [
"Amount",
"Currency"
],
"additionalProperties": false,
"description": "The amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency that the initiating party instructs.\n\nThis amount has to be transported unchanged through the transaction chain."
},
"ExchangeRateInformation": {
"$ref": "#/components/schemas/OBExchangeRate1"
},
"DebtorAccount": {
"$ref": "#/components/schemas/OBCashAccountDebtor4"
},
"Creditor": {
"$ref": "#/components/schemas/OBPartyIdentification43"
},
"CreditorAgent": {
"$ref": "#/components/schemas/OBBranchAndFinancialInstitutionIdentification6"
},
"CreditorAccount": {
"$ref": "#/components/schemas/OBCashAccountCreditor3"
},
"RemittanceInformation": {
"$ref": "#/components/schemas/OBRemittanceInformation1"
}
},
"required": [
"InstructionIdentification",
"EndToEndIdentification",
"CurrencyOfTransfer",
"InstructedAmount",
"CreditorAccount"
],
"additionalProperties": false
},
"OBInternationalScheduled2": {
"description": "The initiation payload that the initiating party sends to the ASPSP, which is used to request movement of funds from the debtor account to the creditor for a single scheduled international payment.",
"type": "object",
"additionalProperties": false,
"properties": {
"InstructionIdentification": {
"description": "The unique ID that an instructing party assigns for an instructed party to unambiguously identify the instruction.\n\nThis ID is used between the instructing party and the instructed party to refer to the individual instruction. It can be included in the messages related to the instruction.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"EndToEndIdentification": {
"description": "The unique and immutable ID that the initiating party assigns to unambiguously identify the transaction.\n\nThis ID is used for reconciliation or to link tasks related to the transaction. It can be included in the messages related to the transaction.\n\n**Note**: Faster Payments Scheme can access only 31 characters for the `EndToEndIdentification` field.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"ChargeBearer": {
"$ref": "#/components/schemas/OBChargeBearerType1Code"
},
"RequestedExecutionDateTime": {
"description": "The date and time the initiating party requests the clearing agent to process the payment. This is the date the debtor's account is to be debited.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"CurrencyOfTransfer": {
"description": "The currency of the money to be transferred, which is different from the currency of the debtor's account.",
"type": "string",
"pattern": "^[A-Z]{3,3}$"
},
"InstructedAmount": {
"type": "object",
"additionalProperties": false,
"description": "The amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency that the initiating party instructs.\n\nThis amount has to be transported unchanged through the transaction chain.",
"required": [
"Amount",
"Currency"
],
"properties": {
"Amount": {
"$ref": "#/components/schemas/OBActiveCurrencyAndAmount_SimpleType"
},
"Currency": {
"type": "string",
"pattern": "^[A-Z]{3,3}$",
"description": "ISO 4217 currency code in upper case."
}
}
},
"ExchangeRateInformation": {
"$ref": "#/components/schemas/OBExchangeRate1"
},
"DebtorAccount": {
"$ref": "#/components/schemas/OBCashAccountDebtor4"
},
"Creditor": {
"$ref": "#/components/schemas/OBPartyIdentification43"
},
"CreditorAgent": {
"$ref": "#/components/schemas/OBBranchAndFinancialInstitutionIdentification6"
},
"CreditorAccount": {
"$ref": "#/components/schemas/OBCashAccountCreditor3"
},
"RemittanceInformation": {
"$ref": "#/components/schemas/OBRemittanceInformation1"
}
},
"required": [
"InstructionIdentification",
"RequestedExecutionDateTime",
"CurrencyOfTransfer",
"InstructedAmount",
"CreditorAccount"
]
},
"OBInternationalStandingOrder2": {
"description": "The initiation payload that the initiating party sends to the ASPSP, which is used to request movement of funds from the debtor account to the creditor for an international standing order.",
"type": "object",
"additionalProperties": false,
"properties": {
"Frequency": {
"description": "The frequency of the standing order:\n- `EvryDay`: Every day\n- `IntrvlWkDay`: Only one week interval is supported (01) and any day within the week (01 to 07)\n- `IntrvlMnthDay`: Only one month interval is supported (01) and any day within the month (1 to 31)\n\nExamples:\n- EvryDay\n- IntrvlWkDay:01:0[1-7]\n- IntrvlMnthDay:01:(0[1-9]|[12][0-9]|3[01])",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"Reference": {
"description": "The unique reference that the creditor assigns to unambiguously refer to the payment transaction.\n\nIf available, the initiating party should provide this reference in the structured remittance information to enable reconciliation by the creditor upon receipt of the amount of money.\n\nIf the business context requires the use of a creditor reference or a payment remit identification, and only one identifier can be passed through the end-to-end chain, the creditor's reference or payment remittance identification should be quoted in the end-to-end transaction identification.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"NumberOfPayments": {
"description": "The number of the payments to be made in complete this frequency sequence including any executed payments since the sequence start date.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"FirstPaymentDateTime": {
"description": "The date and time the first payment for a standing order schedule is made.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"FinalPaymentDateTime": {
"description": "The date and time the final payment for a standing order schedule is made.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"ChargeBearer": {
"$ref": "#/components/schemas/OBChargeBearerType1Code"
},
"CurrencyOfTransfer": {
"description": "The currency of the money to be transferred, which is different from the currency of the debtor's account.",
"type": "string",
"pattern": "^[A-Z]{3,3}$"
},
"InstructedAmount": {
"type": "object",
"additionalProperties": false,
"description": "The amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency that the initiating party instructs.\n\nThis amount has to be transported unchanged through the transaction chain.",
"required": [
"Amount",
"Currency"
],
"properties": {
"Amount": {
"$ref": "#/components/schemas/OBActiveCurrencyAndAmount_SimpleType"
},
"Currency": {
"type": "string",
"pattern": "^[A-Z]{3,3}$",
"description": "ISO 4217 currency code in upper case."
}
}
},
"DebtorAccount": {
"$ref": "#/components/schemas/OBCashAccountDebtor4"
},
"Creditor": {
"$ref": "#/components/schemas/OBPartyIdentification43"
},
"CreditorAgent": {
"$ref": "#/components/schemas/OBBranchAndFinancialInstitutionIdentification6"
},
"CreditorAccount": {
"$ref": "#/components/schemas/OBCashAccountCreditor3"
}
},
"required": [
"Frequency",
"FirstPaymentDateTime",
"CurrencyOfTransfer",
"InstructedAmount",
"CreditorAccount"
]
},
"OBPartyIdentification43": {
"description": "The party that an amount of money is due to.",
"type": "object",
"properties": {
"Name": {
"description": "The name of a known party used to identify the party.",
"type": "string",
"minLength": 1,
"maxLength": 140
},
"PostalAddress": {
"$ref": "#/components/schemas/OBPostalAddress6"
}
},
"additionalProperties": false
},
"OBPostalAddress6": {
"description": "The postal address of the creditor, as defined by postal services.",
"type": "object",
"properties": {
"Department": {
"description": "The name of the department.",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"SubDepartment": {
"description": "The name of the sub-department.",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"StreetName": {
"description": "The name of the street.",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"BuildingNumber": {
"description": "The number of the building.",
"type": "string",
"minLength": 1,
"maxLength": 16
},
"PostCode": {
"description": "The post code of the address.",
"type": "string",
"minLength": 1,
"maxLength": 16
},
"TownName": {
"description": "The name of the town.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"CountrySubDivision": {
"description": "The sub-divison of the country, such as state, region, or county.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"Country": {
"description": "The name of the country.",
"type": "string",
"pattern": "^[A-Z]{2,2}$"
},
"AddressLine": {
"items": {
"type": "string",
"minLength": 1,
"maxLength": 70
},
"type": "array",
"description": "The infomration that locates and identifies the address of the creditor, presented in free format text.",
"minItems": 0,
"maxItems": 7
}
},
"additionalProperties": false
},
"OBRemittanceInformation1": {
"description": "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 system.",
"type": "object",
"properties": {
"Unstructured": {
"description": "The information used for matching/reconciliation of an entry with the items that the payment is intended to settle, such as commercial invoices in an accounts' receivable system, in an unstructured form.",
"type": "string",
"minLength": 1,
"maxLength": 140
},
"Reference": {
"description": "The unique reference that the creditor assigns to unambiguously identify the payment transaction.\n\nIf available, the initiating party should provide this reference in the structured remittance information to enable reconciliation by the creditor upon receipt of the amount of money.\n\nIf the business context requires the use of a creditor reference or a payment remit identification, and only one identifier can be passed through the end-to-end chain, the creditor's reference or payment remittance identification should be quoted in the end-to-end transaction identification.\n\n**Note**: Faster Payments Scheme can accept only 18 characters for the `Reference` field.",
"type": "string",
"minLength": 1,
"maxLength": 35
}
},
"additionalProperties": false
},
"OBRisk1": {
"description": "The Risk section contains the risk indicators that the initiating party sends to the ASPSP, which can be used to specify additional details for risk scoring for account information.",
"type": "object",
"properties": {
"PaymentContextCode": {
"$ref": "#/components/schemas/OBExternalPaymentContext1Code"
},
"DeliveryAddress": {
"description": "The information that locates and identifies the delivery address, as defined by postal services or in free format text.",
"type": "object",
"properties": {
"AddressLine": {
"items": {
"type": "string",
"minLength": 1,
"maxLength": 70
},
"type": "array",
"description": "The information that locates and identifies the delivery address, as defined by postal services, that is presented in free format text.",
"minItems": 0,
"maxItems": 2
},
"StreetName": {
"description": "The name of the street.",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"BuildingNumber": {
"description": "The number of the building.",
"type": "string",
"minLength": 1,
"maxLength": 16
},
"PostCode": {
"description": "The post code of the delivery address.",
"type": "string",
"minLength": 1,
"maxLength": 16
},
"TownName": {
"description": "The name of the town.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"CountrySubDivision": {
"items": {
"type": "string",
"minLength": 1,
"maxLength": 35
},
"type": "array",
"description": "The subdivison of the country, for example, state, region, or county.",
"minItems": 0,
"maxItems": 2
},
"Country": {
"description": "The name of the country.",
"type": "string",
"pattern": "^[A-Z]{2,2}$"
}
},
"required": [
"TownName",
"Country"
],
"additionalProperties": false
}
},
"additionalProperties": false
},
"OBTransactionIndividualStatus1Code": {
"description": "The status of the payment information group.",
"type": "string",
"enum": [
"AcceptedSettlementCompleted",
"AcceptedSettlementInProcess",
"Pending",
"Rejected"
]
},
"OBWriteDataDomestic2": {
"type": "object",
"properties": {
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"Initiation": {
"$ref": "#/components/schemas/OBDomestic2"
}
},
"required": [
"ConsentId",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataDomesticConsent2": {
"type": "object",
"properties": {
"Initiation": {
"$ref": "#/components/schemas/OBDomestic2"
}
},
"required": [
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataDomesticConsentResponse2": {
"type": "object",
"properties": {
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"CreationDateTime": {
"description": "The date and time the resource was created.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Status": {
"$ref": "#/components/schemas/OBExternalConsentStatus1Code"
},
"StatusUpdateDateTime": {
"description": "The date and time the resource status was updated.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Initiation": {
"$ref": "#/components/schemas/OBDomestic2"
}
},
"required": [
"ConsentId",
"CreationDateTime",
"Status",
"StatusUpdateDateTime",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataDomesticResponse2": {
"type": "object",
"properties": {
"DomesticPaymentId": {
"description": "The unique ID that the ASPSP assigns to uniquely identify the domestic payment resource.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"CreationDateTime": {
"description": "The date and time the message was created.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Status": {
"$ref": "#/components/schemas/OBTransactionIndividualStatus1Code"
},
"StatusUpdateDateTime": {
"description": "The date and time the resource status was updated.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Initiation": {
"$ref": "#/components/schemas/OBDomestic2"
}
},
"required": [
"DomesticPaymentId",
"ConsentId",
"CreationDateTime",
"Status",
"StatusUpdateDateTime",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataDomesticScheduled2": {
"type": "object",
"properties": {
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"Initiation": {
"$ref": "#/components/schemas/OBDomesticScheduled2"
}
},
"required": [
"ConsentId",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataDomesticScheduledConsent2": {
"type": "object",
"properties": {
"Permission": {
"$ref": "#/components/schemas/OBExternalPermissions2Code"
},
"Initiation": {
"$ref": "#/components/schemas/OBDomesticScheduled2"
}
},
"required": [
"Permission",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataDomesticScheduledConsentResponse2": {
"type": "object",
"properties": {
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"CreationDateTime": {
"description": "The date and time the resource was created.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Status": {
"$ref": "#/components/schemas/OBExternalConsentStatus1Code"
},
"StatusUpdateDateTime": {
"description": "The date and time the consent resource status was updated.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Permission": {
"$ref": "#/components/schemas/OBExternalPermissions2Code"
},
"Initiation": {
"$ref": "#/components/schemas/OBDomesticScheduled2"
}
},
"required": [
"ConsentId",
"CreationDateTime",
"Status",
"StatusUpdateDateTime",
"Permission",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataDomesticScheduledResponse2": {
"type": "object",
"properties": {
"DomesticScheduledPaymentId": {
"description": "The unique ID that the ASPSP assigns to identify the domestic schedule payment resource.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"CreationDateTime": {
"description": "The date and time the message was created.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Status": {
"$ref": "#/components/schemas/OBExternalStatus1Code"
},
"StatusUpdateDateTime": {
"description": "The date and time the resource status was updated.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Initiation": {
"$ref": "#/components/schemas/OBDomesticScheduled2"
}
},
"required": [
"DomesticScheduledPaymentId",
"ConsentId",
"CreationDateTime",
"Status",
"StatusUpdateDateTime",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataDomesticStandingOrder2": {
"type": "object",
"properties": {
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"Initiation": {
"$ref": "#/components/schemas/OBDomesticStandingOrder2"
}
},
"required": [
"ConsentId",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataDomesticStandingOrderConsent2": {
"type": "object",
"properties": {
"Permission": {
"$ref": "#/components/schemas/OBExternalPermissions2Code"
},
"Initiation": {
"$ref": "#/components/schemas/OBDomesticStandingOrder2"
}
},
"required": [
"Permission",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataDomesticStandingOrderConsentResponse2": {
"type": "object",
"properties": {
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"CreationDateTime": {
"description": "The date and time the resource was created.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Status": {
"$ref": "#/components/schemas/OBExternalConsentStatus1Code"
},
"StatusUpdateDateTime": {
"description": "The date and time the resource status was updated.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Permission": {
"$ref": "#/components/schemas/OBExternalPermissions2Code"
},
"Initiation": {
"$ref": "#/components/schemas/OBDomesticStandingOrder2"
}
},
"required": [
"ConsentId",
"CreationDateTime",
"Status",
"StatusUpdateDateTime",
"Permission",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataDomesticStandingOrderResponse2": {
"type": "object",
"properties": {
"DomesticStandingOrderId": {
"description": "The unique ID that the ASPSP assigns to identify the domestic standing order resource.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"CreationDateTime": {
"description": "The date and time the resource was created.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Status": {
"$ref": "#/components/schemas/OBExternalStatus1Code"
},
"StatusUpdateDateTime": {
"description": "The date and time the resource status was updated.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Initiation": {
"$ref": "#/components/schemas/OBDomesticStandingOrder2"
}
},
"required": [
"DomesticStandingOrderId",
"ConsentId",
"CreationDateTime",
"Status",
"StatusUpdateDateTime",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataFileConsent2": {
"type": "object",
"properties": {
"Initiation": {
"$ref": "#/components/schemas/OBFile2"
}
},
"required": [
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataFileConsentResponse2": {
"type": "object",
"properties": {
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"CreationDateTime": {
"description": "The date and time the resource was created.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Status": {
"$ref": "#/components/schemas/OBExternalConsentStatus2Code"
},
"StatusUpdateDateTime": {
"description": "The date and time the consent resource status was updated.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Initiation": {
"$ref": "#/components/schemas/OBFile2"
}
},
"required": [
"ConsentId",
"CreationDateTime",
"Status",
"StatusUpdateDateTime",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataFileResponse2": {
"type": "object",
"properties": {
"FilePaymentId": {
"description": "The unique ID that the ASPSP assigns to identify the file payment resource.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"CreationDateTime": {
"description": "The date and time the message was created.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Status": {
"$ref": "#/components/schemas/OBExternalStatus1Code"
},
"StatusUpdateDateTime": {
"description": "The date and time the consent resource status was updated.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Initiation": {
"$ref": "#/components/schemas/OBFile2"
}
},
"required": [
"FilePaymentId",
"ConsentId",
"CreationDateTime",
"Status",
"StatusUpdateDateTime",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataInternational2": {
"type": "object",
"properties": {
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"Initiation": {
"$ref": "#/components/schemas/OBInternational2"
}
},
"required": [
"ConsentId",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataInternationalConsent2": {
"type": "object",
"properties": {
"Initiation": {
"$ref": "#/components/schemas/OBInternational2"
}
},
"required": [
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataInternationalConsentResponse2": {
"type": "object",
"properties": {
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"CreationDateTime": {
"description": "The date and time the resource was created.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Status": {
"$ref": "#/components/schemas/OBExternalConsentStatus1Code"
},
"StatusUpdateDateTime": {
"description": "The date and time the resource status was updated.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"ExchangeRateInformation": {
"$ref": "#/components/schemas/OBExchangeRate2"
},
"Initiation": {
"$ref": "#/components/schemas/OBInternational2"
}
},
"required": [
"ConsentId",
"CreationDateTime",
"Status",
"StatusUpdateDateTime",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataInternationalResponse2": {
"type": "object",
"properties": {
"InternationalPaymentId": {
"description": "The unique ID that the ASPSP assigns to identify the international payment resource.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"CreationDateTime": {
"description": "The date and time the message was created.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Status": {
"$ref": "#/components/schemas/OBTransactionIndividualStatus1Code"
},
"StatusUpdateDateTime": {
"description": "The date and time the resource status was updated.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"ExchangeRateInformation": {
"$ref": "#/components/schemas/OBExchangeRate2"
},
"Initiation": {
"$ref": "#/components/schemas/OBInternational2"
}
},
"required": [
"InternationalPaymentId",
"ConsentId",
"CreationDateTime",
"Status",
"StatusUpdateDateTime",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataInternationalScheduled2": {
"type": "object",
"properties": {
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"Initiation": {
"$ref": "#/components/schemas/OBInternationalScheduled2"
}
},
"required": [
"ConsentId",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataInternationalScheduledConsent2": {
"type": "object",
"properties": {
"Permission": {
"$ref": "#/components/schemas/OBExternalPermissions2Code"
},
"Initiation": {
"$ref": "#/components/schemas/OBInternationalScheduled2"
}
},
"required": [
"Permission",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataInternationalScheduledConsentResponse2": {
"type": "object",
"properties": {
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"CreationDateTime": {
"description": "The date and time the resource was created.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Status": {
"$ref": "#/components/schemas/OBExternalConsentStatus1Code"
},
"StatusUpdateDateTime": {
"description": "The date and time the resource status was updated.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Permission": {
"$ref": "#/components/schemas/OBExternalPermissions2Code"
},
"ExchangeRateInformation": {
"$ref": "#/components/schemas/OBExchangeRate2"
},
"Initiation": {
"$ref": "#/components/schemas/OBInternationalScheduled2"
}
},
"required": [
"ConsentId",
"CreationDateTime",
"Status",
"StatusUpdateDateTime",
"Permission",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataInternationalScheduledResponse2": {
"type": "object",
"properties": {
"InternationalScheduledPaymentId": {
"description": "The unique ID that the ASPSP assigns to identify the international scheduled payment resource.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"CreationDateTime": {
"description": "The date and time the message was created.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Status": {
"$ref": "#/components/schemas/OBExternalStatus1Code"
},
"StatusUpdateDateTime": {
"description": "The date and time the resource status was updated.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"ExchangeRateInformation": {
"$ref": "#/components/schemas/OBExchangeRate2"
},
"Initiation": {
"$ref": "#/components/schemas/OBInternationalScheduled2"
}
},
"required": [
"InternationalScheduledPaymentId",
"ConsentId",
"CreationDateTime",
"Status",
"StatusUpdateDateTime",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataInternationalStandingOrder2": {
"type": "object",
"properties": {
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"Initiation": {
"$ref": "#/components/schemas/OBInternationalStandingOrder2"
}
},
"required": [
"ConsentId",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataInternationalStandingOrderConsent2": {
"type": "object",
"properties": {
"Permission": {
"$ref": "#/components/schemas/OBExternalPermissions2Code"
},
"Initiation": {
"$ref": "#/components/schemas/OBInternationalStandingOrder2"
}
},
"required": [
"Permission",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataInternationalStandingOrderConsentResponse2": {
"type": "object",
"properties": {
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"CreationDateTime": {
"description": "The date and time the resource was created.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Status": {
"$ref": "#/components/schemas/OBExternalConsentStatus1Code"
},
"StatusUpdateDateTime": {
"description": "The date and time the resource status was updated.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Permission": {
"$ref": "#/components/schemas/OBExternalPermissions2Code"
},
"Initiation": {
"$ref": "#/components/schemas/OBInternationalStandingOrder2"
}
},
"required": [
"ConsentId",
"CreationDateTime",
"Status",
"StatusUpdateDateTime",
"Permission",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDataInternationalStandingOrderResponse2": {
"type": "object",
"properties": {
"InternationalStandingOrderId": {
"description": "The unique ID that the ASPSP assigns to identify the international standing order resource.",
"type": "string",
"minLength": 1,
"maxLength": 40
},
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"CreationDateTime": {
"description": "The date and time the resource was created.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Status": {
"$ref": "#/components/schemas/OBExternalStatus1Code"
},
"StatusUpdateDateTime": {
"description": "The date and time the resource status was updated.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"Initiation": {
"$ref": "#/components/schemas/OBInternationalStandingOrder2"
}
},
"required": [
"InternationalStandingOrderId",
"ConsentId",
"CreationDateTime",
"Status",
"StatusUpdateDateTime",
"Initiation"
],
"additionalProperties": false
},
"OBWriteDomestic2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataDomestic2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
}
},
"required": [
"Data",
"Risk"
],
"additionalProperties": false
},
"OBWriteDomesticConsent2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataDomesticConsent2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
}
},
"required": [
"Data",
"Risk"
],
"additionalProperties": false
},
"OBWriteDomesticConsentResponse2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataDomesticConsentResponse2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Risk",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBWriteDomesticResponse2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataDomesticResponse2"
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBWriteDomesticScheduled2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataDomesticScheduled2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
}
},
"required": [
"Data",
"Risk"
],
"additionalProperties": false
},
"OBWriteDomesticScheduledConsent2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataDomesticScheduledConsent2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
}
},
"required": [
"Data",
"Risk"
],
"additionalProperties": false
},
"OBWriteDomesticScheduledConsentResponse2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataDomesticScheduledConsentResponse2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Risk",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBWriteDomesticScheduledResponse2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataDomesticScheduledResponse2"
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBWriteDomesticStandingOrder2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataDomesticStandingOrder2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
}
},
"required": [
"Data",
"Risk"
],
"additionalProperties": false
},
"OBWriteDomesticStandingOrderConsent2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataDomesticStandingOrderConsent2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
}
},
"required": [
"Data",
"Risk"
],
"additionalProperties": false
},
"OBWriteDomesticStandingOrderConsentResponse2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataDomesticStandingOrderConsentResponse2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Risk",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBWriteDomesticStandingOrderResponse2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataDomesticStandingOrderResponse2"
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBWriteFile2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataFile2"
}
},
"required": [
"Data"
],
"additionalProperties": false
},
"OBWriteFileConsent2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataFileConsent2"
}
},
"required": [
"Data"
],
"additionalProperties": false
},
"OBWriteFileConsentResponse2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataFileConsentResponse2"
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBWriteFileResponse2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataFileResponse2"
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBWriteInternational2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataInternational2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
}
},
"required": [
"Data",
"Risk"
],
"additionalProperties": false
},
"OBWriteInternationalConsent2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataInternationalConsent2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
}
},
"required": [
"Data",
"Risk"
],
"additionalProperties": false
},
"OBWriteInternationalConsentResponse2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataInternationalConsentResponse2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Risk",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBWriteInternationalResponse2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataInternationalResponse2"
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBWriteInternationalScheduled2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataInternationalScheduled2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
}
},
"required": [
"Data",
"Risk"
],
"additionalProperties": false
},
"OBWriteInternationalScheduledConsent2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataInternationalScheduledConsent2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
}
},
"required": [
"Data",
"Risk"
],
"additionalProperties": false
},
"OBWriteInternationalScheduledConsentResponse2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataInternationalScheduledConsentResponse2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Risk",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBWriteInternationalScheduledResponse2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataInternationalScheduledResponse2"
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBWriteInternationalStandingOrder2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataInternationalStandingOrder2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
}
},
"required": [
"Data",
"Risk"
],
"additionalProperties": false
},
"OBWriteInternationalStandingOrderConsent2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataInternationalStandingOrderConsent2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
}
},
"required": [
"Data",
"Risk"
],
"additionalProperties": false
},
"OBWriteInternationalStandingOrderConsentResponse2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataInternationalStandingOrderConsentResponse2"
},
"Risk": {
"$ref": "#/components/schemas/OBRisk1"
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Risk",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBWriteInternationalStandingOrderResponse2": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataInternationalStandingOrderResponse2"
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBWriteDataFile2": {
"type": "object",
"properties": {
"ConsentId": {
"description": "The unique ID that the ASPSP assigns to identify the consent resource.",
"type": "string",
"minLength": 1,
"maxLength": 128
},
"Initiation": {
"$ref": "#/components/schemas/OBFile2"
}
},
"required": [
"ConsentId",
"Initiation"
],
"additionalProperties": false
},
"OBSupplementaryData1": {
"description": "The additional information that can not be captured in the structured fields and/or any other specific block.",
"type": "object",
"additionalProperties": {
"type": "string"
},
"minLength": 1,
"maxLength": 40
},
"OBCashAccountDebtor4": {
"description": "The details to identify the account.",
"type": "object",
"properties": {
"SchemeName": {
"$ref": "#/components/schemas/OBExternalAccountIdentification4Code"
},
"Identification": {
"description": "The account ID that an institution assigns to identify the account, which is known by the account owner.",
"type": "string",
"minLength": 1,
"maxLength": 256
},
"Name": {
"description": "The account name that the account servicing institution assigns.\n\nThe account name is the name or names of the account owner(s) represented at an account level. \n\nThe account name is not the product name or the nickname of the account.",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"SecondaryIdentification": {
"description": "The secondary account ID that the account servicing institution assigns.\n\nBuilding societies can use this ID to identify accounts with a roll number in addition to a sort code and account number combination.",
"type": "string",
"minLength": 1,
"maxLength": 34
}
},
"required": [
"SchemeName",
"Identification"
],
"additionalProperties": false
},
"OBCashAccountCreditor3": {
"description": "The details to identify the account.",
"type": "object",
"properties": {
"SchemeName": {
"$ref": "#/components/schemas/OBExternalAccountIdentification4Code"
},
"Identification": {
"description": "The account ID that the institution assigns to identify an account, which is known by the account owner.",
"type": "string",
"minLength": 1,
"maxLength": 256
},
"Name": {
"description": "The account name that the account servicing institution assigns.\n\nThe account name is the name or names of the account owner(s) represented at an account level. \n\nThe account name is not the product name or the nickname of the account.\n\n**Note**: ASPSPs might optionally validate this name to confirm the payee.",
"type": "string",
"minLength": 1,
"maxLength": 70
},
"SecondaryIdentification": {
"description": "The secondary account ID that the account servicing institution assigns.\n\nBuilding societies can use this ID to identify accounts with a roll number in addition to a sort code and account number combination.",
"type": "string",
"minLength": 1,
"maxLength": 34
}
},
"required": [
"SchemeName",
"Identification",
"Name"
],
"additionalProperties": false
},
"OBWriteFundsConfirmationResponse1": {
"type": "object",
"properties": {
"Data": {
"$ref": "#/components/schemas/OBWriteDataFundsConfirmationResponse1"
},
"Links": {
"$ref": "#/components/schemas/Links"
},
"Meta": {
"$ref": "#/components/schemas/Meta"
}
},
"required": [
"Data",
"Links",
"Meta"
],
"additionalProperties": false
},
"OBWriteDataFundsConfirmationResponse1": {
"type": "object",
"properties": {
"FundsAvailableResult": {
"$ref": "#/components/schemas/OBFundsAvailableResult1"
}
},
"additionalProperties": false
},
"OBExternalLocalInstrument1Code": {
"description": "User community specific instrument.\n\nUse this element to specify a local instrument, local clearing option and/or further qualify the service or service level.",
"type": "string",
"minLength": 1,
"maxLength": 50
},
"OBExternalFileType1Code": {
"description": "The payment file type.",
"type": "array",
"example": [
"text/csv"
],
"minLength": 1,
"maxLength": 40,
"items": {}
},
"OBBranchAndFinancialInstitutionIdentification6": {
"description": "The party that manages the account on behalf of the account owner by:\n- Managing the registration and booking of entries on the account.\n- Calculating balances on the account.\n- Providing information about the account.\n\nThis is the servicer of the beneficiary account.",
"type": "object",
"properties": {
"SchemeName": {
"$ref": "#/components/schemas/OBExternalFinancialInstitutionIdentification4Code"
},
"Identification": {
"description": "The unique ID of the servicing institution.",
"type": "string",
"minLength": 1,
"maxLength": 35
},
"Name": {
"description": "The name of a known agent used to identify the agent.",
"type": "string",
"minLength": 1,
"maxLength": 140
},
"PostalAddress": {
"$ref": "#/components/schemas/OBPostalAddress6"
}
},
"additionalProperties": false
},
"OBExternalFinancialInstitutionIdentification4Code": {
"description": "The name of the identification scheme, which is published in an external list.",
"type": "array",
"example": [
"UK.OBIE.IBAN"
],
"minLength": 1,
"maxLength": 40,
"items": {}
},
"OBFundsAvailableResult1": {
"description": "The results of the funds availability check.",
"type": "object",
"properties": {
"FundsAvailableDateTime": {
"description": "The date and time the funds availability check was generated.\n\nAll dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. For example:\n2017-04-05T10:43:07+00:00",
"type": "string",
"format": "date-time"
},
"FundsAvailable": {
"description": "Indicates whether there are enough funds to pay for the `Amount` in the consent request.",
"type": "boolean"
}
},
"required": [
"FundsAvailableDateTime",
"FundsAvailable"
],
"additionalProperties": false
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment