Revolut Accounts API

Get the balances, full banking details, and other details of your business accounts. For more information, see the guides: [Get your account details](https://developer.revolut.com/docs/guides/manage-accounts/accounts-and-transactions/manage-your-accounts).

OpenAPI Specification

revolut-accounts-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  version: '1.0'
  title: Business Accounting Accounts API
  description: "As a Revolut Business customer with a Business Account, you can use the Business API to automate your own business processes.\nSave time, reduce your costs, and avoid errors by using the Business API. \n\n:::tip[Before you get started]\nTo learn more about the Business API and its features, check the [**user guides**](https://developer.revolut.com/docs/guides/manage-accounts/introduction).\n\nYou can reach them at any time from the main navigation bar **→ Guides → Business**.\n:::\n\nYou can view accounts, manage counterparties, make payments or currency exchanges without manual effort in the Web UI:\n\n- Accounting: [Account management](https://developer.revolut.com/docs/api/business#get-account), [Accounting settings](https://developer.revolut.com/docs/api/business#tag-accounting), [Expense management](https://developer.revolut.com/docs/api/business#get-expense), [Transactions](https://developer.revolut.com/docs/api/business#get-transactions) \n- Payments: \n  - [Counterparty management](https://developer.revolut.com/docs/api/business#get-counterparties)\n  - Payment management: [Payment drafts](https://developer.revolut.com/docs/api/business#delete-payment-draft), [Payout links](https://developer.revolut.com/docs/api/business#get-payout-link), [Transfers](https://developer.revolut.com/docs/api/business#tag-transfers)\n  - [Foreign exchange](https://developer.revolut.com/docs/api/business#tag-foreign-exchange)\n- Business team: [Card management](https://developer.revolut.com/docs/api/business#delete-card), [Card invitation management](https://developer.revolut.com/docs/api/business#update-card-invitation), [Team member management](https://developer.revolut.com/docs/api/business#delete-team-member)\n- Developer tools: [Sandbox simulations](https://developer.revolut.com/docs/api/business#tag-simulations), [Webhook management](https://developer.revolut.com/docs/api/business#tag-webhooks-v2)\n\nTo see the reference for the specific endpoints and operations of this API, browse the menu on the left.\n\n### Test the Business API\n\nYou can test the Business API in Postman by forking this collection:\n\n[![View in Postman](https://run.pstmn.io/button.svg)](https://www.postman.com/revolut-api/workspace/revolut-developers/overview)"
  contact: {}
servers:
- url: https://b2b.revolut.com/api/1.0
  description: Production server (uses live data)
- url: https://sandbox-b2b.revolut.com/api/1.0
  description: Sandbox server (uses test data)
tags:
- name: Accounts
  description: "Get the balances, full banking details, and other details of your business accounts. \n\nFor more information, see the guides: [Get your account details](https://developer.revolut.com/docs/guides/manage-accounts/accounts-and-transactions/manage-your-accounts)."
paths:
  /accounts:
    get:
      summary: Retrieve all accounts
      operationId: getAccounts
      description: 'Get a list of all your accounts.


        For more information, see the guides: [Get your account details](https://developer.revolut.com/docs/guides/manage-accounts/accounts-and-transactions/manage-your-accounts).'
      security:
      - AccessToken:
        - READ
      responses:
        '200':
          description: List of business accounts
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Accounts'
              example:
              - id: b7ec67d3-5af1-42c8-bece-3d28nlmo894d
                name: International account
                balance: 3171.89
                currency: GBP
                state: active
                public: false
                created_at: '2022-08-05T14:29:22.215785Z'
                updated_at: '2022-08-05T14:29:22.215785Z'
              - id: bssc67d3-5afd-42c2-bece-3d28nlmo894d
                name: International account 2
                balance: 411561.89
                currency: EUR
                state: active
                public: true
                created_at: '2022-08-25T14:29:22.215785Z'
                updated_at: '2022-08-30T14:29:22.215785Z'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - Accounts
  /accounts/{account_id}:
    get:
      summary: Retrieve an account
      operationId: getAccount
      description: 'Get the information about one of your accounts.

        Specify the account by its ID.


        For more information, see the guides: [Get your account details](https://developer.revolut.com/docs/guides/manage-accounts/accounts-and-transactions/manage-your-accounts).'
      security:
      - AccessToken:
        - READ
      tags:
      - Accounts
      parameters:
      - name: account_id
        in: path
        required: true
        description: The ID of the account to retrieve.
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: The information about a specific account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Account'
              example:
                id: b7ec67d3-5af1-42c8-bece-3d28nlmo894d
                name: International account
                balance: 3171.89
                currency: GBP
                state: active
                public: false
                created_at: '2022-08-05T14:29:22.215785Z'
                updated_at: '2022-08-05T14:29:22.215785Z'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /accounts/{account_id}/bank-details:
    get:
      summary: Retrieve account's full bank details
      operationId: getAccountDetails
      description: 'Get all the bank details of one of your accounts.

        Specify the account by its ID.


        For more information, see the guides: [Get your account details](https://developer.revolut.com/docs/guides/manage-accounts/accounts-and-transactions/manage-your-accounts).'
      security:
      - AccessToken:
        - READ
      tags:
      - Accounts
      parameters:
      - name: account_id
        in: path
        required: true
        description: The ID of the account to retrieve all bank details.
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: The bank details of a specific account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountBankDetailsItems'
              example:
              - iban: GB66REVO00996995908888
                bic: REVOGB21
                beneficiary: International account
                beneficiary_address:
                  street_line1: Revolut LTD
                  street_line2: 1 Canada Square
                  city: London
                  country: GB
                  postcode: E14 5AB
                bank_country: GB
                pooled: false
                schemes:
                - swift
                estimated_time:
                  unit: days
                  min: 1
                  max: 3
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /account-access-consents:
    post:
      tags:
      - Accounts
      summary: Create an account access consent
      operationId: CreateAccountAccessConsents
      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.


        :::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.

        :::


        **Request Permissions**


        | PERMISSIONS | DEPENDENCIES |

        |--|--|

        | ReadAccountsBasic | None |

        | ReadAccountsDetail |None|

        | ReadBalances |None|

        | ReadBeneficiariesBasic |None|

        | ReadBeneficiariesDetail |None|

        | ReadDirectDebits |None|

        | ReadScheduledPaymentsBasic |None|

        | ReadScheduledPaymentsDetail |None|

        | ReadStandingOrdersBasic |None|

        | ReadStandingOrdersDetail |None|

        | ReadTransactionsBasic |None|

        | ReadTransactionsCredits |ReadTransactionsBasic OR ReadTransactionsDetail|

        |ReadTransactionsDebits |ReadTransactionsBasic OR ReadTransactionsDetail|

        | ReadTransactionsDetail | None |


        See also [Tutorials: Get account and transaction information](https://developer.revolut.com/docs/guides/build-banking-apps/tutorials/get-account-and-transaction-information#2-create-an-account-access-consent).'
      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:
            schema:
              $ref: '#/components/schemas/OBReadConsent1'
            example:
              Data:
                Permissions:
                - ReadAccountsBasic
                - ReadAccountsDetail
                ExpirationDateTime: '2022-12-02T00:00:00+00:00'
                TransactionFromDateTime: '2022-09-03T00:00:00+00:00'
                TransactionToDateTime: '2022-12-03T00:00:00+00:00'
              Risk: {}
        required: true
      responses:
        '201':
          description: Account Access Consents Created
          headers:
            x-fapi-interaction-id:
              description: An [RFC4122](https://datatracker.ietf.org/doc/html/rfc4122) UUID used as a correlation ID.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBReadConsentResponse1'
              example:
                Data:
                  Status: AwaitingAuthorisation
                  StatusUpdateDateTime: '2022-09-22T11:47:10.366163Z'
                  CreationDateTime: '2022-09-22T11:47:10.366163Z'
                  TransactionToDateTime: '2022-12-03T00:00:00+00:00'
                  ExpirationDateTime: '2022-12-02T00:00:00+00:00'
                  Permissions:
                  - ReadAccountsBasic
                  - ReadAccountsDetail
                  ConsentId: e0bdfd78-2388-xxxx-xxxx-acc0b84c9210
                  TransactionFromDateTime: '2022-09-03T00:00:00+00:00'
                Risk: {}
                Links:
                  Self: https://oba-auth.revolut.com/account-access-consents
                Meta:
                  TotalPages: 1
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
        '401':
          description: Unauthorized
          content: {}
        '403':
          description: Forbidden
          content: {}
        '405':
          description: Method Not Allowed
          content: {}
        '406':
          description: Not Acceptable
          content: {}
        '415':
          description: Unsupported Media Type
          content: {}
        '429':
          description: Too Many Requests
          headers:
            Retry-After:
              description: Time in seconds to wait before you make a new request.
              schema:
                type: integer
          content: {}
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
      security:
      - AccessToken:
        - accounts
      x-codegen-request-body-name: OBReadConsent1Param
  /account-access-consents/{ConsentId}:
    get:
      tags:
      - Accounts
      summary: Retrieve an account access consent
      operationId: GetAccountAccessConsentsConsentId
      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).


        See also [Tutorials: Get account and transaction information](https://developer.revolut.com/docs/guides/build-banking-apps/tutorials/get-account-and-transaction-information).'
      parameters:
      - name: ConsentId
        in: path
        description: The ID of the account access consent.
        required: true
        schema:
          type: string
      - $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':
          description: Account Access Consents Read
          headers:
            x-fapi-interaction-id:
              description: An [RFC4122](https://datatracker.ietf.org/doc/html/rfc4122) UUID used as a correlation ID.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBReadConsentResponse1'
              example:
                Data:
                  Status: AwaitingAuthorisation
                  StatusUpdateDateTime: '2022-09-22T11:47:10.366163Z'
                  CreationDateTime: '2022-09-22T11:47:10.366163Z'
                  TransactionToDateTime: '2022-12-03T00:00:00+00:00'
                  ExpirationDateTime: '2022-12-02T00:00:00+00:00'
                  Permissions:
                  - ReadAccountsBasic
                  - ReadAccountsDetail
                  ConsentId: e0bdfd78-2388-xxxx-xxxx-acc0b84c9210
                  TransactionFromDateTime: '2022-09-03T00:00:00+00:00'
                Risk: {}
                Links:
                  Self: https://oba-auth.revolut.com/account-access-consents/e0bdfd78-2388-xxxx-xxxx-acc0b84c9210
                Meta:
                  TotalPages: 1
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
        '401':
          description: Unauthorized
          content: {}
        '403':
          description: Forbidden
          content: {}
        '405':
          description: Method Not Allowed
          content: {}
        '406':
          description: Not Acceptable
          content: {}
        '429':
          description: Too Many Requests
          headers:
            Retry-After:
              description: Time in seconds to wait before you make a new request.
              schema:
                type: integer
          content: {}
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
      security:
      - AccessToken:
        - accounts
    delete:
      tags:
      - Accounts
      summary: Delete an account access consent
      security:
      - AccessToken:
        - accounts
      description: 'Use this endpoint to:


        - Reject a consent if it is in the `AwaitingAuthorisation` state or any error occurs while the consent is being authorised.

        - Revoke a consent if it is in the `Authorised` state.


        See also [Tutorials: Get account and transaction information](https://developer.revolut.com/docs/guides/build-banking-apps/tutorials/get-account-and-transaction-information).'
      operationId: DeleteAccountAccessConsentsConsentId
      parameters:
      - name: ConsentId
        in: path
        description: The ID of the account access consent.
        required: true
        schema:
          type: string
      - name: x-fapi-financial-id
        in: header
        description: 'The unique ID of the [ASPSP](https://developer.revolut.com/docs/guides/build-banking-apps/glossary) that the request is issued to.

          The ID of Revolut is `001580000103UAvAAM`.'
        required: true
        schema:
          type: string
      - name: x-fapi-customer-last-logged-time
        in: header
        description: 'The date and time when the [PSU](https://developer.revolut.com/docs/guides/build-banking-apps/glossary) last logged in with the [TPP](https://developer.revolut.com/docs/guides/build-banking-apps/glossary).


          All dates in the HTTP headers are represented as [RFC 7231](https://datatracker.ietf.org/doc/html/rfc7231#section-7.1.1.1) Full Dates.

          For example: <nobr>`Sun, 10 Sep 2017 19:43:31 UTC`</nobr>.'
        schema:
          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)$
          type: string
      - name: x-fapi-customer-ip-address
        in: header
        description: The IP address of the [PSU](https://developer.revolut.com/docs/guides/build-banking-apps/glossary) if the PSU is logged in with the [TPP](https://developer.revolut.com/docs/guides/build-banking-apps/glossary).
        schema:
          type: string
      - name: x-fapi-interaction-id
        in: header
        description: An [RFC4122](https://datatracker.ietf.org/doc/html/rfc4122) UUID used as a correlation ID.
        schema:
          type: string
      - name: Authorization
        in: header
        description: 'The access token that you''ve generated.

          For more information, see [Generate an access token](https://developer.revolut.com/docs/guides/build-banking-apps/get-started/get-access-token).'
        required: true
        schema:
          type: string
      - name: x-customer-user-agent
        in: header
        description: The user agent that the [PSU](https://developer.revolut.com/docs/guides/build-banking-apps/glossary) is using.
        schema:
          type: string
      responses:
        '204':
          description: Account Access Consent Deleted
          headers:
            x-fapi-interaction-id:
              description: An [RFC4122](https://datatracker.ietf.org/doc/html/rfc4122) UUID used as a correlation ID.
              schema:
                type: string
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
        '401':
          description: Unauthorized
          content: {}
        '403':
          description: Forbidden
          content: {}
        '405':
          description: Method Not Allowed
          content: {}
        '406':
          description: Not Acceptable
          content: {}
        '429':
          description: Too Many Requests
          headers:
            Retry-After:
              description: Time in seconds to wait before you make a new request.
              schema:
                type: integer
          content: {}
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
  /accounts/{AccountId}:
    get:
      tags:
      - Accounts
      summary: Retrieve an account
      security:
      - AccessToken:
        - accounts
      description: 'Get the information about a specific account by ID.


        :::note

        In compliance with PSD2 SCA regulations, access to this endpoint is only allowed within the first 5 minutes after the Revolut user has authorised the consent.

        After those 5 minutes, access to this endpoint is denied, and an HTTP `403` error is returned.

        :::


        See also [Tutorials: Get account and transaction information](https://developer.revolut.com/docs/guides/build-banking-apps/tutorials/get-account-and-transaction-information).'
      operationId: GetAccountsAccountId
      parameters:
      - name: AccountId
        in: path
        description: The ID of the account.
        required: true
        schema:
          type: string
      - name: x-fapi-financial-id
        in: header
        description: 'The unique ID of the [ASPSP](https://developer.revolut.com/docs/guides/build-banking-apps/glossary) that the request is issued to.

          The ID of Revolut is `001580000103UAvAAM`.'
        required: true
        schema:
          type: string
      - name: x-fapi-customer-last-logged-time
        in: header
        description: 'The date and time when the [PSU](https://developer.revolut.com/docs/guides/build-banking-apps/glossary) last logged in with the [TPP](https://developer.revolut.com/docs/guides/build-banking-apps/glossary).


          All dates in the HTTP headers are represented as [RFC 7231](https://datatracker.ietf.org/doc/html/rfc7231#section-7.1.1.1) Full Dates.

          For example: <nobr>`Sun, 10 Sep 2017 19:43:31 UTC`</nobr>.'
        schema:
          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)$
          type: string
      - name: x-fapi-customer-ip-address
        in: header
        description: The IP address of the [PSU](https://developer.revolut.com/docs/guides/build-banking-apps/glossary) if the PSU is logged in with the [TPP](https://developer.revolut.com/docs/guides/build-banking-apps/glossary).
        schema:
          type: string
      - name: x-fapi-interaction-id
        in: header
        description: An [RFC4122](https://datatracker.ietf.org/doc/html/rfc4122) UUID used as a correlation ID.
        schema:
          type: string
      - name: Authorization
        in: header
        description: 'The access token that you''ve generated.

          For more information, see [Generate an access token](https://developer.revolut.com/docs/guides/build-banking-apps/get-started/get-access-token).'
        required: true
        schema:
          type: string
      - name: x-customer-user-agent
        in: header
        description: The user agent that the [PSU](https://developer.revolut.com/docs/guides/build-banking-apps/glossary) is using.
        schema:
          type: string
      responses:
        '200':
          description: Accounts Read
          headers:
            x-fapi-interaction-id:
              description: An [RFC4122](https://datatracker.ietf.org/doc/html/rfc4122) UUID used as a correlation ID.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBReadAccount3'
              examples:
                uk-accounts:
                  summary: UK Accounts
                  value:
                    Data:
                      Account:
                      - AccountId: d3779729-xxxx-xxxx-bb43-fb5159b7c166
                        Currency: GBP
                        AccountType: Personal
                        AccountSubType: CurrentAccount
                        Account:
                        - SchemeName: UK.OBIE.IBAN
                          Identification: GB95REVO00997053872360
                          Name: John Smith
                        - SchemeName: UK.OBIE.SortCodeAccountNumber
                          Identification: '00000001611667'
                          Name: John Smith
                    Links:
                      Self: https://oba-auth.revolut.com/accounts/d3779729-xxxx-xxxx-bb43-fb5159b7c166
                    Meta:
                      TotalPages: 1
                savings-account:
                  summary: Savings Account
                  value:
                    Data:
                      Account:
                      - AccountId: be2249e6-xxxx-xxxx-b9d1-0242ac120002
                        Currency: GBP
                        AccountType: Personal
                        AccountSubType: Savings
                        Account:
                        - SchemeName: UK.Revolut.InternalAccountId
                          Identification: be2249e6-xxxx-xxxx-b9d1-0242ac120002
                          Name: John Smith
                    Links:
                      Self: https://oba-auth.revolut.com/accounts/be2249e6-xxxx-xxxx-b9d1-0242ac120002
                    Meta:
                      TotalPages: 1
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
        '401':
          description: 'Unauthorized


            Returned when the access token has expired or is invalid, for example, when the consent has been revoked.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
              examples:
                consent_revoked:
                  $ref: '#/components/examples/Error401InvalidRevokedOrExpiredToken'
        '403':
          description: 'Forbidden


            Returned, for example, when the 5-minute [SCA](https://www.openbanking.org.uk/glossary/strong-customer-authentication/) session has expired.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
              examples:
                sca_expired:
                  $ref: '#/components/examples/Error403ForbiddenAccess'
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
        '406':
          description: Not Acceptable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
        '429':
          description: Too Many Requests
          headers:
            Retry-After:
              description: Time in seconds to wait before you make a new request.
              schema:
                type: integer
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
  /accounts/{AccountId}/balances:
    get:
      tags:
      - Accounts
      summary: Retrieve an account balance
      security:
      - AccessToken:
        - accounts
      description: 'Get the balance of an account.


        See also [Tutorials: Get account and transaction information](https://developer.revolut.com/docs/guides/build-banking-apps/tutorials/get-account-and-transaction-information).'
      operationId: GetAccountsAccountIdBalances
      parameters:
      - name: AccountId
        in: path
        description: The ID of the account.
        required: true
        schema:
          type: string
      - name: x-fapi-financial-id
        in: header
        description: 'The unique ID of the [ASPSP](https://developer.revolut.com/docs/guides/build-banking-apps/glossary) that the request is issued to.

          The ID of Revolut is `001580000103UAvAAM`.'
        required: true
        schema:
          type: string
      - name: x-fapi-customer-last-logged-time
        in: header
        description: 'The date and time when the [PSU](https://developer.revolut.com/docs/guides/build-banking-apps/glossary) last logged in with the [TPP](https://developer.revolut.com/docs/guides/build-banking-apps/glossary).


          All dates in the HTTP headers are represented as [RFC 7231](https://datatracker.ietf.org/doc/html/rfc7231#section-7.1.1.1) Full Dates.

          For example: <nobr>`Sun, 10 Sep 2017 19:43:31 UTC`</nobr>.'
        schema:
          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)$
          type: string
      - name: x-fapi-customer-ip-address
        in: header
        description: The IP address of the [PSU](https://developer.revolut.com/docs/guides/build-banking-apps/glossary) if the PSU is logged in with the [TPP](https://developer.revolut.com/docs/guides/build-banking-apps/glossary).
        schema:
          type: string
      - name: x-fapi-interaction-id
        in: header
        description: An [RFC4122](https://datatracker.ietf.org/doc/html/rfc4122) UUID used as a correlation ID.
        schema:
          type: string
      - name: Authorization
        in: header
        description: 'The access token that you''ve generated.

          For more information, see [Generate an access token](https://developer.revolut.com/docs/guides/build-banking-apps/get-started/get-access-token).'
        required: true
        schema:
          type: string
      - name: x-customer-user-agent
        in: header
        description: The user agent that the [PSU](https://developer.revolut.com/docs/guides/build-banking-apps/glossary) is using.
        schema:
          type: string
      responses:
        '200':
          description: Balances Read
          headers:
            x-fapi-interaction-id:
              description: An [RFC4122](https://datatracker.ietf.org/doc/html/rfc4122) UUID used as a correlation ID.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBReadBalance1'
              example:
                Data:
                  Balance:
                  - AccountId: d3779729-xxxx-xxxx-bb43-fb5159b7c166
                    Amount:
                      Amount: '970.49'
                      Currency: GBP
                    CreditDebitIndicator: Credit
                    Type: InterimAvailable
                    DateTime: '2022-09-22T08:32:02.775972Z'
                Links:
                  Self: https://oba-auth.revolut.com/accounts/d3779729-xxxx-xxxx-bb43-fb5159b7c166/balances
                Meta:
                  TotalPages: 1
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
        '401':
          description: 'Unauthorized


            Returned, for instance, when the access token has expired or is invalid, for example, when the consent has been revoked, or when the consent lacks necessary permissions.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
              examples:
                consent_revoked:
                  $ref: '#/components/examples/Error401InvalidRevokedOrExpiredToken'
                no_permissions:
                  $ref: '#/components/examples/Error401ConsentLacksPermissions'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
        '406':
          description: Not Acceptable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
        '429':
          description: Too Many Requests
          headers:
            Retry-After:
              description: Time in seconds to wait before you make a new request.
              schema:
                type: integer
          content: {}
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OBErrorResponse1'
  /accounts/{AccountId}/beneficiaries:
    get:
      tags:
   

# --- truncated at 32 KB (67 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/revolut/refs/heads/main/openapi/revolut-accounts-api-openapi.yml