Yapily Variable Recurring Payments API

Variable Recurring Payments enables transfer of money between accounts held by the same person or transfer of money for business payments. In order to make Sweeping Variable Recurring Payments on behalf of a user, you are required to request an [Consent](#tag/Authorisations) from the user by calling the Sweeping Consent endpoint to authorise the user's account to make the payment. Once a `consent-token` is obtained, you can call the Payments endpoint to execute the Sweeping Variable Recurring Payments transaction. Before executing the payment, you have the option to confirm availability of funds in the user's account by calling the Funds Confirmation endpoint. See [VRP Payments](/payments/vrps/additional-information) for more information.

OpenAPI Specification

yapily-variable-recurring-payments-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Yapily Beneficiaries Application Beneficiaries Variable Recurring Payments API
  description: Application and User Beneficiaries endpoints for managing reusable payment counterparties.
  version: 12.4.0
  contact:
    name: Yapily Support
    url: https://docs.yapily.com/resources/support
    email: support@yapily.com
servers:
- url: https://api.yapily.com
security:
- basicAuth: []
tags:
- description: "Variable Recurring Payments enables transfer of money between accounts held by the same person or transfer of money for business payments. \n\nIn order to make Sweeping Variable Recurring Payments on behalf of a user, you are required to request an [Consent](#tag/Authorisations) from the user by calling the Sweeping Consent endpoint to authorise the user's account to make the payment. Once a `consent-token` is obtained, you can call the Payments endpoint to execute the Sweeping Variable Recurring Payments transaction. Before executing the payment, you have the option to confirm availability of funds in the user's account by calling the Funds Confirmation endpoint. \n\nSee [VRP Payments](/payments/vrps/additional-information) for more information."
  name: Variable Recurring Payments
paths:
  /variable-recurring-payments/sweeping/consents:
    post:
      description: 'Initiate authorisation for a Sweeping [VRP](/payments/vrps/introduction) consent.


        The response will contain an Authorisation URL and the associated Consent ID. The user will have to complete authorisation of the consent at their institution via [Redirect Flows](/getting-started/glossary#redirect-flow), after which you will be able to use the authorised consent to create payments.


        Feature:


        - `INITIATE_DOMESTIC_VARIABLE_RECURRING_PAYMENT_SWEEPING`'
      operationId: createSweepingAuthorisation
      x-mint:
        content: '<Info>Learn more: [Variable Recurring Payments](/payments/vrps/introduction)</Info>'
      requestBody:
        content:
          application/json;charset=UTF-8:
            examples:
              UK Sweeping VRP Authorisation Request:
                description: UK Sweeping VRP Authorisation Request
                value:
                  userUuid: 5350782b-60f3-489e-aae5-a24d8d679a07
                  institutionId: modelo-sandbox
                  callback: https://display-parameters.com/
                  controlParameters:
                    psuAuthenticationMethods:
                    - SCA_NOT_REQUIRED
                    maxAmountPerPayment:
                      amount: 10
                      currency: GBP
                    periodicLimits:
                    - totalMaxAmount:
                        amount: 50
                        currency: GBP
                      frequency: MONTHLY
                      alignment: CONSENT
                  initiationDetails:
                    reference: My Sweeping VRP
                    payer:
                      name: Jane Doe
                      accountIdentifications:
                      - type: ACCOUNT_NUMBER
                        identification: '87654321'
                      - type: SORT_CODE
                        identification: '332211'
                    payee:
                      name: John Doe
                      accountIdentifications:
                      - type: ACCOUNT_NUMBER
                        identification: '12345678'
                      - type: SORT_CODE
                        identification: '112233'
            schema:
              $ref: '#/components/schemas/VrpSweepingAuthorisationRequest'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json;charset=UTF-8:
              examples:
                UK Domestic Sweeping VRP Authorisation Response:
                  description: UK Domestic Sweeping VRP Authorisation Response
                  value:
                    meta:
                      tracingId: 96169af01d394ad39658f17d53b49a5d
                    data:
                      id: a2a9ec77-a479-4996-9896-4568e1968e7a
                      userUuid: 5350782b-60f3-489e-aae5-a24d8d679a07
                      applicationUserId: user000
                      institutionId: modelo-sandbox
                      status: AWAITING_AUTHORIZATION
                      createdAt: '2026-01-01T10:25:13Z'
                      featureScope:
                      - EXISTING_PAYMENTS_DETAILS
                      - EXISTING_PAYMENT_INITIATION_DETAILS
                      - CREATE_DOMESTIC_VARIABLE_RECURRING_PAYMENT_SWEEPING
                      - VARIABLE_RECURRING_PAYMENT_FUNDS_CONFIRMATION
                      - INITIATE_DOMESTIC_VARIABLE_RECURRING_PAYMENT_SWEEPING
                      state: 80052c03007f41d589f64377eef4d620
                      institutionConsentId: sdp-6-25ff5bd8-d01c-422d-aa9e-8e68808bc899
                      authorisationUrl: https://ob19-auth1-ui.o3bank.co.uk/auth?client_id=e7f6b95b-5f35-419b-b301-8b08bcd946de&response_type=code+id_token&state=80052c03007f41d589f64377eef4d620&nonce=80052c03007f41d589f64377eef4d620&scope=openid+payments&redirect_uri=https%3A%2F%2Fauth.yapily.com%2F&request=eyJraWQiOiJnRTRvU3VaZDl4TVpUNXZDdTNWYy1mdktNak0iLCJhbGciOiJQUzI1NiJ9.eyJhdWQiOiJodHRwczovL29iMTktYXV0aDEtdWkubzNiYW5rLmNvLnVrIiwic2NvcGUiOiJvcGVuaWQgcGF5bWVudHMiLCJpc3MiOiJlN2Y2Yjk1Yi01ZjM1LTQxOWItYjMwMS04YjA4YmNkOTQ2ZGUiLCJjbGllbnRfaWQiOiJlN2Y2Yjk1Yi01ZjM1LTQxOWItYjMwMS04YjA4YmNkOTQ2ZGUiLCJyZXNwb25zZV90eXBlIjoiY29kZSBpZF90b2tlbiIsInJlZGlyZWN0X3VyaSI6Imh0dHBzOi8vYXV0aC55YXBpbHkuY29tLyIsInN0YXRlIjoiODAwNTJjMDMwMDdmNDFkNTg5ZjY0Mzc3ZWVmNGQ2MjAiLCJjbGFpbXMiOnsiaWRfdG9rZW4iOnsiYWNyIjp7InZhbHVlIjoidXJuOm9wZW5iYW5raW5nOnBzZDI6c2NhIiwiZXNzZW50aWFsIjp0cnVlfSwib3BlbmJhbmtpbmdfaW50ZW50X2lkIjp7InZhbHVlIjoic2RwLTYtMjVmZjViZDgtZDAxYy00MjJkLWFhOWUtOGU2ODgwOGJjODk5IiwiZXNzZW50aWFsIjp0cnVlfX0sInVzZXJpbmZvIjp7Im9wZW5iYW5raW5nX2ludGVudF9pZCI6eyJ2YWx1ZSI6InNkcC02LTI1ZmY1YmQ4LWQwMWMtNDIyZC1hYTllLThlNjg4MDhiYzg5OSIsImVzc2VudGlhbCI6dHJ1ZX19fSwibm9uY2UiOiI4MDA1MmMwMzAwN2Y0MWQ1ODlmNjQzNzdlZWY0ZDYyMCIsImp0aSI6ImUxYjZmMWM4LTQ1ZTktNGM0NS05NGE0LWExMTY1Nzk2NjZiNiIsImlhdCI6MTYyMzI0NjUwNSwiZXhwIjoxNjIzMjQ4MzA1fQ.C5YkClHiDOWl1CKnmEY0gM_JizUuELp2-k7sDjsWV5T-mgTWviO-jM7iVfCf4MsU6batLSBmeUFLco1b3S8PTQkAzwM3laHIgbfDAb_6bYkSBTbPriyzKcC8xAwhX3VdvWtb9qqdrn9zXSmIIITBhJdMzk1cgIjyETD7WNPln839eGP1-w8iB8yDOJOkYGRHJ850mQY-lk61GegmKs5kaxtYPIhrG2gygIi3JsN-uQJ6YOl2-5pylTEcJbuwhFiyeePdqHZdabqW2BSA6lDKQbMV_Zow_zhSWoFFv6RZdXCQpt4TBRj1W7tzZQKin-MC-TpzaF1q07RpSy0NtlN85w
                      qrCodeUrl: https://images.yapily.com/image/2bbb79b8-2c4a-4c8e-9132-0636879437da/1623246505?size=0
                      controlParameters:
                        psuAuthenticationMethods:
                        - SCA_NOT_REQUIRED
                        maxAmountPerPayment:
                          amount: 10
                          currency: GBP
                        periodicLimits:
                        - totalMaxAmount:
                            amount: 50
                            currency: GBP
                          frequency: MONTHLY
                          alignment: CONSENT
                      initiationDetails:
                        reference: My Sweeping VRP
                        payer:
                          name: John Doe
                          accountIdentifications:
                          - type: ACCOUNT_NUMBER
                            identification: '87654321'
                          - type: SORT_CODE
                            identification: '332211'
                        payee:
                          name: John Doe
                          accountIdentifications:
                          - type: ACCOUNT_NUMBER
                            identification: '12345678'
                          - type: SORT_CODE
                            identification: '112233'
              schema:
                $ref: '#/components/schemas/ApiResponseOfVrpSweepingAuthorisationResponse'
        '401':
          content:
            application/json;charset=UTF-8:
              examples:
                Error Response:
                  description: Error Response
                  value:
                    error:
                      tracingId: 0c2d0973bdd24224a65e5d0f7d1b6154
                      code: 401
                      status: UNAUTHORIZED
                      supportUrl: https://support.yapily.com/
                      source: YAPILY
                      issues:
                      - type: CREDENTIALS
                        code: CREDENTIALS_MISSING
                        message: Authentication header not present
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
          description: Error Response
        default:
          content:
            application/json;charset=UTF-8:
              examples:
                Error Response:
                  description: Error Response
                  value:
                    error:
                      tracingId: 0c2d0973bdd24224a65e5d0f7d1b6154
                      code: 400
                      status: BAD_REQUEST
                      supportUrl: https://support.yapily.com/
                      source: YAPILY
                      issues:
                      - type: BAD_REQUEST
                        code: BAD_REQUEST
                        message: The server could not understand the request due to invalid syntax
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
          description: Error Response
      summary: Create Sweeping Vrp Authorisation
      tags:
      - Variable Recurring Payments
  /variable-recurring-payments/sweeping/consents/{consentId}:
    get:
      description: 'Get Sweeping [VRP](/payments/vrps/introduction) consent details from the Consent ID.


        Feature: `CREATE_DOMESTIC_VARIABLE_RECURRING_PAYMENT_SWEEPING`'
      operationId: getSweepingVrpConsentById
      parameters:
      - description: The Consent ID to retrieve.
        in: path
        name: consentId
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json;charset=UTF-8:
              examples:
                UK Sweeping VRP Consent Details Response:
                  description: Get Sweeping Variable Recurring Payments Consent Example Response
                  value:
                    meta:
                      tracingId: 679e7bb6cd45416a9a9a8d004c5315da
                    data:
                      id: 56a42244-414a-4b52-8c4f-4ad2a50e82fe
                      userUuid: ca412fdf-5a30-43a2-88b7-5964a24a8e55
                      applicationUserId: string
                      institutionId: modelo-sandbox
                      status: AUTHORIZED
                      createdAt: '2021-06-08T10:59:35.138Z'
                      featureScope:
                      - EXISTING_PAYMENTS_DETAILS
                      - EXISTING_PAYMENT_INITIATION_DETAILS
                      - CREATE_DOMESTIC_VARIABLE_RECURRING_PAYMENT_SWEEPING
                      - VARIABLE_RECURRING_PAYMENT_FUNDS_CONFIRMATION
                      - INITIATE_DOMESTIC_VARIABLE_RECURRING_PAYMENT_SWEEPING
                      consentToken: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJJTlNUSVRVVElPTiI6Im1vZGVsby1zYW5kYm94IiwiQ09OU0VOVCI6IjU2YTQyMjQ0LTQxNGEtNGI1Mi04YzRmLTRhZDJhNTBlODJmZSIsIkFQUExJQ0FUSU9OX1VTRVJfSUQiOiJtb2ZlLTIiLCJVU0VSIjoiY2E0MTJmZGYtNWEzMC00M2EyLTg4YjctNTk2NGEyNGE4ZTU1In0.gorwpnUjSr5dzQJLR32M2geWOj7yK9xMsZmq27ssY9xP_xGmWfUL_aqVHYyQ4r5KWw6Xb6RjvO839st8chJLtg
                      state: a09f8ff9c1284444aa635267e05f76e1
                      authorizedAt: '2021-06-08T10:59:53.288Z'
                      institutionConsentId: aac-605d48f2-2a0e-4594-81a9-996524fa3b2a
                      controlParameters:
                        psuAuthenticationMethods:
                        - SCA_NOT_REQUIRED
                        periodicLimits:
                        - totalMaxAmount:
                            amount: 100
                            currency: GBP
                          frequency: DAILY
                          alignment: CONSENT
                        maxAmountPerPayment:
                          amount: 10
                          currency: GBP
                      payer:
                        name: John Doe
                        accountIdentifications:
                        - type: ACCOUNT_NUMBER
                          identification: '87654321'
                        - type: SORT_CODE
                          identification: '654321'
                      initiationDetails:
                        reference: Own Account Sweeping
                        payer:
                          name: John Doe
                          accountIdentifications:
                          - type: ACCOUNT_NUMBER
                            identification: '87654321'
                          - type: SORT_CODE
                            identification: '654321'
                        payee:
                          name: John Doe
                          accountIdentifications:
                          - type: ACCOUNT_NUMBER
                            identification: '12345678'
                          - type: SORT_CODE
                            identification: '123456'
              schema:
                $ref: '#/components/schemas/ApiResponseOfVrpSweepingAuthorisationResponse'
        '401':
          content:
            application/json;charset=UTF-8:
              examples:
                Error Response:
                  description: Error Response
                  value:
                    error:
                      tracingId: 0c2d0973bdd24224a65e5d0f7d1b6154
                      code: 401
                      status: UNAUTHORIZED
                      supportUrl: https://support.yapily.com/
                      source: YAPILY
                      issues:
                      - type: CREDENTIALS
                        code: CREDENTIALS_MISSING
                        message: Authentication header not present
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
          description: Error Response
        default:
          content:
            application/json;charset=UTF-8:
              examples:
                Error Response:
                  description: Error Response
                  value:
                    error:
                      tracingId: 0c2d0973bdd24224a65e5d0f7d1b6154
                      code: 400
                      status: BAD_REQUEST
                      supportUrl: https://support.yapily.com/
                      source: YAPILY
                      issues:
                      - type: BAD_REQUEST
                        code: BAD_REQUEST
                        message: The server could not understand the request due to invalid syntax
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
          description: Error Response
      summary: Get Sweeping Vrp Consent Details
      tags:
      - Variable Recurring Payments
      x-mint:
        content: '<Info>Learn more: [VRP Consent Details](/payments/vrps/get-started#get-consent-details)</Info>'
  /variable-recurring-payments/funds-confirmation:
    post:
      description: 'Check whether the requested funds amount is available on the [VRP](/payments/vrps/introduction) consent.


        Note that you should not call this before each VRP payment submission because we do it for you.


        Required feature: `VARIABLE_RECURRING_PAYMENT_FUNDS_CONFIRMATION`'
      operationId: createVrpFundsConfirmation
      parameters:
      - description: The user's VRP [Consent Token](/getting-started/glossary#consent-token)
        example: '{consentToken}'
        in: header
        name: consent
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json;charset=UTF-8:
            examples:
              UK VRP Funds Confirmation Request:
                description: UK VRP Funds Confirmation Request
                value:
                  reference: Own Account Sweeping
                  paymentAmount:
                    amount: 10
                    currency: GBP
            schema:
              $ref: '#/components/schemas/VrpFundsConfirmationRequest'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json;charset=UTF-8:
              examples:
                UK VRP Funds Confirmation Response:
                  description: UK VRP Funds Confirmation Response
                  value:
                    meta:
                      tracingId: 0f14e900011b445fa6b6c2c4272d7321
                    data:
                      id: a9582f8e-08be-4cca-9f01-1ad3be96532d
                      fundsAvailable:
                        fundsAvailable: true
                        fundsAvailableAt: '2021-06-08T10:59:35.138Z'
                      reference: Own Account Sweeping
                      paymentAmount:
                        amount: 10
                        currency: GBP
              schema:
                $ref: '#/components/schemas/ApiResponseOfVrpFundsConfirmationResponse'
        '401':
          content:
            application/json;charset=UTF-8:
              examples:
                Error Response:
                  description: Error Response
                  value:
                    error:
                      tracingId: 0c2d0973bdd24224a65e5d0f7d1b6154
                      code: 401
                      status: UNAUTHORIZED
                      supportUrl: https://support.yapily.com/
                      source: YAPILY
                      issues:
                      - type: CREDENTIALS
                        code: CREDENTIALS_MISSING
                        message: Authentication header not present
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
          description: Error Response
        default:
          content:
            application/json;charset=UTF-8:
              examples:
                Error Response:
                  description: Error Response
                  value:
                    error:
                      tracingId: 0c2d0973bdd24224a65e5d0f7d1b6154
                      code: 400
                      status: BAD_REQUEST
                      supportUrl: https://support.yapily.com/
                      source: YAPILY
                      issues:
                      - type: BAD_REQUEST
                        code: BAD_REQUEST
                        message: The server could not understand the request due to invalid syntax
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
          description: Error Response
      summary: Confirm Funds for Vrp Payment
      tags:
      - Variable Recurring Payments
      x-mint:
        content: '<Info>Learn more: [Confirm Availability of Funds](/payments/vrps/get-started#confirm-availability-of-funds)</Info>'
  /variable-recurring-payments/payments:
    post:
      description: 'Submit payment on the [VRP](/payments/vrps/introduction) consent.


        Required feature: `CREATE_DOMESTIC_VARIABLE_RECURRING_PAYMENT_SWEEPING` or `CREATE_DOMESTIC_VARIABLE_RECURRING_PAYMENT_COMMERCIAL`'
      operationId: createVrpPayment
      parameters:
      - description: The user's VRP [Consent Token](/getting-started/glossary#consent-token)
        example: '{consentToken}'
        in: header
        name: consent
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json;charset=UTF-8:
            examples:
              UK VRP Payment Request:
                description: UK VRP Payment Request
                value:
                  paymentIdempotencyId: 234g87t58tgeuo848wudjew489
                  psuAuthenticationMethod: SCA_NOT_REQUIRED
                  paymentAmount:
                    amount: 10
                    currency: GBP
            schema:
              $ref: '#/components/schemas/VrpSubmissionRequest'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json;charset=UTF-8:
              examples:
                UK VRP Payment Response:
                  description: UK VRP Payment Response
                  value:
                    meta:
                      tracingId: 0f14e900011b445fa6b6c2c4272d7321
                    data:
                      id: a9582f8e-08be-4cca-9f01-1ad3be96532d
                      paymentIdempotencyId: 234g87t58tgeuo848wudjew489
                      institutionConsentId: PF23232222DD
                      status: COMPLETED
                      statusDetails:
                        status: COMPLETED
                        isoStatus:
                          code: ACCP
                          name: AcceptedCustomerProfile
                      initiationDetails:
                        reference: Own Account Sweeping
                        payer:
                          name: John Doe
                          accountIdentifications:
                          - type: ACCOUNT_NUMBER
                            identification: '87654321'
                          - type: SORT_CODE
                            identification: '654321'
                        payee:
                          name: John Doe
                          accountIdentifications:
                          - type: ACCOUNT_NUMBER
                            identification: '12345678'
                          - type: SORT_CODE
                            identification: '123456'
                      submissionDetails:
                        reference: Own Account Sweeping
                        payee:
                          name: John Doe
                          accountIdentifications:
                          - type: ACCOUNT_NUMBER
                            identification: '12345678'
                          - type: SORT_CODE
                            identification: '123456'
                        paymentAmount:
                          amount: 10
                          currency: GBP
                      payer:
                        name: John Doe
                        accountIdentifications:
                        - type: ACCOUNT_NUMBER
                          identification: '87654321'
                        - type: SORT_CODE
                          identification: '654321'
                      refundAccount:
                        accountIdentifications:
                        - identification: '400400'
                          type: SORT_CODE
                        - identification: '99999999'
                          type: ACCOUNT_NUMBER
                        name: Refund Account
                      expectedSettlementTime: '2022-03-02T12:00:00.000Z'
                      expectedExecutionTime: '2022-03-02T12:00:00.000Z'
              schema:
                $ref: '#/components/schemas/ApiResponseOfVrpSubmissionResponse'
        '401':
          content:
            application/json;charset=UTF-8:
              examples:
                Error Response:
                  description: Error Response
                  value:
                    error:
                      tracingId: 0c2d0973bdd24224a65e5d0f7d1b6154
                      code: 401
                      status: UNAUTHORIZED
                      supportUrl: https://support.yapily.com/
                      source: YAPILY
                      issues:
                      - type: CREDENTIALS
                        code: CREDENTIALS_MISSING
                        message: Authentication header not present
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
          description: Error Response
        default:
          content:
            application/json;charset=UTF-8:
              examples:
                Error Response:
                  description: Error Response
                  value:
                    error:
                      tracingId: 0c2d0973bdd24224a65e5d0f7d1b6154
                      code: 400
                      status: BAD_REQUEST
                      supportUrl: https://support.yapily.com/
                      source: YAPILY
                      issues:
                      - type: BAD_REQUEST
                        code: BAD_REQUEST
                        message: The server could not understand the request due to invalid syntax
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
          description: Error Response
      summary: Create Vrp Payment
      tags:
      - Variable Recurring Payments
      x-mint:
        content: '<Info>Learn more: [Execute VRP Payments](/payments/vrps/get-started#execute-a-payment)</Info>'
  /variable-recurring-payments/payments/{paymentId}/details:
    get:
      description: 'Get [VRP](/payments/vrps/introduction) payment details from the Payment ID.


        Features: `CREATE_DOMESTIC_VARIABLE_RECURRING_PAYMENT_SWEEPING` or `CREATE_DOMESTIC_VARIABLE_RECURRING_PAYMENT_COMMERCIAL`'
      operationId: getVrpPaymentDetails
      parameters:
      - description: __Mandatory__. The Payment Id of the `Variable Recurring Payments` to retrieve.
        in: path
        name: paymentId
        required: true
        schema:
          type: string
      - description: __Mandatory__. The [Consent Token](/getting-started/glossary#consent-token) containing the user's authorisation to make the `Variable Recurring Payments` request.
        in: header
        name: consent
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json;charset=UTF-8:
              examples:
                UK VRP Payment Details Response:
                  description: UK VRP Payment Details Response
                  value:
                    meta:
                      tracingId: 679e7bb6cd45416a9a9a8d004c5315da
                    data:
                      id: a9582f8e-08be-4cca-9f01-1ad3be96532d
                      paymentIdempotencyId: 234g87t58tgeuo848wudjew489
                      institutionConsentId: PF23232222DD
                      status: COMPLETED
                      statusDetails:
                        status: COMPLETED
                        isoStatus:
                          code: ACCP
                          name: AcceptedCustomerProfile
                      initiationDetails:
                        reference: Own Account Sweeping
                        payer:
                          name: John Doe
                          accountIdentifications:
                          - type: ACCOUNT_NUMBER
                            identification: '87654321'
                          - type: SORT_CODE
                            identification: '654321'
                        payee:
                          name: John Doe
                          accountIdentifications:
                          - type: ACCOUNT_NUMBER
                            identification: '12345678'
                          - type: SORT_CODE
                            identification: '123456'
                      submissionDetails:
                        reference: Own Account Sweeping
                        payee:
                          name: John Doe
                          accountIdentifications:
                          - type: ACCOUNT_NUMBER
                            identification: '12345678'
                          - type: SORT_CODE
                            identification: '123456'
                        paymentAmount:
                          amount: 10
                          currency: GBP
                      payer:
                        name: John Doe
                        accountIdentifications:
                        - type: ACCOUNT_NUMBER
                          identification: '87654321'
                        - type: SORT_CODE
                          identification: '654321'
                      refundAccount:
                        accountIdentifications:
                        - identification: '400400'
                          type: SORT_CODE
                        - identification: '99999999'
                          type: ACCOUNT_NUMBER
                        name: Refund Account
                      expectedSettlementTime: '2022-03-02T12:00:00.000Z'
                      expectedExecutionTime: '2022-03-02T12:00:00.000Z'
              schema:
                $ref: '#/components/schemas/ApiResponseOfVrpSubmissionResponse'
        '401':
          content:
            application/json;charset=UTF-8:
              examples:
                Error Response:
                  description: Error Response
                  value:
                    error:
                      tracingId: 0c2d0973bdd24224a65e5d0f7d1b6154
                      code: 401
                      status: UNAUTHORIZED
                      supportUrl: https://support.yapily.com/
                      source: YAPILY
                      issues:
                      - type: CREDENTIALS
                        code: CREDENTIALS_MISSING
                        message: Authentication header not present
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
          description: Error Response
        default:
          content:
            application/json;charset=UTF-8:
              examples:
                Error Response:
                  description: Error Response
                  value:
                    error:
                      tracingId: 0c2d0973bdd24224a65e5d0f7d1b6154
                      code: 400
                      status: BAD_REQUEST
                      supportUrl: https://support.yapily.com/
                      source: YAPILY
                      issues:
                      - type: BAD_REQUEST
                        code: BAD_REQUEST
                        message: The server could not understand the request due to invalid syntax
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
          description: Error Response
      summary: Get Vrp Payment Details
      tags:
      - Variable Recurring Payments
      x-mint:
        content: '<Info>Learn more: [VRP Paymenent Details](/payments/vrps/get-started#get-vrp-payment-details)</Info>'
components:
  schemas:
    ApiErrorResponse:
      type: object
      properties:
        error:
          $ref: '#/components/schemas/ErrorDetails'
      description: 'Used to return errors from the bank from each request


        - `400` - Returned by any `POST` endpoint when the body does not conform to the contract

        - `401` - Returned by any endpoint when an invalid `authToken` is used for authentication

        - `403` - Returned by any [Financial Data](/api-reference/...) and any [Payments](/api-reference/...) endpoint when the `Consent` is no longer authorised to access financial data or to make a payment

        - `404` - Returned by any endpoint where there are path parameters and the path parameters supplied are unable to find the desired resource

        - `409` - Returned by any `POST` endpoint when creating a resource that conflicts with any other existing resource e.g. [Create User](/api-reference/...)

        - `424` - Returned by any [Financial Data](/api-reference/...) and any [Payments](/api-reference/...) endpoint when the feature to be accessed is not supported by the `Institution`.

        - `500` - Returned by any endpoint when Yapily is down. If you encounter any false positives, please [notify us](mailto:support@yapily.com)'
      example:
        error:
          tracingId: 0c2d0973bdd24224a65e5d0f7d1b6154
          code: 400
          status: BAD_REQUEST
          supportUrl: https://support.yapily.com/
          source: YAPILY
          issues:
          - type: INVALID_REQUEST
            code: INVALID_PROPERTY_UNEXPECTED_VALUE
            parameter: $.payer.accountidentifications.type
            message: Type Should be one of [PAN, SORT_CODE, ACCOUNT_NUMBER]
            institutionError:
              errorMessage: '{"Code":"400 BadRequest","Id":"3517bfc2-c3ee-4f2f-b4f8-12f62478e0d1","Message":"No Reso

# --- truncated at 32 KB (110 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/yapily/refs/heads/main/openapi/yapily-variable-recurring-payments-api-openapi.yml