openapi: 3.1.0
servers:
- url: https://pal-test.adyen.com/pal/servlet/Payment/v40
info:
  version: '40'
  x-publicVersion: true
  title: Adyen Payment API
  description: "A set of API endpoints that allow you to initiate, settle, and modify\
    \ payments on the Adyen payments platform. You can use the API to accept card\
    \ payments (including One-Click and 3D Secure), bank transfers, ewallets, and\
    \ many other payment methods.\n\nTo learn more about the API, visit [Classic integration](https://docs.adyen.com/classic-integration).\n\
    \n## Authentication\nYou need an [API credential](https://docs.adyen.com/development-resources/api-credentials)\
    \ to authenticate to the API.\n\nIf using an API key, add an `X-API-Key` header\
    \ with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type:\
    \ application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively,\
    \ you can use the username and password to connect to the API using basic authentication,\
    \ for example:\n\n```\ncurl\n-U \"ws@Company.YOUR_COMPANY_ACCOUNT\":\"YOUR_BASIC_AUTHENTICATION_PASSWORD\"\
    \ \\\n-H \"Content-Type: application/json\" \\\n...\n```\n\n## Versioning\nPayments\
    \ API supports [versioning](https://docs.adyen.com/development-resources/versioning)\
    \ using a version suffix in the endpoint URL. This suffix has the following format:\
    \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://pal-test.adyen.com/pal/servlet/Payment/v40/authorise\n\
    ```\n\n## Going live\n\nTo authenticate to the live endpoints, you need an [API\
    \ credential](https://docs.adyen.com/development-resources/api-credentials) from\
    \ your live Customer Area.\n\nThe live endpoint URLs contain a prefix which is\
    \ unique to your company account:\n```\n\nhttps://{PREFIX}-pal-live.adyenpayments.com/pal/servlet/Payment/v40/authorise\n\
    ```\n\nGet your `{PREFIX}` from your live Customer Area under **Developers** >\
    \ **API URLs** > **Prefix**."
  termsOfService: https://www.adyen.com/legal/terms-and-conditions
  contact:
    name: Adyen Developer Experience team
    url: https://github.com/Adyen/adyen-openapi
tags:
- name: Payments
- name: Modifications
paths:
  /adjustAuthorisation:
    post:
      tags:
      - Modifications
      summary: Change the authorised amount
      description: 'Allows you to increase or decrease the authorised amount after
        the initial authorisation has taken place. This functionality enables for
        example tipping, improving the chances your authorisation will be valid, or
        charging the shopper when they have already left the merchant premises.


        > This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).

        > If you have a [newer integration](https://docs.adyen.com/online-payments),
        and are doing:

        > * [Asynchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment),
        use the [`/payments/{paymentPspReference}/amountUpdates`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/amountUpdates)
        endpoint on Checkout API.

        > * [Synchronous adjustments](https://docs.adyen.com/online-payments/adjust-authorisation#asynchronous-or-synchronous-adjustment),
        use this endpoint.'
      x-addedInVersion: '30'
      operationId: post-adjustAuthorisation
      x-sortIndex: 6
      x-methodName: adjustAuthorisation
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              adjustAuthorisation:
                $ref: '#/components/examples/post-adjustAuthorisation-adjustAuthorisation'
            schema:
              $ref: '#/components/schemas/AdjustAuthorisationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                adjustAuthorisation:
                  $ref: '#/components/examples/post-adjustAuthorisation-adjustAuthorisation-200'
              schema:
                $ref: '#/components/schemas/ModificationResult'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-400'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-401'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-500'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
  /authorise:
    post:
      tags:
      - Payments
      summary: Create an authorisation
      description: 'Creates a payment with a unique reference (`pspReference`) and
        attempts to obtain an authorisation hold. For cards, this amount can be captured
        or cancelled later. Non-card payment methods typically don''t support this
        and will automatically capture as part of the authorisation.

        > This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).
        If using a [newer integration](https://docs.adyen.com/online-payments), use
        the [`/payments`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments)
        endpoint under Checkout API instead.'
      operationId: post-authorise
      x-sortIndex: 1
      x-methodName: authorise
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              authorise-3d-secure-2:
                $ref: '#/components/examples/post-authorise-authorise-3d-secure-2'
              authorise-3dsecure:
                $ref: '#/components/examples/post-authorise-authorise-3dsecure'
              authorise-card:
                $ref: '#/components/examples/post-authorise-authorise-card'
              authorise-recurringcontauth:
                $ref: '#/components/examples/post-authorise-authorise-recurringcontauth'
              authorise-recurringoneclick:
                $ref: '#/components/examples/post-authorise-authorise-recurringoneclick'
              authorise-recurringstore:
                $ref: '#/components/examples/post-authorise-authorise-recurringstore'
              authorise-split:
                $ref: '#/components/examples/post-authorise-authorise-split'
            schema:
              $ref: '#/components/schemas/PaymentRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentResult'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-400'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-401'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-500'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
  /authorise3d:
    post:
      tags:
      - Payments
      summary: Complete a 3DS authorisation
      description: 'For an authenticated 3D Secure session, completes the payment
        authorisation. This endpoint must receive the `md` and `paResponse` parameters
        that you get from the card issuer after a shopper pays via 3D Secure.


        > This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure).
        If using a [newer integration](https://docs.adyen.com/online-payments), use
        the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details)
        endpoint under Checkout API instead.'
      operationId: post-authorise3d
      x-sortIndex: 2
      x-methodName: authorise3d
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              authorise3d:
                $ref: '#/components/examples/post-authorise3d-authorise3d'
            schema:
              $ref: '#/components/schemas/PaymentRequest3d'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentResult'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-400'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-401'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-500'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
  /authorise3ds2:
    post:
      tags:
      - Payments
      summary: Complete a 3DS2 authorisation
      description: 'For an authenticated 3D Secure 2 session, completes the payment
        authorisation. This endpoint must receive the `threeDS2Token` and `threeDS2Result`
        parameters.


        > This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce/3d-secure).
        If using a [newer integration](https://docs.adyen.com/online-payments), use
        the [`/payments/details`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/details)
        endpoint under Checkout API instead.'
      x-addedInVersion: '37'
      operationId: post-authorise3ds2
      x-sortIndex: 3
      x-methodName: authorise3ds2
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              authorise3ds2:
                $ref: '#/components/examples/post-authorise3ds2-authorise3ds2'
            schema:
              $ref: '#/components/schemas/PaymentRequest3ds2'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentResult'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-400'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-401'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-500'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
  /cancel:
    post:
      tags:
      - Modifications
      summary: Cancel an authorisation
      description: 'Cancels the authorisation hold on a payment, returning a unique
        reference for this request. You can cancel payments after authorisation only
        for payment methods that support distinct authorisations and captures.


        For more information, refer to [Cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel).


        > This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).
        If using a [newer integration](https://docs.adyen.com/online-payments), use
        the [`/payments/{paymentPspReference}/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/cancels)
        endpoint under Checkout API instead.'
      operationId: post-cancel
      x-sortIndex: 2
      x-methodName: cancel
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              cancel:
                $ref: '#/components/examples/post-cancel-cancel'
            schema:
              $ref: '#/components/schemas/CancelRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModificationResult'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-400'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-401'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-500'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
  /cancelOrRefund:
    post:
      tags:
      - Modifications
      summary: Cancel or refund a payment
      description: "Cancels a payment if it has not been captured yet, or refunds\
        \ it if it has already been captured. This is useful when it is not certain\
        \ if the payment has been captured or not (for example, when using auto-capture).\n\
        \nDo not use this endpoint for payments that involve:\n * [Multiple partial\
        \ captures](https://docs.adyen.com/online-payments/capture).\n * [Split data](https://docs.adyen.com/classic-platforms/processing-payments#providing-split-information)\
        \ either at time of payment or capture for Adyen for Platforms.\n\n Instead,\
        \ check if the payment has been captured and make a corresponding [`/refund`](https://docs.adyen.com/api-explorer/#/Payment/refund)\
        \ or [`/cancel`](https://docs.adyen.com/api-explorer/#/Payment/cancel) call.\n\
        \nFor more information, refer to [Cancel or refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel-or-refund).\n\
        \n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).\
        \ If using a [newer integration](https://docs.adyen.com/online-payments),\
        \ use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/reversals)\
        \ endpoint under Checkout API instead."
      operationId: post-cancelOrRefund
      x-sortIndex: 4
      x-methodName: cancelOrRefund
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              cancelOrRefund:
                $ref: '#/components/examples/post-cancelOrRefund-cancelOrRefund'
            schema:
              $ref: '#/components/schemas/CancelOrRefundRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                cancelOrRefund:
                  $ref: '#/components/examples/post-cancelOrRefund-cancelOrRefund-200'
              schema:
                $ref: '#/components/schemas/ModificationResult'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-400'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-401'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-500'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
  /capture:
    post:
      tags:
      - Modifications
      summary: Capture an authorisation
      description: 'Captures the authorisation hold on a payment, returning a unique
        reference for this request. Usually the full authorisation amount is captured,
        however it''s also possible to capture a smaller amount, which results in
        cancelling the remaining authorisation balance.


        Payment methods that are captured automatically after authorisation don''t
        need to be captured. However, submitting a capture request on these transactions
        will not result in double charges. If immediate or delayed auto-capture is
        enabled, calling the capture method is not necessary.


        For more information refer to [Capture](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/capture).


        > This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).
        If using a [newer integration](https://docs.adyen.com/online-payments), use
        the [`/payments/{paymentPspReference}/captures`](https://docs.adyen.com/api-explorer/#/CheckoutService/v67/post/payments/{paymentPspReference}/captures)
        endpoint on Checkout API instead.


        '
      operationId: post-capture
      x-sortIndex: 1
      x-methodName: capture
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              capture:
                $ref: '#/components/examples/post-capture-capture'
            schema:
              $ref: '#/components/schemas/CaptureRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                capture:
                  $ref: '#/components/examples/post-capture-capture-200'
              schema:
                $ref: '#/components/schemas/ModificationResult'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-400'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-401'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-500'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
  /donate:
    post:
      tags:
      - Modifications
      summary: Create a donation
      description: 'Schedules a new payment to be created (including a new authorisation
        request) for the specified donation using the payment details of the original
        payment.


        > This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).
        If using a [newer integration](https://docs.adyen.com/online-payments), use
        the [`/donations`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/donations)
        endpoint under Checkout API instead.'
      deprecated: true
      x-addedInVersion: '40'
      operationId: post-donate
      x-sortIndex: 6
      x-methodName: donate
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              donate:
                $ref: '#/components/examples/post-donate-donate'
            schema:
              $ref: '#/components/schemas/DonationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModificationResult'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-400'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-401'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-500'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
  /refund:
    post:
      tags:
      - Modifications
      summary: Refund a captured payment
      description: 'Refunds a payment that has previously been captured, returning
        a unique reference for this request. Refunding can be done on the full captured
        amount or a partial amount. Multiple (partial) refunds will be accepted as
        long as their sum doesn''t exceed the captured amount. Payments which have
        been authorised, but not captured, cannot be refunded, use the /cancel method
        instead.


        Some payment methods/gateways do not support partial/multiple refunds.

        A margin above the captured limit can be configured to cover shipping/handling
        costs.


        For more information, refer to [Refund](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/refund).


        > This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).
        If using a [newer integration](https://docs.adyen.com/online-payments), use
        the [`/payments/{paymentPspReference}/refunds`](https://docs.adyen.com/api-explorer/#/CheckoutService/payments/{paymentPspReference}/refunds)
        endpoint under Checkout API instead.'
      operationId: post-refund
      x-sortIndex: 3
      x-methodName: refund
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              refund:
                $ref: '#/components/examples/post-refund-refund'
            schema:
              $ref: '#/components/schemas/RefundRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                refund:
                  $ref: '#/components/examples/post-refund-refund-200'
              schema:
                $ref: '#/components/schemas/ModificationResult'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-400'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-401'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-500'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
  /retrieve3ds2Result:
    post:
      tags:
      - Payments
      summary: Get the 3DS2 authentication result
      description: Retrieves the `threeDS2Result` after doing a 3D Secure 2 authentication
        only.
      x-addedInVersion: '40'
      operationId: post-retrieve3ds2Result
      x-sortIndex: 4
      x-methodName: retrieve3ds2Result
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              retrieve3ds2Result:
                $ref: '#/components/examples/post-retrieve3ds2Result-retrieve3ds2Result'
            schema:
              $ref: '#/components/schemas/ThreeDS2ResultRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThreeDS2ResultResponse'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-400'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-401'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-500'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
  /technicalCancel:
    post:
      tags:
      - Modifications
      summary: Cancel an authorisation using your reference
      description: "This endpoint allows you to cancel a payment if you do not have\
        \ the PSP reference of the original payment request available.\n\nIn your\
        \ call, refer to the original payment by using the `reference` that you specified\
        \ in your payment request.\n\nFor more information, see [Technical cancel](https://docs.adyen.com/online-payments/classic-integrations/modify-payments/cancel#technical-cancel).\
        \ \n\n> This endpoint is part of our [classic API integration](https://docs.adyen.com/online-payments/classic-integrations/api-integration-ecommerce).\
        \ If using a [newer integration](https://docs.adyen.com/online-payments),\
        \ use the [`/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/cancels)\
        \ endpoint under Checkout API instead."
      x-addedInVersion: '30'
      operationId: post-technicalCancel
      x-sortIndex: 5
      x-methodName: technicalCancel
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              technicalCancel:
                $ref: '#/components/examples/post-technicalCancel-technicalCancel'
            schema:
              $ref: '#/components/schemas/TechnicalCancelRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                technicalCancel:
                  $ref: '#/components/examples/post-technicalCancel-technicalCancel-200'
              schema:
                $ref: '#/components/schemas/ModificationResult'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-400'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-401'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-500'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
  /voidPendingRefund:
    post:
      tags:
      - Modifications
      summary: Cancel an in-person refund
      description: 'This endpoint allows you to cancel an unreferenced refund request
        before it has been completed.


        In your call, you can refer to the original refund request either by using
        the `tenderReference`, or the `pspReference`. We recommend implementing based
        on the `tenderReference`, as this is generated for both offline and online
        transactions.


        For more information, refer to [Cancel an unreferenced refund](https://docs.adyen.com/point-of-sale/refund-payment/cancel-unreferenced).'
      x-addedInVersion: '25'
      operationId: post-voidPendingRefund
      x-sortIndex: 7
      x-methodName: voidPendingRefund
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              voidpendingrefund-pspreference:
                $ref: '#/components/examples/post-voidPendingRefund-voidpendingrefund-pspreference'
              voidpendingrefund-tenderreference:
                $ref: '#/components/examples/post-voidPendingRefund-voidpendingrefund-tenderreference'
            schema:
              $ref: '#/components/schemas/VoidPendingRefundRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                voidpendingrefund-pspreference:
                  $ref: '#/components/examples/post-voidPendingRefund-voidpendingrefund-pspreference-200'
                voidpendingrefund-tenderreference:
                  $ref: '#/components/examples/post-voidPendingRefund-voidpendingrefund-tenderreference-200'
              schema:
                $ref: '#/components/schemas/ModificationResult'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-400'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-401'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-500'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
components:
  schemas:
    AccountInfo:
      additionalProperties: false
      properties:
        accountAgeIndicator:
          description: 'Indicator for the length of time since this shopper account
            was created in the merchant''s environment.

            Allowed values:

            * notApplicable

            * thisTransaction

            * lessThan30Days

            * from30To60Days

            * moreThan60Days'
          enum:
          - notApplicable
          - thisTransaction
          - lessThan30Days
          - from30To60Days
          - moreThan60Days
          type: string
        accountChangeDate:
          description: Date when the shopper's account was last changed.
          format: date-time
          type: string
        accountChangeIndicator:
          description: 'Indicator for the length of time since the shopper''s account
            was last updated.

            Allowed values:

            * thisTransaction

            * lessThan30Days

            * from30To60Days

            * moreThan60Days'
          enum:
          - thisTransaction
          - lessThan30Days
          - from30To60Days
          - moreThan60Days
          type: string
        accountCreationDate:
          description: Date when the shopper's account was created.
          format: date-time
          type: string
        addCardAttemptsDay:
          description: Number of attempts the shopper tried to add a card to their
            account in the last day.
          format: int32
          type: integer
        deliveryAddressUsageDate:
          description: Date the selected delivery address was first used.
          format: date-time
          type: string
        deliveryAddressUsageIndicator:
          description: 'Indicator for the length of time since this delivery address
            was first used.

            Allowed values:

            * thisTransaction

            * lessThan30Days

            * from30To60Days

            * moreThan60Days'
          enum:
          - thisTransaction
          - lessThan30Days
          - from30To60Days
          - moreThan60Days
          type: string
        homePhone:
          description: Shopper's home phone number (including the country code).
          type: string
        mobilePhone:
          description: Shopper's mobile phone number (including the country code).
          type: string
        passwordChangeDate:
          description: Date when the shopper last changed their password.
          format: date-time
          type: string
        passwordChangeIndicator:
          description: 'Indicator when the shopper has changed their password.

            Allowed values:

            * notApplicable

            * thisTransaction

            * lessThan30Days

            * from30To60Days

            * moreThan60Days'
          enum:
          - notApplicable
          - thisTransaction
          - lessThan30Days
          - from30To60Days
          - moreThan60Days
          type: string
        pastTransactionsDay:
          description: Number of all transactions (successful and abandoned) from
            this shopper in the past 24 hours.
          format: int32
          type: integer
        pastTransactionsYear:
          description: Number of all transactions (successful and abandoned) from
            this shopper in the past year.
          format: int32
          type: integer
        paymentAccountAge:
          description: Date this payment method was added to the shopper's account.
          format: date-time
          type: string
        paymentAccountIndicator:
          description: 'Indicator for the length of time since this payment method
            was added to this shopper''s account.

            Allowed values:

            * notApplicable

            * thisTransaction

            * lessThan30Days

            * from30To60Days

            * moreThan60Days'
          enum:
          - notApplicable
          - thisTransaction
          - lessThan30Days
          - from30To60Days
          - moreThan60Days
          type: string
        purchasesLast6Months:
          description: Number of successful purchases in the last six months.
          format: int32
          type: integer
        suspiciousActivity:
          description: Whether suspicious activity was recorded on this account.
          type: boolean
        workPhone:
          description: Shopper's work phone number (including the country code).
          type: string
      type: object
    AdditionalData3DSecure:
      additionalProperties: false
      properties:
        allow3DS2:
          description: "Indicates if you are able to process 3D Secure 2 transactions\
            \ natively on your payment page. Send this parameter when you are using\
            \ `/payments` endpoint with any of our [native 3D Secure 2 solutions](https://docs.adyen.com/online-payments/3d-secure/native-3ds2).\n\
            \n > This parameter only indicates readiness to support native 3D Secure\
            \ 2 authentication. To specify if you _want_ to perform 3D Secure, use\
            \ [Dynamic 3D Secure](/risk-management/dynamic-3d-secure) or send the\
            \ `executeThreeD` parameter.\n\nPossible values:\n* **true** - Ready to\
            \ support native 3D Secure 2 authentication. Setting this to true does\
            \ not mean always applying 3D Secure 2. Adyen selects redirect or native\
            \ authentication based on your configuration to optimize authorization\
            \ rates and improve the shopper's experience.\n* **false** \u2013 Not\
            \ ready to support native 3D Secure 2 authentication. Adyen offers redirect\
            \ 3D Secure 2 authentication instead, based on your configuration.\n"
          type: string
        challengeWindowSize:
          description: "Dimensions of the 3DS2 challenge window to be displayed to\
            \ the cardholder.\n\nPossible values:\n\n* **01** - size of 250x400 \n\
            * **02** - size of 390x400\n* **03** - size of 500x600\n* **04** - size\
            \ of 600x400\n* **05** - Fullscreen"
          enum:
          - '01'
          - '02'
          - '03'
          - '04'
          - '05'
          type: string
        executeThreeD:
          description: "Indicates if you want to perform 3D Secure authentication\
            \ on a transaction.\n\n > Alternatively, you can use [Dynamic 3D Secure](/risk-management/dynamic-3d-secure)\
            \ to configure rules for applying 3D Secure.\n\nPossible values:\n* **true**\
            \ \u2013 Perform 3D Secure authentication.\n* **false** \u2013 Don't perform\
            \ 3D Secure authentication. Note that this setting results in refusals\
            \ if the issuer mandates 3D Secure because of the PSD2 directive  or other,\
            \ national regulations. \n"
          type: string
        mpiImplementationType:
          description: In case of Secure+, this field must be set to **CUPSecurePlus**.
          type: string
        scaExemption:
          description: "Indicates the [exemption type](https://docs.adyen.com/payments-fundamentals/psd2-sca-compliance-and-implementation-guide#specifypreferenceinyourapirequest)\
            \ that you want to request for the transaction.\n\n Possible values:\n\
            * **lowValue** \n* **secureCorporate** \n* **trustedBeneficiary** \n*\
            \ **transactionRiskAnalysis** "
          type: string
        threeDSVersion:
          description: "Indicates your preference for the 3D Secure version. \n> If\
            \ you use this parameter, you override the checks from Adyen's Authentication\
            \ Engine. We recommend to use this field only if you have an extensive\
            \ knowledge of 3D Secure.\n\nPossible values:\n* **2.1.0**: Apply 3D Secure\
            \ version 2.1.0. \n* **2.2.0**: Apply 3D Secure version 2.2.0. If the\
            \ issuer does not support version 2.2.0, we will fall back to 2.1.0.\n\
            \nThe following rules apply:\n* If you prefer 2.1.0 or 2.2.0 but we receive\
            \ a negative `transStatus` in the `ARes`, we will apply the fallback policy\
            \ configured in your account.\n* If you the BIN is not enrolled, you will\
            \ receive an error.\n\n"
          type: string
      type: object
    AdditionalDataAirline:
      additionalProperties: false
      properties:
        airline.agency_invoice_number:
          description: 'The reference number for the invoice, issued by the agency.

            * Encoding: ASCII

            * minLength: 1 character

            * maxLength: 6 characters'
          type: string
        airline.agency_plan_name:
          description: 'The two-letter agency plan identifier.

            * Encoding: ASCII

            * minLength: 2 characters

            * maxLength: 2 characters'
          type: string
        airline.airline_code:
          description: 'The [IATA](https://www.iata.org/services/pages/codes.aspx)
            3-digit accounting code (PAX) that identifies the carrier.

            * Format: IATA 3-digit accounting code (PAX)

            * Example: KLM = 074

            * minLength: 3 characters

            * maxLength: 3 characters

            * Must not be all spaces

            * Must not be all zeros.'
          type: string
        airline.airline_designator_code:
          description: 'The [IATA](https://www.iata.org/services/pages/codes.aspx)
            2-letter accounting code (PAX) that identifies the carrier.

            * Encoding: ASCII

            * Example: KLM = KL

            * minLength: 2 characters

            * maxLength: 2 characters

            * Must not be all spaces

            * Must not be all zeros.'
          type: string
        airline.boarding_fee:
          description: 'The amount charged for boarding the plane, in [minor units](https://docs.adyen.com/development-resources/currency-codes).

            * Encoding: Numeric

            * minLength: 1 character

            * maxLength: 18 characters'
          type: string
        airline.computerized_reservation_system:
          description: 'The [CRS](https://en.wikipedia.org/wiki/Computer_reservation_system)
            used to make the reservation and purchase the ticket.

            * Encoding: ASCII

            * minLength: 4 characters

            * maxLength: 4 characters'
          type: string
        airline.customer_reference_number:
          description: 'The alphanumeric customer reference number.

            * Encoding: ASCII

            * maxLength: 20 characters

            * If you send more than 20 characters, the customer reference number is
            truncated

            * Must not be all spaces'
          type: string
        airline.document_type:
          description: 'A code that identifies the type of item bought. The description
            of the code can appear on credit card statements.

            * Encoding: ASCII

            * Example: Passenger ticket = 01

            * minLength: 2 characters

            * maxLength: 2 characters'
          type: string
        airline.flight_date:
          description: 'The flight departure date. Local time `(HH:mm)` is optional.

            * Date format: `yyyy-MM-dd`

            * Date and time format: `yyyy-MM-dd HH:mm`

            * minLength: 10 characters

            * maxLength: 16 characters'
          type: string
        airline.issue_date:
          description: 'The date that the ticket was issued to the passenger.

            * minLength: 6 characters

            * maxLength: 6 characters

            * Date format: YYMMDD'
          type: string
        airline.leg.carrier_code:
          description: 'The [IATA](https://www.iata.org/services/pages/codes.aspx)
            2-letter accounting code (PAX) that identifies the carrier.

            This field is required if the airline data includes leg details.

            * Example: KLM = KL

            * minLength: 2 characters

            * maxLength: 2 characters

            * Must not be all spaces

            * Must not be all zeros.'
          type: string
        airline.leg.class_of_travel:
          description: "A one-letter travel class identifier.\n The following are\
            \ common:\n * F: first class\n* J: business class\n* Y: economy class\n\
            * W: premium economy\n\n* Encoding: ASCII\n* minLength: 1 character\n\
            * maxLength: 1 character\n* Must not be all spaces\n* Must not be all\
            \ zeros."
          type: string
        airline.leg.date_of_travel:
          description: "\t\nDate and time of travel in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)\
            \ format `yyyy-MM-dd HH:mm`.\n* Encoding: ASCII\n* minLength: 16 characters\n\
            * maxLength: 16 characters"
          type: string
        airline.leg.depart_airport:
          description: 'The [IATA](https://www.iata.org/services/pages/codes.aspx)
            three-letter airport code of the departure airport.

            This field is required if the airline data includes leg details.


            * Encoding: ASCII

            * Example: Amsterdam = AMS

            * minLength: 3 characters

            * maxLength: 3 characters

            * Must not be all spaces

            * Must not be all zeros.'
          type: string
        airline.leg.depart_tax:
          description: 'The amount of [departure tax](https://en.wikipedia.org/wiki/Departure_tax)
            charged, in [minor units](https://docs.adyen.com/development-resources/currency-codes).

            * Encoding: Numeric

            * minLength: 1

            * maxLength: 12

            * Must not be all zeros.'
          type: string
        airline.leg.destination_code:
          description: 'The [IATA](https://www.iata.org/services/pages/codes.aspx)
            3-letter airport code of the destination airport.

            This field is required if the airline data includes leg details.

            * Example: Amsterdam = AMS

            * Encoding: ASCII

            * minLength: 3 characters

            * maxLength: 3 characters

            * Must not be all spaces

            * Must not be all zeros.'
          type: string
        airline.leg.fare_base_code:
          description: 'The [fare basis code](https://en.wikipedia.org/wiki/Fare_basis_code),
            alphanumeric.

            * minLength: 1 character

            * maxLength: 6 characters

            * Must not be all spaces

            * Must not be all zeros.'
          type: string
        airline.leg.flight_number:
          description: 'The flight identifier.

            * minLength: 1 character

            * maxLength: 5 characters

            * Must not be all spaces

            * Must not be all zeros.'
          type: string
        airline.leg.stop_over_code:
          description: 'A one-letter code that indicates whether the passenger is
            entitled to make a stopover. Can be a space, O if the passenger is entitled
            to make a stopover, or X if they are not.

            * Encoding: ASCII

            * minLength: 1 character

            * maxLength: 1 character'
          type: string
        airline.passenger.date_of_birth:
          description: 'The passenger''s date of birth.


            Date format: `yyyy-MM-dd`

            * minLength: 10

            * maxLength: 10'
          type: string
        airline.passenger.first_name:
          description: 'The passenger''s first name.

            > This field is required if the airline data includes passenger details
            or leg details.

            * Encoding: ASCII'
          type: string
        airline.passenger.last_name:
          description: 'The passenger''s last name.

            > This field is required if the airline data includes passenger details
            or leg details.

            * Encoding: ASCII'
          type: string
        airline.passenger.phone_number:
          description: 'The passenger''s phone number, including country code. This
            is an alphanumeric field that can include the ''+'' and ''-'' signs.

            * Encoding: ASCII

            * minLength: 3 characters

            * maxLength: 30 characters'
          type: string
        airline.passenger.traveller_type:
          description: 'The IATA passenger type code (PTC).

            * Encoding: ASCII

            * minLength: 3 characters

            * maxLength: 6 characters'
          type: string
        airline.passenger_name:
          description: "The passenger's name, initials, and title.\n* Format: last\
            \ name + first name or initials + title\n* Example: *FLYER / MARY MS*\n\
            * minLength: 1 character\n* maxLength: 20 characters\n* If you send more\
            \ than 20 characters, the name is truncated\n* Must not be all spaces\
            \ \n* Must not be all zeros."
          type: string
        airline.ticket_issue_address:
          description: 'The address of the organization that issued the ticket.

            * minLength: 0 characters

            * maxLength: 16 characters'
          type: string
        airline.ticket_number:
          description: 'The ticket''s unique identifier.

            * minLength: 1 character

            * maxLength: 15 characters

            * Must not be all spaces

            * Must not be all zeros.'
          type: string
        airline.travel_agency_code:
          description: 'The unique identifier from IATA or ARC for the travel agency
            that issues the ticket.

            * Encoding: ASCII

            * minLength: 1 character

            * maxLength: 8 characters

            * Must not be all spaces

            * Must not be all zeros.'
          type: string
        airline.travel_agency_name:
          description: 'The name of the travel agency.


            * Encoding: ASCII

            * minLength: 1 character

            * maxLength: 25 characters

            * Must not be all spaces

            * Must not be all zeros.'
          type: string
      required:
      - airline.passenger_name
      type: object
    AdditionalDataCarRental:
      additionalProperties: false
      properties:
        carRental.checkOutDate:
          description: 'The pick-up date.

            * Date format: `yyyyMMdd`'
          type: string
        carRental.customerServiceTollFreeNumber:
          description: 'The customer service phone number of the car rental company.

            * Format: Alphanumeric

            * maxLength: 17

            * For US and CA numbers must be 10 characters in length

            * Must not start with a space

            * Must not contain any special characters such as + or -

            *Must not be all zeros.'
          type: string
        carRental.daysRented:
          description: 'Number of days for which the car is being rented.

            * Format: Numeric

            * maxLength: 4

            * Must not be all spaces'
          type: string
        carRental.fuelCharges:
          description: 'Any fuel charges associated with the rental, in [minor units](https://docs.adyen.com/development-resources/currency-codes).

            * Format: Numeric

            * maxLength: 12'
          type: string
        carRental.insuranceCharges:
          description: 'Any insurance charges associated with the rental, in [minor
            units](https://docs.adyen.com/development-resources/currency-codes).

            * Format: Numeric

            * maxLength: 12

            * Must not be all spaces

            *Must not be all zeros.'
          type: string
        carRental.locationCity:
          description: 'The city where the car is rented.

            * Format: Alphanumeric

            * maxLength: 18

            * Must not start with a space or be all spaces

            *Must not be all zeros.'
          type: string
        carRental.locationCountry:
          description: 'The country where the car is rented, in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)
            format.

            * Format: Alphanumeric

            * maxLength: 2'
          type: string
        carRental.locationStateProvince:
          description: 'The state or province where the car is rented.

            * Format: Alphanumeric

            * maxLength: 2

            * Must not start with a space or be all spaces

            *Must not be all zeros.'
          type: string
        carRental.noShowIndicator:
          description: 'Indicates if the customer didn''t pick up their rental car.

            * Y - Customer did not pick up their car

            * N - Not applicable'
          type: string
        carRental.oneWayDropOffCharges:
          description: 'The charge for not returning a car to the original rental
            location, in [minor units](https://docs.adyen.com/development-resources/currency-codes).

            * maxLength: 12'
          type: string
        carRental.rate:
          description: 'The daily rental rate, in [minor units](https://docs.adyen.com/development-resources/currency-codes).

            * Format: Alphanumeric

            * maxLength: 12'
          type: string
        carRental.rateIndicator:
          description: 'Specifies whether the given rate is applied daily or weekly.

            * D - Daily rate

            * W - Weekly rate'
          type: string
        carRental.rentalAgreementNumber:
          description: 'The rental agreement number for the car rental.

            * Format: Alphanumeric

            * maxLength: 9

            * Must not start with a space or be all spaces

            *Must not be all zeros.'
          type: string
        carRental.rentalClassId:
          description: 'The classification of the rental car.

            * Format: Alphanumeric

            * maxLength: 4

            * Must not start with a space or be all spaces

            *Must not be all zeros.'
          type: string
        carRental.renterName:
          description: 'The name of the person renting the car.

            * Format: Alphanumeric

            * maxLength: 26

            * If you send more than 26 characters, the name is truncated

            * Must not start with a space or be all spaces

            *Must not be all zeros.'
          type: string
        carRental.returnCity:
          description: 'The city where the car must be returned.

            * Format: Alphanumeric

            * maxLength: 18

            * Must not start with a space or be all spaces

            *Must not be all zeros.'
          type: string
        carRental.returnCountry:
          description: 'The country where the car must be returned, in [ISO 3166-1
            alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format.

            * Format: Alphanumeric

            * maxLength: 2'
          type: string
        carRental.returnDate:
          description: 'The last date to return the car by.

            * Date format: `yyyyMMdd`

            * maxLength: 8'
          type: string
        carRental.returnLocationId:
          description: 'The agency code, phone number, or address abbreviation

            * Format: Alphanumeric

            * maxLength: 10

            * Must not start with a space or be all spaces

            *Must not be all zeros.'
          type: string
        carRental.returnStateProvince:
          description: 'The state or province where the car must be returned.

            * Format: Alphanumeric

            * maxLength: 3

            * Must not start with a space or be all spaces

            *Must not be all zeros.'
          type: string
        carRental.taxExemptIndicator:
          description: 'Indicates if the goods or services were tax-exempt, or if
            tax was not paid on them.


            Values:

            * Y - Goods or services were tax exempt

            * N - Tax was not collected'
          type: string
        travelEntertainmentAuthData.duration:
          description: 'Number of days the car is rented for. This should be included
            in the auth message.

            * Format: Numeric

            * maxLength: 4'
          type: string
        travelEntertainmentAuthData.market:
          description: 'Indicates what market-specific dataset will be submitted or
            is being submitted. Value should be ''A'' for car rental. This should
            be included in the auth message.

            * Format: Alphanumeric

            * maxLength: 1'
          type: string
      type: object
    AdditionalDataCommon:
      additionalProperties: false
      properties:
        RequestedTestAcquirerResponseCode:
          description: 'Triggers test scenarios that allow to replicate certain acquirer
            response codes. See [Testing result codes and refusal reasons](https://docs.adyen.com/development-resources/testing/result-codes/)
            to learn about the possible values, and the `refusalReason` values you
            can trigger. '
          type: string
        RequestedTestErrorResponseCode:
          description: "Triggers test scenarios that allow to replicate certain communication\
            \ errors.\n\nAllowed values:\n* **NO_CONNECTION_AVAILABLE** \u2013 There\
            \ wasn't a connection available to service the outgoing communication.\n\
            This is a transient, retriable error since no messaging could be initiated\
            \ to an issuing system (or third-party acquiring system). Therefore, the\
            \ header Transient-Error: true is returned in the response. A subsequent\
            \ request using the same idempotency key will be processed as if it was\
            \ the first request.\n* **IOEXCEPTION_RECEIVED** \u2013 Something went\
            \ wrong during transmission of the message or receiving the response.\n\
            This is a classified as non-transient because the message could have been\
            \ received by the issuing party and been acted upon. No transient error\
            \ header is returned. If using idempotency, the (error) response is stored\
            \ as the final result for the idempotency key. Subsequent messages with\
            \ the same idempotency key not be processed beyond returning the stored\
            \ response."
          type: string
        allowPartialAuth:
          description: "Set to true to authorise a part of the requested amount in\
            \ case the cardholder does not have enough funds on their account. \n\
            If a payment was partially authorised, the response includes resultCode:\
            \ PartiallyAuthorised and the authorised amount in additionalData.authorisedAmountValue.\n\
            To enable this functionality, contact our Support Team."
          type: string
        authorisationType:
          description: "Flags a card payment request for either pre-authorisation\
            \ or final authorisation. For more information, refer to [Authorisation\
            \ types](https://docs.adyen.com/online-payments/adjust-authorisation#authorisation-types).\n\
            \nAllowed values:\n* **PreAuth** \u2013 flags the payment request to be\
            \ handled as a pre-authorisation.\n* **FinalAuth** \u2013 flags the payment\
            \ request to be handled as a final authorisation."
          type: string
        autoRescue:
          description: Set to **true** to enable [Auto Rescue](https://docs.adyen.com/online-payments/auto-rescue/)
            for a transaction. Use the `maxDaysToRescue` to specify a rescue window.
          type: string
        customRoutingFlag:
          description: 'Allows you to determine or override the acquirer account that
            should be used for the transaction.


            If you need to process a payment with an acquirer different from a default
            one, you can set up a corresponding configuration on the Adyen payments
            platform. Then you can pass a custom routing flag in a payment request''s
            additional data to target a specific acquirer.


            To enable this functionality, contact [Support](https://www.adyen.help/hc/en-us/requests/new).'
          type: string
        industryUsage:
          description: "In case of [asynchronous authorisation adjustment](https://docs.adyen.com/online-payments/adjust-authorisation#adjust-authorisation),\
            \ this field denotes why the additional payment is made.\n\nPossible values:\n\
            \n * **NoShow**: An incremental charge is carried out because of a no-show\
            \ for a guaranteed reservation.\n\n * **DelayedCharge**: An incremental\
            \ charge is carried out to process an additional payment after the original\
            \ services have been rendered and the respective payment has been processed."
          enum:
          - NoShow
          - DelayedCharge
          type: string
        manualCapture:
          description: Set to **true** to require [manual capture](https://docs.adyen.com/online-payments/capture)
            for the transaction.
          type: string
        maxDaysToRescue:
          description: "The rescue window for a transaction, in days, when `autoRescue`\
            \ is set to **true**. You can specify a value between 1 and 48.\n\n* For\
            \ [cards](https://docs.adyen.com/online-payments/auto-rescue/cards/),\
            \ the default is one calendar month.\n * For [SEPA](https://docs.adyen.com/online-payments/auto-rescue/sepa/),\
            \ the default is 42 days."
          type: string
        networkTxReference:
          description: 'Allows you to link the transaction to the original or previous
            one in a subscription/card-on-file chain. This field is required for token-based
            transactions where Adyen does not tokenize the card.


            Transaction identifier from card schemes, for example, Mastercard Trace
            ID or the Visa Transaction ID.


            Submit the original transaction ID of the contract in your payment request
            if you are not tokenizing card details with Adyen and are making a merchant-initiated
            transaction (MIT) for subsequent charges.


            Make sure you are sending `shopperInteraction` **ContAuth** and `recurringProcessingModel`
            **Subscription** or **UnscheduledCardOnFile** to ensure that the transaction
            is classified as MIT.'
          type: string
        overwriteBrand:
          description: Boolean indicator that can be optionally used for performing
            debit transactions on combo cards (for example, combo cards in Brazil).
            This is not mandatory but we recommend that you set this to true if you
            want to use the `selectedBrand` value to specify how to process the transaction.
          type: string
        subMerchantCity:
          description: 'This field is required if the transaction is performed by
            a registered payment facilitator. This field must contain the city of
            the actual merchant''s address.

            * Format: alpha-numeric.

            * Maximum length: 13 characters.'
          type: string
        subMerchantCountry:
          description: 'This field is required if the transaction is performed by
            a registered payment facilitator. This field must contain the three-letter
            country code of the actual merchant''s address.

            * Format: alpha-numeric.

            * Fixed length: 3 characters.'
          type: string
        subMerchantEmail:
          description: 'This field is required for transactions performed by registered
            payment facilitators. This field contains the email address of the sub-merchant.

            * Format: Alphanumeric

            * Maximum length: 40 characters'
          type: string
        subMerchantID:
          description: 'This field contains an identifier of the actual merchant when
            a transaction is submitted via a payment facilitator. The payment facilitator
            must send in this unique ID.


            A unique identifier per submerchant that is required if the transaction
            is performed by a registered payment facilitator.

            * Format: alpha-numeric.

            * Fixed length: 15 characters.'
          type: string
        subMerchantName:
          description: 'This field is required if the transaction is performed by
            a registered payment facilitator. This field must contain the name of
            the actual merchant.

            * Format: alpha-numeric.

            * Maximum length: 22 characters.'
          type: string
        subMerchantPhoneNumber:
          description: 'This field is required for transactions performed by registered
            payment facilitators. This field contains the phone number of the sub-merchant.*
            Format: Alphanumeric

            * Maximum length: 20 characters'
          type: string
        subMerchantPostalCode:
          description: 'This field is required if the transaction is performed by
            a registered payment facilitator. This field must contain the postal code
            of the actual merchant''s address.

            * Format: alpha-numeric.

            * Maximum length: 10 characters.'
          type: string
        subMerchantState:
          description: 'This field is required if the transaction is performed by
            a registered payment facilitator, and if applicable to the country. This
            field must contain the state code of the actual merchant''s address.

            * Format: alpha-numeric.

            * Maximum length: 3 characters.'
          type: string
        subMerchantStreet:
          description: 'This field is required if the transaction is performed by
            a registered payment facilitator. This field must contain the street of
            the actual merchant''s address.

            * Format: alpha-numeric.

            * Maximum length: 60 characters.'
          type: string
        subMerchantTaxId:
          description: 'This field is required if the transaction is performed by
            a registered payment facilitator. This field must contain the tax ID of
            the actual merchant.

            * Format: alpha-numeric.

            * Fixed length: 11 or 14 characters.'
          type: string
      type: object
    AdditionalDataLevel23:
      additionalProperties: false
      properties:
        enhancedSchemeData.customerReference:
          description: "The reference number to identify the customer and their order.\
            \ \n* Encoding: ASCII\n* Max length: 25 characters\n* Must not start with\
            \ a space or be all spaces.\n* Must not be all zeros."
          type: string
        enhancedSchemeData.destinationCountryCode:
          description: 'The three-letter [ISO 3166-1 alpha-3 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3)
            for the destination address.

            * Encoding: ASCII

            * Fixed length: 3 characters'
          type: string
        enhancedSchemeData.destinationPostalCode:
          description: 'The postal code of the destination address.

            * Encoding: ASCII

            * Max length: 10 characters

            * Must not start with a space.

            * For the US, it must be in five or nine digits format. For example, 10001
            or 10001-0000.

            * For Canada, it must be in 6 digits format. For example, M4B 1G5.'
          type: string
        enhancedSchemeData.destinationStateProvinceCode:
          description: 'The state or province code of the destination address.

            * Encoding: ASCII

            * Max length: 3 characters

            * Must not start with a space.'
          type: string
        enhancedSchemeData.dutyAmount:
          description: 'The duty tax amount, in [minor units](https://docs.adyen.com/development-resources/currency-codes).

            * For example, 2000 means USD 20.00.

            * Encoding: Numeric

            * Max length: 12 characters'
          type: string
        enhancedSchemeData.freightAmount:
          description: 'The shipping amount, in [minor units](https://docs.adyen.com/development-resources/currency-codes).

            * For example, 2000 means USD 20.00.

            * Encoding: Numeric

            * Max length: 12 characters'
          type: string
        enhancedSchemeData.itemDetailLine[itemNr].commodityCode:
          description: 'The code that identifies the item in a standardized commodity
            coding scheme. There are different commodity coding schemes:

            * [UNSPSC commodity codes](https://www.unspsc.org/)

            * [HS commodity codes](https://www.wcoomd.org/en/topics/nomenclature/overview.aspx)

            * [NAICS commodity codes](https://www.census.gov/naics/)

            * [NAPCS commodity codes](https://www.census.gov/naics/napcs/)



            * Encoding: ASCII

            * Max length: 12 characters

            * Must not start with a space or be all spaces.

            * Must not be all zeros.'
          type: string
        enhancedSchemeData.itemDetailLine[itemNr].description:
          description: 'A description of the item.

            * Encoding: ASCII

            * Max length: 26 characters

            * Must not be a single character.

            * Must not be blank.

            * Must not start with a space or be all spaces.

            * Must not be all zeros.'
          type: string
        enhancedSchemeData.itemDetailLine[itemNr].discountAmount:
          description: 'The discount amount, in [minor units](https://docs.adyen.com/development-resources/currency-codes).

            * For example, 2000 means USD 20.00.

            * Encoding: Numeric

            * Max length: 12 characters'
          type: string
        enhancedSchemeData.itemDetailLine[itemNr].productCode:
          description: "The product code. Must be a unique product code associated\
            \ with the item or service. This can be your unique code for the item,\
            \ or the manufacturer's product code. \n* Encoding: ASCII.\n* Max length:\
            \ 12 characters\n* Must not start with a space or be all spaces.\n* Must\
            \ not be all zeros."
          type: string
        enhancedSchemeData.itemDetailLine[itemNr].quantity:
          description: 'The number of items. Must be an integer greater than zero.

            * Encoding: Numeric

            * Max length: 12 characters

            * Must not start with a space or be all spaces.'
          type: string
        enhancedSchemeData.itemDetailLine[itemNr].totalAmount:
          description: 'The total amount for the line item, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
            See [Amount requirements for level 2/3 ESD](https://docs.adyen.com//payment-methods/cards/enhanced-scheme-data/l2-l3#amount-requirements)
            to learn more about how to calculate the line item total.

            * For example, 2000 means USD 20.00.

            * Max length: 12 characters

            * Must not start with a space or be all spaces.

            * Must not be all zeros.'
          type: string
        enhancedSchemeData.itemDetailLine[itemNr].unitOfMeasure:
          description: 'The unit of measurement for an item.

            * Encoding: ASCII

            * Max length: 3 characters

            * Must not start with a space or be all spaces.

            * Must not be all zeros.'
          type: string
        enhancedSchemeData.itemDetailLine[itemNr].unitPrice:
          description: 'The unit price in [minor units](https://docs.adyen.com/development-resources/currency-codes).

            * For example, 2000 means USD 20.00.

            * Encoding: Numeric

            * Max length: 12 characters

            * Must not be all zeros.'
          type: string
        enhancedSchemeData.orderDate:
          description: 'The order date.

            * Format: `ddMMyy`

            * Encoding: ASCII

            * Max length: 6 characters'
          type: string
        enhancedSchemeData.shipFromPostalCode:
          description: 'The postal code of the address where the item is shipped from.

            * Encoding: ASCII

            * Max length: 10 characters

            * Must not start with a space or be all spaces.

            * Must not be all zeros.For the US, it must be in five or nine digits
            format. For example, 10001 or 10001-0000.

            * For Canada, it must be in 6 digits format. For example, M4B 1G5.'
          type: string
        enhancedSchemeData.totalTaxAmount:
          description: "The amount of state or provincial [tax included in the total\
            \ transaction amount](https://docs.adyen.com/payment-methods/cards/enhanced-scheme-data/l2-l3#requirements-to-send-level-2-3-esd),\
            \ in [minor units](https://docs.adyen.com/development-resources/currency-codes).\
            \ \n* For example, 2000 means USD 20.00.\n* Encoding: Numeric \n* Max\
            \ length: 12 characters\n* Must not be all zeros."
          type: string
      type: object
    AdditionalDataLodging:
      additionalProperties: false
      properties:
        lodging.SpecialProgramCode:
          description: 'A code that corresponds to the category of lodging charges
            for the payment. Possible values:

            * 1: Lodging

            * 2: No show reservation

            * 3: Advanced deposit'
          type: string
        lodging.checkInDate:
          description: 'The arrival date.

            * Date format: **yyyyMmDd**. For example, for 2023 April 22, **20230422**.'
          type: string
        lodging.checkOutDate:
          description: 'The departure date.

            * Date format: **yyyyMmDd**. For example, for 2023 April 22, **20230422**.'
          type: string
        lodging.customerServiceTollFreeNumber:
          description: 'The toll-free phone number for the lodging.

            * Format: numeric

            * Max length: 17 characters.

            * For US and CA numbers must be 10 characters in length

            * Must not start with a space

            * Must not contain any special characters such as + or -

            * Must not be all zeros.'
          type: string
        lodging.fireSafetyActIndicator:
          description: 'Identifies that the facility complies with the Hotel and Motel
            Fire Safety Act of 1990. Must be ''Y'' or ''N''.

            * Format: alphabetic

            * Max length: 1 character'
          type: string
        lodging.folioCashAdvances:
          description: 'The folio cash advances, in [minor units](https://docs.adyen.com/development-resources/currency-codes).

            * Format: numeric

            * Max length: 12 characters'
          type: string
        lodging.folioNumber:
          description: "The card acceptor\u2019s internal invoice or billing ID reference\
            \ number.\n* Max length: 25 characters\n* Must not start with a space\n\
            * Must not contain any special characters\n* Must not be all zeros."
          type: string
        lodging.foodBeverageCharges:
          description: 'Any charges for food and beverages associated with the booking,
            in [minor units](https://docs.adyen.com/development-resources/currency-codes).

            * Format: numeric

            * Max length: 12 characters'
          type: string
        lodging.noShowIndicator:
          description: "Indicates if the customer didn't check in for their booking.\n\
            \ Possible values: \n* **Y**: the customer didn't check in \n* **N**:\
            \ the customer checked in"
          type: string
        lodging.prepaidExpenses:
          description: 'The prepaid expenses for the booking.

            * Format: numeric

            * Max length: 12 characters'
          type: string
        lodging.propertyPhoneNumber:
          description: 'The lodging property location''s phone number.

            * Format: numeric

            * Min length: 10 characters

            * Max length: 17 characters

            * For US and CA numbers must be 10 characters in length

            * Must not start with a space

            * Must not contain any special characters such as + or -

            * Must not be all zeros.'
          type: string
        lodging.room1.numberOfNights:
          description: 'The total number of nights the room is booked for.

            * Format: numeric

            * Must be a number between 0 and 99

            * Max length: 4 characters'
          type: string
        lodging.room1.rate:
          description: 'The rate for the room, in [minor units](https://docs.adyen.com/development-resources/currency-codes).

            * Format: numeric

            * Max length: 12 characters

            * Must not be a negative number'
          type: string
        lodging.totalRoomTax:
          description: 'The total room tax amount, in [minor units](https://docs.adyen.com/development-resources/currency-codes).

            * Format: numeric

            * Max length: 12 characters

            * Must not be a negative number'
          type: string
        lodging.totalTax:
          description: 'The total tax amount, in [minor units](https://docs.adyen.com/development-resources/currency-codes).

            * Format: numeric

            * Max length: 12 characters

            * Must not be a negative number'
          type: string
        travelEntertainmentAuthData.duration:
          description: 'The number of nights. This should be included in the auth
            message.

            * Format: numeric

            * Max length: 4 characters'
          type: string
        travelEntertainmentAuthData.market:
          description: 'Indicates what market-specific dataset will be submitted.
            Must be ''H'' for Hotel. This should be included in the auth message.


            * Format: alphanumeric

            * Max length: 1 character'
          type: string
      type: object
    AdditionalDataModifications:
      additionalProperties: false
      properties:
        installmentPaymentData.selectedInstallmentOption:
          description: This is the installment option selected by the shopper. It
            is required only if specified by the user.
          type: string
      type: object
    AdditionalDataOpenInvoice:
      additionalProperties: false
      properties:
        openinvoicedata.merchantData:
          description: 'Holds different merchant data points like product, purchase,
            customer, and so on. It takes data in a Base64 encoded string.


            The `merchantData` parameter needs to be added to the `openinvoicedata`
            signature at the end.


            Since the field is optional, if it''s not included it does not impact
            computing the merchant signature.


            Applies only to Klarna.


            You can contact Klarna for the format and structure of the string.'
          type: string
        openinvoicedata.numberOfLines:
          description: 'The number of invoice lines included in `openinvoicedata`.


            There needs to be at least one line, so `numberOfLines` needs to be at
            least 1.'
          type: string
        openinvoicedata.recipientFirstName:
          description: First name of the recipient. If the delivery address and the
            billing address are different, specify the `recipientFirstName` and `recipientLastName`
            to share the delivery address with Klarna. Otherwise, only the billing
            address is shared with Klarna.
          type: string
        openinvoicedata.recipientLastName:
          description: Last name of the recipient. If the delivery address and the
            billing address are different, specify the `recipientFirstName` and `recipientLastName`
            to share the delivery address with Klarna. Otherwise, only the billing
            address is shared with Klarna.
          type: string
        openinvoicedataLine[itemNr].currencyCode:
          description: The three-character ISO currency code.
          type: string
        openinvoicedataLine[itemNr].description:
          description: A text description of the product the invoice line refers to.
          type: string
        openinvoicedataLine[itemNr].itemAmount:
          description: 'The price for one item in the invoice line, represented in
            minor units.


            The due amount for the item, VAT excluded.'
          type: string
        openinvoicedataLine[itemNr].itemId:
          description: A unique id for this item. Required for RatePay if the description
            of each item is not unique.
          type: string
        openinvoicedataLine[itemNr].itemVatAmount:
          description: The VAT due for one item in the invoice line, represented in
            minor units.
          type: string
        openinvoicedataLine[itemNr].itemVatPercentage:
          description: 'The VAT percentage for one item in the invoice line, represented
            in minor units.


            For example, 19% VAT is specified as 1900.'
          type: string
        openinvoicedataLine[itemNr].numberOfItems:
          description: The number of units purchased of a specific product.
          type: string
        openinvoicedataLine[itemNr].returnShippingCompany:
          description: Name of the shipping company handling the the return shipment.
          type: string
        openinvoicedataLine[itemNr].returnTrackingNumber:
          description: The tracking number for the return of the shipment.
          type: string
        openinvoicedataLine[itemNr].returnTrackingUri:
          description: URI where the customer can track the return of their shipment.
          type: string
        openinvoicedataLine[itemNr].shippingCompany:
          description: Name of the shipping company handling the delivery.
          type: string
        openinvoicedataLine[itemNr].shippingMethod:
          description: Shipping method.
          type: string
        openinvoicedataLine[itemNr].trackingNumber:
          description: The tracking number for the shipment.
          type: string
        openinvoicedataLine[itemNr].trackingUri:
          description: URI where the customer can track their shipment.
          type: string
      type: object
    AdditionalDataOpi:
      additionalProperties: false
      properties:
        opi.includeTransToken:
          description: 'Optional boolean indicator. Set to **true** if you want an
            ecommerce transaction to return an `opi.transToken` as additional data
            in the response.


            You can store this Oracle Payment Interface token in your Oracle Opera
            database. For more information and required settings, see [Oracle Opera](https://docs.adyen.com/plugins/oracle-opera#opi-token-ecommerce).'
          type: string
      type: object
    AdditionalDataRatepay:
      additionalProperties: false
      properties:
        ratepay.installmentAmount:
          description: Amount the customer has to pay each month.
          type: string
        ratepay.interestRate:
          description: Interest rate of this installment.
          type: string
        ratepay.lastInstallmentAmount:
          description: Amount of the last installment.
          type: string
        ratepay.paymentFirstday:
          description: Calendar day of the first payment.
          type: string
        ratepaydata.deliveryDate:
          description: Date the merchant delivered the goods to the customer.
          type: string
        ratepaydata.dueDate:
          description: Date by which the customer must settle the payment.
          type: string
        ratepaydata.invoiceDate:
          description: Invoice date, defined by the merchant. If not included, the
            invoice date is set to the delivery date.
          type: string
        ratepaydata.invoiceId:
          description: Identification name or number for the invoice, defined by the
            merchant.
          type: string
      type: object
    AdditionalDataRetry:
      additionalProperties: false
      properties:
        retry.chainAttemptNumber:
          description: 'The number of times the transaction (not order) has been retried
            between different payment service providers. For instance, the `chainAttemptNumber`
            set to 2 means that this transaction has been recently tried on another
            provider before being sent to Adyen.


            > If you submit `retry.chainAttemptNumber`, `retry.orderAttemptNumber`,
            and `retry.skipRetry` values, we also recommend you provide the `merchantOrderReference`
            to facilitate linking payment attempts together.'
          type: string
        retry.orderAttemptNumber:
          description: 'The index of the attempt to bill a particular order, which
            is identified by the `merchantOrderReference` field. For example, if a
            recurring transaction fails and is retried one day later, then the order
            number for these attempts would be 1 and 2, respectively.


            > If you submit `retry.chainAttemptNumber`, `retry.orderAttemptNumber`,
            and `retry.skipRetry` values, we also recommend you provide the `merchantOrderReference`
            to facilitate linking payment attempts together.'
          type: string
        retry.skipRetry:
          description: 'The Boolean value indicating whether Adyen should skip or
            retry this transaction, if possible.


            > If you submit `retry.chainAttemptNumber`, `retry.orderAttemptNumber`,
            and `retry.skipRetry` values, we also recommend you provide the `merchantOrderReference`
            to facilitate linking payment attempts together.'
          type: string
      type: object
    AdditionalDataRisk:
      additionalProperties: false
      properties:
        riskdata.[customFieldName]:
          description: The data for your custom risk field. For more information,
            refer to [Create custom risk fields](https://docs.adyen.com/risk-management/configure-custom-risk-rules#step-1-create-custom-risk-fields).
          type: string
        riskdata.basket.item[itemNr].amountPerItem:
          description: The price of item in the basket, represented in [minor units](https://docs.adyen.com/development-resources/currency-codes).
          type: string
        riskdata.basket.item[itemNr].brand:
          description: Brand of the item.
          type: string
        riskdata.basket.item[itemNr].category:
          description: Category of the item.
          type: string
        riskdata.basket.item[itemNr].color:
          description: Color of the item.
          type: string
        riskdata.basket.item[itemNr].currency:
          description: The three-character [ISO currency code](https://en.wikipedia.org/wiki/ISO_4217).
          type: string
        riskdata.basket.item[itemNr].itemID:
          description: ID of the item.
          type: string
        riskdata.basket.item[itemNr].manufacturer:
          description: Manufacturer of the item.
          type: string
        riskdata.basket.item[itemNr].productTitle:
          description: A text description of the product the invoice line refers to.
          type: string
        riskdata.basket.item[itemNr].quantity:
          description: Quantity of the item purchased.
          type: string
        riskdata.basket.item[itemNr].receiverEmail:
          description: Email associated with the given product in the basket (usually
            in electronic gift cards).
          type: string
        riskdata.basket.item[itemNr].size:
          description: Size of the item.
          type: string
        riskdata.basket.item[itemNr].sku:
          description: '[Stock keeping unit](https://en.wikipedia.org/wiki/Stock_keeping_unit).'
          type: string
        riskdata.basket.item[itemNr].upc:
          description: '[Universal Product Code](https://en.wikipedia.org/wiki/Universal_Product_Code).'
          type: string
        riskdata.promotions.promotion[itemNr].promotionCode:
          description: Code of the promotion.
          type: string
        riskdata.promotions.promotion[itemNr].promotionDiscountAmount:
          description: The discount amount of the promotion, represented in [minor
            units](https://docs.adyen.com/development-resources/currency-codes).
          type: string
        riskdata.promotions.promotion[itemNr].promotionDiscountCurrency:
          description: The three-character [ISO currency code](https://en.wikipedia.org/wiki/ISO_4217).
          type: string
        riskdata.promotions.promotion[itemNr].promotionDiscountPercentage:
          description: 'Promotion''s percentage discount. It is represented in percentage
            value and there is no need to include the ''%'' sign.


            e.g. for a promotion discount of 30%, the value of the field should be
            30.'
          type: string
        riskdata.promotions.promotion[itemNr].promotionName:
          description: Name of the promotion.
          type: string
        riskdata.riskProfileReference:
          description: Reference number of the risk profile that you want to apply
            to the payment. If not provided or left blank, the merchant-level account's
            default risk profile will be applied to the payment. For more information,
            see [dynamically assign a risk profile to a payment](https://docs.adyen.com/risk-management/create-and-use-risk-profiles#dynamically-assign-a-risk-profile-to-a-payment).
          type: string
        riskdata.skipRisk:
          description: If this parameter is provided with the value **true**, risk
            checks for the payment request are skipped and the transaction will not
            get a risk score.
          type: string
      type: object
    AdditionalDataRiskStandalone:
      additionalProperties: false
      properties:
        PayPal.CountryCode:
          description: Shopper's country of residence in the form of ISO standard
            3166 2-character country codes.
          type: string
        PayPal.EmailId:
          description: Shopper's email.
          type: string
        PayPal.FirstName:
          description: Shopper's first name.
          type: string
        PayPal.LastName:
          description: Shopper's last name.
          type: string
        PayPal.PayerId:
          description: 'Unique PayPal Customer Account identification number. Character
            length and limitations: 13 single-byte alphanumeric characters.'
          type: string
        PayPal.Phone:
          description: Shopper's phone number.
          type: string
        PayPal.ProtectionEligibility:
          description: "Allowed values:\n* **Eligible** \u2014 Merchant is protected\
            \ by PayPal's Seller Protection Policy for Unauthorized Payments and Item\
            \ Not Received.\n\n* **PartiallyEligible** \u2014 Merchant is protected\
            \ by PayPal's Seller Protection Policy for Item Not Received.\n\n* **Ineligible**\
            \ \u2014 Merchant is not protected under the Seller Protection Policy."
          type: string
        PayPal.TransactionId:
          description: Unique transaction ID of the payment.
          type: string
        avsResultRaw:
          description: 'Raw AVS result received from the acquirer, where available.
            Example: D'
          type: string
        bin:
          description: The Bank Identification Number of a credit card, which is the
            first six digits of a card number. Required for [tokenized card request](https://docs.adyen.com/online-payments/tokenization).
          type: string
        cvcResultRaw:
          description: 'Raw CVC result received from the acquirer, where available.
            Example: 1'
          type: string
        riskToken:
          description: Unique identifier or token for the shopper's card details.
          type: string
        threeDAuthenticated:
          description: 'A Boolean value indicating whether 3DS authentication was
            completed on this payment. Example: true'
          type: string
        threeDOffered:
          description: 'A Boolean value indicating whether 3DS was offered for this
            payment. Example: true'
          type: string
        tokenDataType:
          description: 'Required for PayPal payments only. The only supported value
            is: **paypal**.'
          type: string
      type: object
    AdditionalDataSubMerchant:
      additionalProperties: false
      properties:
        subMerchant.numberOfSubSellers:
          description: Required for transactions performed by registered payment facilitators.
            Indicates the number of sub-merchants contained in the request. For example,
            **3**.
          type: string
        subMerchant.subSeller[subSellerNr].city:
          description: 'Required for transactions performed by registered payment
            facilitators. The city of the sub-merchant''s address.

            * Format: Alphanumeric

            * Maximum length: 13 characters'
          type: string
        subMerchant.subSeller[subSellerNr].country:
          description: "Required for transactions performed by registered payment\
            \ facilitators. The three-letter country code of the sub-merchant's address.\
            \ For example, **BRA** for Brazil. \n* Format: [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3)\n\
            * Fixed length: 3 characters"
          type: string
        subMerchant.subSeller[subSellerNr].email:
          description: 'Required for transactions performed by registered payment
            facilitators. The email address of the sub-merchant.

            * Format: Alphanumeric

            * Maximum length: 40 characters'
          type: string
        subMerchant.subSeller[subSellerNr].id:
          description: "Required for transactions performed by registered payment\
            \ facilitators. A unique identifier that you create for the sub-merchant,\
            \ used by schemes to identify the sub-merchant. \n* Format: Alphanumeric\n\
            * Maximum length: 15 characters"
          type: string
        subMerchant.subSeller[subSellerNr].mcc:
          description: "Required for transactions performed by registered payment\
            \ facilitators. The sub-merchant's 4-digit Merchant Category Code (MCC).\
            \ \n* Format: Numeric\n* Fixed length: 4 digits"
          type: string
        subMerchant.subSeller[subSellerNr].name:
          description: 'Required for transactions performed by registered payment
            facilitators. The name of the sub-merchant. Based on scheme specifications,
            this value will overwrite the shopper statement  that will appear in the
            card statement.

            * Format: Alphanumeric

            * Maximum length: 22 characters'
          type: string
        subMerchant.subSeller[subSellerNr].phoneNumber:
          description: 'Required for transactions performed by registered payment
            facilitators. The phone number of the sub-merchant.* Format: Alphanumeric

            * Maximum length: 20 characters'
          type: string
        subMerchant.subSeller[subSellerNr].postalCode:
          description: 'Required for transactions performed by registered payment
            facilitators. The postal code of the sub-merchant''s address, without
            dashes.

            * Format: Numeric

            * Fixed length: 8 digits'
          type: string
        subMerchant.subSeller[subSellerNr].state:
          description: 'Required for transactions performed by registered payment
            facilitators. The state code of the sub-merchant''s address, if applicable
            to the country.

            * Format: Alphanumeric

            * Maximum length: 2 characters'
          type: string
        subMerchant.subSeller[subSellerNr].street:
          description: 'Required for transactions performed by registered payment
            facilitators. The street name and house number of the sub-merchant''s
            address.

            * Format: Alphanumeric

            * Maximum length: 60 characters'
          type: string
        subMerchant.subSeller[subSellerNr].taxId:
          description: 'Required for transactions performed by registered payment
            facilitators. The tax ID of the sub-merchant.

            * Format: Numeric

            * Fixed length: 11 digits for the CPF or 14 digits for the CNPJ'
          type: string
      type: object
    AdditionalDataTemporaryServices:
      additionalProperties: false
      properties:
        enhancedSchemeData.customerReference:
          description: 'The customer code, if supplied by a customer.

            * Encoding: ASCII

            * maxLength: 25'
          type: string
        enhancedSchemeData.employeeName:
          description: "The name or ID of the person working in a temporary capacity.\n\
            * maxLength: 40.  \n* Must not be all spaces. \n*Must not be all zeros."
          type: string
        enhancedSchemeData.jobDescription:
          description: "The job description of the person working in a temporary capacity.\n\
            * maxLength: 40 \n* Must not be all spaces. \n*Must not be all zeros."
          type: string
        enhancedSchemeData.regularHoursRate:
          description: 'The amount paid for regular hours worked, [minor units](https://docs.adyen.com/development-resources/currency-codes).

            * maxLength: 7

            * Must not be empty

            * Can be all zeros'
          type: string
        enhancedSchemeData.regularHoursWorked:
          description: 'The hours worked.

            * maxLength: 7

            * Must not be empty

            * Can be all zeros'
          type: string
        enhancedSchemeData.requestName:
          description: 'The name of the person requesting temporary services.

            * maxLength: 40

            * Must not be all zeros

            * Must not be all spaces'
          type: string
        enhancedSchemeData.tempStartDate:
          description: 'The billing period start date.

            * Format: ddMMyy

            * maxLength: 6'
          type: string
        enhancedSchemeData.tempWeekEnding:
          description: 'The billing period end date.

            * Format: ddMMyy

            * maxLength: 6'
          type: string
        enhancedSchemeData.totalTaxAmount:
          description: 'The total tax amount, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
            For example, 2000 means USD 20.00

            * maxLength: 12'
          type: string
      type: object
    AdditionalDataWallets:
      additionalProperties: false
      properties:
        androidpay.token:
          description: The Android Pay token retrieved from the SDK.
          type: string
        masterpass.transactionId:
          description: The Mastercard Masterpass Transaction ID retrieved from the
            SDK.
          type: string
        payment.token:
          description: The Apple Pay token retrieved from the SDK.
          type: string
        paywithgoogle.token:
          description: The Google Pay token retrieved from the SDK.
          type: string
        samsungpay.token:
          description: The Samsung Pay token retrieved from the SDK.
          type: string
        visacheckout.callId:
          description: The Visa Checkout Call ID retrieved from the SDK.
          type: string
      type: object
    Address:
      additionalProperties: false
      properties:
        city:
          description: 'The name of the city. Maximum length: 3000 characters.'
          maxLength: 3000
          type: string
        country:
          description: 'The two-character ISO-3166-1 alpha-2 country code. For example,
            **US**.

            > If you don''t know the country or are not collecting the country from
            the shopper, provide `country` as `ZZ`.'
          type: string
        houseNumberOrName:
          description: 'The number or name of the house. Maximum length: 3000 characters.'
          maxLength: 3000
          type: string
        postalCode:
          description: A maximum of five digits for an address in the US, or a maximum
            of ten characters for an address in all other countries.
          type: string
        stateOrProvince:
          description: 'The two-character ISO 3166-2 state or province code. For example,
            **CA** in the US or **ON** in Canada.

            > Required for the US and Canada.'
          type: string
        street:
          description: 'The name of the street. Maximum length: 3000 characters.

            > The house number should not be included in this field; it should be
            separately provided via `houseNumberOrName`.'
          maxLength: 3000
          type: string
      required:
      - street
      - houseNumberOrName
      - city
      - postalCode
      - country
      type: object
    AdjustAuthorisationRequest:
      additionalProperties: false
      properties:
        additionalData:
          additionalProperties:
            type: string
          x-anyOf:
          - $ref: '#/components/schemas/AdditionalData3DSecure'
          - $ref: '#/components/schemas/AdditionalDataAirline'
          - $ref: '#/components/schemas/AdditionalDataCarRental'
          - $ref: '#/components/schemas/AdditionalDataCommon'
          - $ref: '#/components/schemas/AdditionalDataLevel23'
          - $ref: '#/components/schemas/AdditionalDataLodging'
          - $ref: '#/components/schemas/AdditionalDataModifications'
          - $ref: '#/components/schemas/AdditionalDataOpenInvoice'
          - $ref: '#/components/schemas/AdditionalDataOpi'
          - $ref: '#/components/schemas/AdditionalDataRatepay'
          - $ref: '#/components/schemas/AdditionalDataRetry'
          - $ref: '#/components/schemas/AdditionalDataRisk'
          - $ref: '#/components/schemas/AdditionalDataRiskStandalone'
          - $ref: '#/components/schemas/AdditionalDataSubMerchant'
          - $ref: '#/components/schemas/AdditionalDataTemporaryServices'
          - $ref: '#/components/schemas/AdditionalDataWallets'
          description: 'This field contains additional data, which may be required
            for a particular modification request.


            The additionalData object consists of entries, each of which includes
            the key and value.'
          type: object
        merchantAccount:
          description: The merchant account that is used to process the payment.
          type: string
        modificationAmount:
          description: The amount that needs to be adjusted. The `currency` must match
            the currency used in authorisation, the `value` must be smaller than or
            equal to the authorised amount.
          $ref: '#/components/schemas/Amount'
        originalMerchantReference:
          x-addedInVersion: '30'
          description: The original merchant reference to cancel.
          type: string
        originalReference:
          description: 'The original pspReference of the payment to modify.

            This reference is returned in:

            * authorisation response

            * authorisation notification


            '
          type: string
        reference:
          description: 'Your reference for the payment modification. This reference
            is visible in Customer Area and in reports.

            Maximum length: 80 characters.'
          type: string
        splits:
          x-addedInVersion: '37'
          description: An array of objects specifying how the amount should be split
            between accounts when using Adyen for Platforms. For more information,
            see how to split payments for [platforms](https://docs.adyen.com/platforms/automatic-split-configuration/).
          items:
            $ref: '#/components/schemas/Split'
          type: array
        tenderReference:
          x-addedInVersion: '25'
          description: The transaction reference provided by the PED. For point-of-sale
            integrations only.
          type: string
        uniqueTerminalId:
          x-addedInVersion: '25'
          description: Unique terminal ID for the PED that originally processed the
            request. For point-of-sale integrations only.
          type: string
      required:
      - merchantAccount
      - modificationAmount
      - originalReference
      type: object
    Amount:
      additionalProperties: false
      properties:
        currency:
          description: The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).
          maxLength: 3
          minLength: 3
          type: string
        value:
          description: The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).
          format: int64
          type: integer
      required:
      - value
      - currency
      type: object
    ApplicationInfo:
      additionalProperties: false
      properties:
        adyenLibrary:
          description: Adyen-developed software, such as libraries and plugins, used
            to interact with the Adyen API. For example, Magento plugin, Java API
            library, etc.
          $ref: '#/components/schemas/CommonField'
        adyenPaymentSource:
          description: Adyen-developed software to get payment details. For example,
            Checkout SDK, Secured Fields SDK, etc.
          $ref: '#/components/schemas/CommonField'
        externalPlatform:
          description: Third-party developed platform used to initiate payment requests.
            For example, Magento, Zuora, etc.
          $ref: '#/components/schemas/ExternalPlatform'
        merchantApplication:
          description: Merchant developed software, such as cashier application, used
            to interact with the Adyen API.
          $ref: '#/components/schemas/CommonField'
        merchantDevice:
          description: Merchant device information.
          $ref: '#/components/schemas/MerchantDevice'
        shopperInteractionDevice:
          description: Shopper interaction device, such as terminal, mobile device
            or web browser, to initiate payment requests.
          $ref: '#/components/schemas/ShopperInteractionDevice'
      type: object
    BankAccount:
      additionalProperties: false
      properties:
        bankAccountNumber:
          description: The bank account number (without separators).
          type: string
        bankCity:
          x-addedInVersion: '18'
          description: The bank city.
          type: string
        bankLocationId:
          description: The location id of the bank. The field value is `nil` in most
            cases.
          type: string
        bankName:
          description: The name of the bank.
          type: string
        bic:
          description: The [Business Identifier Code](https://en.wikipedia.org/wiki/ISO_9362)
            (BIC) is the SWIFT address assigned to a bank. The field value is `nil`
            in most cases.
          type: string
        countryCode:
          description: 'Country code where the bank is located.


            A valid value is an ISO two-character country code (e.g. ''NL'').'
          type: string
        iban:
          description: The [International Bank Account Number](https://en.wikipedia.org/wiki/International_Bank_Account_Number)
            (IBAN).
          type: string
        ownerName:
          description: "The name of the bank account holder.\nIf you submit a name\
            \ with non-Latin characters, we automatically replace some of them with\
            \ corresponding Latin characters to meet the FATF recommendations. For\
            \ example:\n* \u03C712 is converted to ch12.\n* \xFCA is converted to\
            \ euA.\n* Peter M\xF8ller is converted to Peter Mller, because banks don't\
            \ accept '\xF8'.\nAfter replacement, the ownerName must have at least\
            \ three alphanumeric characters (A-Z, a-z, 0-9), and at least one of them\
            \ must be a valid Latin character (A-Z, a-z). For example:\n* John17 -\
            \ allowed.\n* J17 - allowed.\n* 171 - not allowed.\n* John-7 - allowed.\n\
            > If provided details don't match the required format, the response returns\
            \ the error message: 203 'Invalid bank account holder name'."
          type: string
        taxId:
          x-addedInVersion: '18'
          description: The bank account holder's tax ID.
          type: string
      type: object
    BrowserInfo:
      additionalProperties: false
      properties:
        acceptHeader:
          description: The accept header value of the shopper's browser.
          type: string
        colorDepth:
          x-addedInVersion: '40'
          description: 'The color depth of the shopper''s browser in bits per pixel.
            This should be obtained by using the browser''s `screen.colorDepth` property.
            Accepted values: 1, 4, 8, 15, 16, 24, 30, 32 or 48 bit color depth.'
          format: int32
          type: integer
        javaEnabled:
          x-addedInVersion: '40'
          description: Boolean value indicating if the shopper's browser is able to
            execute Java.
          type: boolean
        javaScriptEnabled:
          x-addedInVersion: '40'
          default: true
          description: Boolean value indicating if the shopper's browser is able to
            execute JavaScript. A default 'true' value is assumed if the field is
            not present.
          type: boolean
        language:
          x-addedInVersion: '40'
          description: The `navigator.language` value of the shopper's browser (as
            defined in IETF BCP 47).
          type: string
        screenHeight:
          x-addedInVersion: '40'
          description: The total height of the shopper's device screen in pixels.
          format: int32
          type: integer
        screenWidth:
          x-addedInVersion: '40'
          description: The total width of the shopper's device screen in pixels.
          format: int32
          type: integer
        timeZoneOffset:
          x-addedInVersion: '40'
          description: Time difference between UTC time and the shopper's browser
            local time, in minutes.
          format: int32
          type: integer
        userAgent:
          description: The user agent value of the shopper's browser.
          type: string
      required:
      - userAgent
      - acceptHeader
      - javaEnabled
      - colorDepth
      - screenHeight
      - screenWidth
      - timeZoneOffset
      - language
      type: object
    CancelOrRefundRequest:
      additionalProperties: false
      properties:
        additionalData:
          additionalProperties:
            type: string
          x-anyOf:
          - $ref: '#/components/schemas/AdditionalData3DSecure'
          - $ref: '#/components/schemas/AdditionalDataAirline'
          - $ref: '#/components/schemas/AdditionalDataCarRental'
          - $ref: '#/components/schemas/AdditionalDataCommon'
          - $ref: '#/components/schemas/AdditionalDataLevel23'
          - $ref: '#/components/schemas/AdditionalDataLodging'
          - $ref: '#/components/schemas/AdditionalDataModifications'
          - $ref: '#/components/schemas/AdditionalDataOpenInvoice'
          - $ref: '#/components/schemas/AdditionalDataOpi'
          - $ref: '#/components/schemas/AdditionalDataRatepay'
          - $ref: '#/components/schemas/AdditionalDataRetry'
          - $ref: '#/components/schemas/AdditionalDataRisk'
          - $ref: '#/components/schemas/AdditionalDataRiskStandalone'
          - $ref: '#/components/schemas/AdditionalDataSubMerchant'
          - $ref: '#/components/schemas/AdditionalDataTemporaryServices'
          - $ref: '#/components/schemas/AdditionalDataWallets'
          description: 'This field contains additional data, which may be required
            for a particular modification request.


            The additionalData object consists of entries, each of which includes
            the key and value.'
          type: object
        merchantAccount:
          description: The merchant account that is used to process the payment.
          type: string
        originalMerchantReference:
          x-addedInVersion: '30'
          description: The original merchant reference to cancel.
          type: string
        originalReference:
          description: 'The original pspReference of the payment to modify.

            This reference is returned in:

            * authorisation response

            * authorisation notification


            '
          type: string
        reference:
          description: 'Your reference for the payment modification. This reference
            is visible in Customer Area and in reports.

            Maximum length: 80 characters.'
          type: string
        tenderReference:
          x-addedInVersion: '25'
          description: The transaction reference provided by the PED. For point-of-sale
            integrations only.
          type: string
        uniqueTerminalId:
          x-addedInVersion: '25'
          description: Unique terminal ID for the PED that originally processed the
            request. For point-of-sale integrations only.
          type: string
      required:
      - merchantAccount
      - originalReference
      type: object
    CancelRequest:
      additionalProperties: false
      properties:
        additionalData:
          additionalProperties:
            type: string
          x-anyOf:
          - $ref: '#/components/schemas/AdditionalData3DSecure'
          - $ref: '#/components/schemas/AdditionalDataAirline'
          - $ref: '#/components/schemas/AdditionalDataCarRental'
          - $ref: '#/components/schemas/AdditionalDataCommon'
          - $ref: '#/components/schemas/AdditionalDataLevel23'
          - $ref: '#/components/schemas/AdditionalDataLodging'
          - $ref: '#/components/schemas/AdditionalDataModifications'
          - $ref: '#/components/schemas/AdditionalDataOpenInvoice'
          - $ref: '#/components/schemas/AdditionalDataOpi'
          - $ref: '#/components/schemas/AdditionalDataRatepay'
          - $ref: '#/components/schemas/AdditionalDataRetry'
          - $ref: '#/components/schemas/AdditionalDataRisk'
          - $ref: '#/components/schemas/AdditionalDataRiskStandalone'
          - $ref: '#/components/schemas/AdditionalDataSubMerchant'
          - $ref: '#/components/schemas/AdditionalDataTemporaryServices'
          - $ref: '#/components/schemas/AdditionalDataWallets'
          description: 'This field contains additional data, which may be required
            for a particular modification request.


            The additionalData object consists of entries, each of which includes
            the key and value.'
          type: object
        merchantAccount:
          description: The merchant account that is used to process the payment.
          type: string
        originalMerchantReference:
          x-addedInVersion: '30'
          description: The original merchant reference to cancel.
          type: string
        originalReference:
          description: 'The original pspReference of the payment to modify.

            This reference is returned in:

            * authorisation response

            * authorisation notification


            '
          type: string
        reference:
          description: 'Your reference for the payment modification. This reference
            is visible in Customer Area and in reports.

            Maximum length: 80 characters.'
          type: string
        splits:
          x-addedInVersion: '37'
          description: An array of objects specifying how the amount should be split
            between accounts when using Adyen for Platforms. For more information,
            see how to split payments for [platforms](https://docs.adyen.com/platforms/automatic-split-configuration/).
          items:
            $ref: '#/components/schemas/Split'
          type: array
        tenderReference:
          x-addedInVersion: '25'
          description: The transaction reference provided by the PED. For point-of-sale
            integrations only.
          type: string
        uniqueTerminalId:
          x-addedInVersion: '25'
          description: Unique terminal ID for the PED that originally processed the
            request. For point-of-sale integrations only.
          type: string
      required:
      - merchantAccount
      - originalReference
      type: object
    CaptureRequest:
      additionalProperties: false
      properties:
        additionalData:
          additionalProperties:
            type: string
          x-anyOf:
          - $ref: '#/components/schemas/AdditionalData3DSecure'
          - $ref: '#/components/schemas/AdditionalDataAirline'
          - $ref: '#/components/schemas/AdditionalDataCarRental'
          - $ref: '#/components/schemas/AdditionalDataCommon'
          - $ref: '#/components/schemas/AdditionalDataLevel23'
          - $ref: '#/components/schemas/AdditionalDataLodging'
          - $ref: '#/components/schemas/AdditionalDataModifications'
          - $ref: '#/components/schemas/AdditionalDataOpenInvoice'
          - $ref: '#/components/schemas/AdditionalDataOpi'
          - $ref: '#/components/schemas/AdditionalDataRatepay'
          - $ref: '#/components/schemas/AdditionalDataRetry'
          - $ref: '#/components/schemas/AdditionalDataRisk'
          - $ref: '#/components/schemas/AdditionalDataRiskStandalone'
          - $ref: '#/components/schemas/AdditionalDataSubMerchant'
          - $ref: '#/components/schemas/AdditionalDataTemporaryServices'
          - $ref: '#/components/schemas/AdditionalDataWallets'
          description: 'This field contains additional data, which may be required
            for a particular modification request.


            The additionalData object consists of entries, each of which includes
            the key and value.'
          type: object
        merchantAccount:
          description: The merchant account that is used to process the payment.
          type: string
        modificationAmount:
          description: The amount that needs to be captured. The `currency` must match
            the currency used in authorisation, the `value` must be smaller than or
            equal to the authorised amount.
          $ref: '#/components/schemas/Amount'
        originalMerchantReference:
          x-addedInVersion: '30'
          description: The original merchant reference to cancel.
          type: string
        originalReference:
          description: 'The original pspReference of the payment to modify.

            This reference is returned in:

            * authorisation response

            * authorisation notification


            '
          type: string
        reference:
          description: 'Your reference for the payment modification. This reference
            is visible in Customer Area and in reports.

            Maximum length: 80 characters.'
          type: string
        splits:
          x-addedInVersion: '37'
          description: An array of objects specifying how the amount should be split
            between accounts when using Adyen for Platforms. For more information,
            see how to split payments for [platforms](https://docs.adyen.com/platforms/automatic-split-configuration/).
          items:
            $ref: '#/components/schemas/Split'
          type: array
        tenderReference:
          x-addedInVersion: '25'
          description: The transaction reference provided by the PED. For point-of-sale
            integrations only.
          type: string
        uniqueTerminalId:
          x-addedInVersion: '25'
          description: Unique terminal ID for the PED that originally processed the
            request. For point-of-sale integrations only.
          type: string
      required:
      - merchantAccount
      - modificationAmount
      - originalReference
      type: object
    Card:
      additionalProperties: false
      properties:
        cvc:
          description: "The [card verification code](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-security-code-cvc-cvv-cid)\
            \ (1-20 characters). Depending on the card brand, it is known also as:\n\
            * CVV2/CVC2 \u2013 length: 3 digits\n* CID \u2013 length: 4 digits\n>\
            \ If you are using [Client-Side Encryption](https://docs.adyen.com/classic-integration/cse-integration-ecommerce),\
            \ the CVC code is present in the encrypted data. You must never post the\
            \ card details to the server.\n> This field must be always present in\
            \ a [one-click payment request](https://docs.adyen.com/classic-integration/recurring-payments).\n\
            > When this value is returned in a response, it is always empty because\
            \ it is not stored."
          maxLength: 20
          minLength: 1
          type: string
        expiryMonth:
          description: 'The card expiry month.

            Format: 2 digits, zero-padded for single digits. For example:

            * 03 = March

            * 11 = November'
          maxLength: 2
          minLength: 1
          type: string
        expiryYear:
          description: 'The card expiry year.

            Format: 4 digits. For example: 2020'
          maxLength: 4
          minLength: 4
          type: string
        holderName:
          description: The name of the cardholder, as printed on the card.
          maxLength: 50
          minLength: 1
          type: string
        issueNumber:
          description: The issue number of the card (for some UK debit cards only).
          maxLength: 2
          minLength: 1
          type: string
        number:
          description: 'The card number (4-19 characters). Do not use any separators.

            When this value is returned in a response, only the last 4 digits of the
            card number are returned.'
          maxLength: 19
          minLength: 4
          type: string
        startMonth:
          description: The month component of the start date (for some UK debit cards
            only).
          maxLength: 2
          minLength: 1
          type: string
        startYear:
          description: The year component of the start date (for some UK debit cards
            only).
          maxLength: 4
          minLength: 4
          type: string
      type: object
    CommonField:
      additionalProperties: false
      properties:
        name:
          description: Name of the field. For example, Name of External Platform.
          type: string
        version:
          description: Version of the field. For example, Version of External Platform.
          type: string
      type: object
    DeviceRenderOptions:
      additionalProperties: false
      properties:
        sdkInterface:
          default: both
          description: 'Supported SDK interface types.

            Allowed values:

            * native

            * html

            * both'
          enum:
          - native
          - html
          - both
          type: string
        sdkUiType:
          description: 'UI types supported for displaying specific challenges.

            Allowed values:

            * text

            * singleSelect

            * outOfBand

            * otherHtml

            * multiSelect'
          items:
            enum:
            - multiSelect
            - otherHtml
            - outOfBand
            - singleSelect
            - text
            type: string
          type: array
      type: object
    DonationRequest:
      additionalProperties: false
      properties:
        donationAccount:
          description: The Adyen account name of the charity.
          type: string
        merchantAccount:
          description: The merchant account that is used to process the payment.
          type: string
        modificationAmount:
          description: The amount to be donated.The `currency` must match the currency
            used in authorisation, the `value` must be smaller than or equal to the
            authorised amount.
          $ref: '#/components/schemas/Amount'
        originalReference:
          description: 'The original pspReference of the payment to modify.

            This reference is returned in:

            * authorisation response

            * authorisation notification


            '
          type: string
        reference:
          description: 'Your reference for the payment modification. This reference
            is visible in Customer Area and in reports.

            Maximum length: 80 characters.'
          type: string
      required:
      - merchantAccount
      - donationAccount
      - modificationAmount
      type: object
    ExternalPlatform:
      additionalProperties: false
      properties:
        integrator:
          description: External platform integrator.
          type: string
        name:
          description: Name of the field. For example, Name of External Platform.
          type: string
        version:
          description: Version of the field. For example, Version of External Platform.
          type: string
      type: object
    ForexQuote:
      additionalProperties: false
      properties:
        account:
          description: The account name.
          type: string
        accountType:
          description: The account type.
          type: string
        baseAmount:
          description: The base amount.
          $ref: '#/components/schemas/Amount'
        basePoints:
          description: The base points.
          format: int32
          type: integer
        buy:
          description: The buy rate.
          $ref: '#/components/schemas/Amount'
        interbank:
          description: The interbank amount.
          $ref: '#/components/schemas/Amount'
        reference:
          description: The reference assigned to the forex quote request.
          type: string
        sell:
          description: The sell rate.
          $ref: '#/components/schemas/Amount'
        signature:
          description: The signature to validate the integrity.
          type: string
        source:
          description: The source of the forex quote.
          type: string
        type:
          description: The type of forex.
          type: string
        validTill:
          description: The date until which the forex quote is valid.
          format: date-time
          type: string
      required:
      - validTill
      - basePoints
      type: object
    FraudCheckResult:
      additionalProperties: false
      properties:
        accountScore:
          description: The fraud score generated by the risk check.
          format: int32
          type: integer
        checkId:
          description: The ID of the risk check.
          format: int32
          type: integer
        name:
          description: The name of the risk check.
          type: string
      required:
      - checkId
      - name
      - accountScore
      type: object
    FraudCheckResultWrapper:
      properties:
        FraudCheckResult:
          $ref: '#/components/schemas/FraudCheckResult'
    FraudResult:
      additionalProperties: false
      properties:
        accountScore:
          description: The total fraud score generated by the risk checks.
          format: int32
          type: integer
        results:
          description: The result of the individual risk checks.
          items:
            $ref: '#/components/schemas/FraudCheckResultWrapper'
          type: array
      required:
      - accountScore
      type: object
    Installments:
      additionalProperties: false
      properties:
        value:
          description: 'Defines the number of installments.

            Usually, the maximum allowed number of installments is capped. For example,
            it may not be possible to split a payment in more than 24 installments.
            The acquirer sets this upper limit, so its value may vary.

            This value can be zero for Installments processed in Mexico.'
          format: int32
          type: integer
      required:
      - value
      type: object
    Mandate:
      additionalProperties: false
      properties:
        amount:
          description: The billing amount (in minor units) of the recurring transactions.
          type: string
        amountRule:
          description: "The limitation rule of the billing amount.\n\nPossible values:\n\
            \ * **max**: The transaction amount can not exceed the `amount`.\n\n *\
            \ **exact**: The transaction amount should be the same as the `amount`.\n\
            \n"
          enum:
          - max
          - exact
          type: string
        billingAttemptsRule:
          description: "The rule to specify the period, within which the recurring\
            \ debit can happen, relative to the mandate recurring date.\n\nPossible\
            \ values:\n\n * **on**: On a specific date.\n\n * **before**:  Before\
            \ and on a specific date.\n\n * **after**: On and after a specific date.\n\
            \n"
          enum:
          - 'on'
          - before
          - after
          type: string
        billingDay:
          description: 'The number of the day, on which the recurring debit can happen.
            Should be within the same calendar month as the mandate recurring date.


            Possible values: 1-31 based on the `frequency`.'
          type: string
        count:
          description: The number of transactions that can be performed within the
            given frequency.
          type: string
        endsAt:
          description: End date of the billing plan, in YYYY-MM-DD format.
          type: string
        frequency:
          description: 'The frequency with which a shopper should be charged.


            Possible values: **daily**, **weekly**, **biWeekly**, **monthly**, **quarterly**,
            **halfYearly**, **yearly**.'
          enum:
          - adhoc
          - daily
          - weekly
          - biWeekly
          - monthly
          - quarterly
          - halfYearly
          - yearly
          type: string
        remarks:
          description: The message shown by UPI to the shopper on the approval screen.
          type: string
        startsAt:
          description: Start date of the billing plan, in YYYY-MM-DD format. By default,
            the transaction date.
          type: string
      required:
      - frequency
      - amount
      - endsAt
      type: object
    MerchantDevice:
      additionalProperties: false
      properties:
        os:
          description: Operating system running on the merchant device.
          type: string
        osVersion:
          description: Version of the operating system on the merchant device.
          type: string
        reference:
          description: Merchant device reference.
          type: string
      type: object
    MerchantRiskIndicator:
      additionalProperties: false
      properties:
        addressMatch:
          description: Whether the chosen delivery address is identical to the billing
            address.
          type: boolean
        deliveryAddressIndicator:
          description: 'Indicator regarding the delivery address.

            Allowed values:

            * `shipToBillingAddress`

            * `shipToVerifiedAddress`

            * `shipToNewAddress`

            * `shipToStore`

            * `digitalGoods`

            * `goodsNotShipped`

            * `other`'
          enum:
          - shipToBillingAddress
          - shipToVerifiedAddress
          - shipToNewAddress
          - shipToStore
          - digitalGoods
          - goodsNotShipped
          - other
          type: string
        deliveryEmail:
          description: The delivery email address (for digital goods).
          type: string
        deliveryTimeframe:
          description: 'The estimated delivery time for the shopper to receive the
            goods.

            Allowed values:

            * `electronicDelivery`

            * `sameDayShipping`

            * `overnightShipping`

            * `twoOrMoreDaysShipping`'
          enum:
          - electronicDelivery
          - sameDayShipping
          - overnightShipping
          - twoOrMoreDaysShipping
          type: string
        giftCardAmount:
          description: For prepaid or gift card purchase, the purchase amount total
            of prepaid or gift card(s).
          $ref: '#/components/schemas/Amount'
        giftCardCount:
          description: For prepaid or gift card purchase, total count of individual
            prepaid or gift cards/codes purchased.
          format: int32
          type: integer
        preOrderDate:
          description: For pre-order purchases, the expected date this product will
            be available to the shopper.
          format: date-time
          type: string
        preOrderPurchase:
          description: Indicator for whether this transaction is for pre-ordering
            a product.
          type: boolean
        reorderItems:
          description: Indicator for whether the shopper has already purchased the
            same items in the past.
          type: boolean
      type: object
    ModificationResult:
      additionalProperties: false
      properties:
        additionalData:
          additionalProperties:
            type: string
          description: This field contains additional data, which may be returned
            in a particular modification response.
          type: object
        pspReference:
          description: Adyen's 16-character string reference associated with the transaction/request.
            This value is globally unique; quote it when communicating with us about
            this request.
          type: string
        response:
          description: Indicates if the modification request has been received for
            processing.
          enum:
          - '[capture-received]'
          - '[cancel-received]'
          - '[refund-received]'
          - '[cancelOrRefund-received]'
          - '[adjustAuthorisation-received]'
          - '[donation-received]'
          - '[technical-cancel-received]'
          - '[voidPendingRefund-received]'
          - Authorised
          type: string
      required:
      - response
      - pspReference
      type: object
    Name:
      additionalProperties: false
      properties:
        firstName:
          description: The first name.
          maxLength: 80
          type: string
        lastName:
          description: The last name.
          maxLength: 80
          type: string
      required:
      - firstName
      - lastName
      type: object
    PaymentRequest:
      additionalProperties: false
      properties:
        accountInfo:
          x-addedInVersion: '40'
          description: 'Shopper account information for 3D Secure 2.

            > For 3D Secure 2 transactions, we recommend that you include this object
            to increase the chances of achieving a frictionless flow.'
          $ref: '#/components/schemas/AccountInfo'
        additionalAmount:
          description: 'If you want a [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification)
            request to use a non-zero value, assign this value to `additionalAmount`
            (while the amount must be still set to 0 to trigger BIN or card verification).

            Required to be in the same currency as the `amount`. '
          $ref: '#/components/schemas/Amount'
        additionalData:
          additionalProperties:
            type: string
          x-anyOf:
          - $ref: '#/components/schemas/AdditionalData3DSecure'
          - $ref: '#/components/schemas/AdditionalDataAirline'
          - $ref: '#/components/schemas/AdditionalDataCarRental'
          - $ref: '#/components/schemas/AdditionalDataCommon'
          - $ref: '#/components/schemas/AdditionalDataLevel23'
          - $ref: '#/components/schemas/AdditionalDataLodging'
          - $ref: '#/components/schemas/AdditionalDataOpenInvoice'
          - $ref: '#/components/schemas/AdditionalDataOpi'
          - $ref: '#/components/schemas/AdditionalDataRatepay'
          - $ref: '#/components/schemas/AdditionalDataRetry'
          - $ref: '#/components/schemas/AdditionalDataRisk'
          - $ref: '#/components/schemas/AdditionalDataRiskStandalone'
          - $ref: '#/components/schemas/AdditionalDataSubMerchant'
          - $ref: '#/components/schemas/AdditionalDataTemporaryServices'
          - $ref: '#/components/schemas/AdditionalDataWallets'
          description: 'This field contains additional data, which may be required
            for a particular payment request.


            The `additionalData` object consists of entries, each of which includes
            the key and value.'
          type: object
        amount:
          description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)).
            For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification)
            requests, set amount to 0 (zero).
          $ref: '#/components/schemas/Amount'
        applicationInfo:
          x-addedInVersion: '40'
          description: Information about your application. For more details, see [Building
            Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).
          $ref: '#/components/schemas/ApplicationInfo'
        bankAccount:
          description: 'The details of the bank account, from which the payment should
            be made.

            > Either `bankAccount` or `card` field must be provided in a payment request.'
          $ref: '#/components/schemas/BankAccount'
        billingAddress:
          x-addedInVersion: '4'
          description: 'The address where to send the invoice.

            > The `billingAddress` object is required in the following scenarios.
            Include all of the fields within this object.

            >* For 3D Secure 2 transactions in all browser-based and mobile implementations.

            >* For cross-border payouts to and from Canada.'
          $ref: '#/components/schemas/Address'
        browserInfo:
          description: 'The shopper''s browser information.

            > For 3D Secure, the full object is required for web integrations. For
            mobile app integrations, include the `userAgent` and `acceptHeader` fields
            to indicate  that your integration can support a redirect in case a payment
            is routed to 3D Secure 2 redirect.'
          $ref: '#/components/schemas/BrowserInfo'
        captureDelayHours:
          x-addedInVersion: '2'
          description: The delay between the authorisation and scheduled auto-capture,
            specified in hours.
          format: int32
          type: integer
        card:
          description: 'A container for card data.

            > Either `bankAccount` or `card` field must be provided in a payment request.'
          $ref: '#/components/schemas/Card'
        dateOfBirth:
          x-addedInVersion: '7'
          description: 'The shopper''s date of birth.


            Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD'
          format: date
          type: string
        dccQuote:
          description: The forex quote as returned in the response of the forex service.
          $ref: '#/components/schemas/ForexQuote'
        deliveryAddress:
          description: The address where the purchased goods should be delivered.
          $ref: '#/components/schemas/Address'
        deliveryDate:
          x-addedInVersion: '8'
          description: 'The date and time the purchased goods should be delivered.


            Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD


            Example: 2017-07-17T13:42:40.428+01:00'
          format: date-time
          type: string
        deviceFingerprint:
          x-addedInVersion: '2'
          description: A string containing the shopper's device fingerprint. For more
            information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).
          maxLength: 5000
          type: string
        entityType:
          x-addedInVersion: '24'
          description: The type of the entity the payment is processed for.
          enum:
          - NaturalPerson
          - CompanyName
          type: string
        fraudOffset:
          description: An integer value that is added to the normal fraud score. The
            value can be either positive or negative.
          format: int32
          type: integer
        installments:
          x-addedInVersion: '4'
          description: Contains installment settings. For more information, refer
            to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).
          $ref: '#/components/schemas/Installments'
        mandate:
          description: The mandate details to initiate recurring transaction.
          $ref: '#/components/schemas/Mandate'
        mcc:
          x-addedInVersion: '12'
          description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code)
            (MCC) is a four-digit number, which relates to a particular market segment.
            This code reflects the predominant activity that is conducted by the merchant.
          type: string
        merchantAccount:
          description: The merchant account identifier, with which you want to process
            the transaction.
          type: string
        merchantOrderReference:
          x-addedInVersion: '9'
          description: 'This reference allows linking multiple transactions to each
            other for reporting purposes (i.e. order auth-rate). The reference should
            be unique per billing cycle.

            The same merchant order reference should never be reused after the first
            authorised attempt. If used, this field should be supplied for all incoming
            authorisations.

            > We strongly recommend you send the `merchantOrderReference` value to
            benefit from linking payment requests when authorisation retries take
            place. In addition, we recommend you provide `retry.orderAttemptNumber`,
            `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.'
          type: string
        merchantRiskIndicator:
          x-addedInVersion: '40'
          description: 'Additional risk fields for 3D Secure 2.

            > For 3D Secure 2 transactions, we recommend that you include this object
            to increase the chances of achieving a frictionless flow.'
          $ref: '#/components/schemas/MerchantRiskIndicator'
        metadata:
          x-addedInVersion: '17'
          additionalProperties:
            type: string
          description: 'Metadata consists of entries, each of which includes a key
            and a value.

            Limits:

            * Maximum 20 key-value pairs per request. When exceeding, the "177" error
            occurs: "Metadata size exceeds limit".

            * Maximum 20 characters per key.

            * Maximum 80 characters per value. '
          type: object
        mpiData:
          description: Authentication data produced by an MPI (Mastercard SecureCode,
            Visa Secure, or Cartes Bancaires).
          $ref: '#/components/schemas/ThreeDSecureData'
        nationality:
          x-addedInVersion: '24'
          description: The two-character country code of the shopper's nationality.
          maxLength: 2
          type: string
        orderReference:
          description: When you are doing multiple partial (gift card) payments, this
            is the `pspReference` of the first payment. We use this to link the multiple
            payments to each other. As your own reference for linking multiple payments,
            use the `merchantOrderReference`instead.
          type: string
        recurring:
          description: The recurring settings for the payment. Use this property when
            you want to enable [recurring payments](https://docs.adyen.com/classic-integration/recurring-payments).
          $ref: '#/components/schemas/Recurring'
        recurringProcessingModel:
          x-addedInVersion: '30'
          description: "Defines a recurring payment type. Required when creating a\
            \ token to store payment details or using stored payment details.\nAllowed\
            \ values:\n* `Subscription` \u2013 A transaction for a fixed or variable\
            \ amount, which follows a fixed schedule.\n* `CardOnFile` \u2013 With\
            \ a card-on-file (CoF) transaction, card details are stored to enable\
            \ one-click or omnichannel journeys, or simply to streamline the checkout\
            \ process. Any subscription not following a fixed schedule is also considered\
            \ a card-on-file transaction.\n* `UnscheduledCardOnFile` \u2013 An unscheduled\
            \ card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed\
            \ schedule and/or have variable amounts. For example, automatic top-ups\
            \ when a cardholder's balance drops below a certain amount.\n"
          enum:
          - CardOnFile
          - Subscription
          - UnscheduledCardOnFile
          type: string
        reference:
          description: 'The reference to uniquely identify a payment. This reference
            is used in all communication with you about the payment status. We recommend
            using a unique value per payment; however, it is not a requirement.

            If you need to provide multiple references for a transaction, separate
            them with hyphens ("-").

            Maximum length: 80 characters.'
          type: string
        selectedBrand:
          description: 'Some payment methods require defining a value for this field
            to specify how to process the transaction.


            For the Bancontact payment method, it can be set to:

            * `maestro` (default), to be processed like a Maestro card, or

            * `bcmc`, to be processed like a Bancontact card.'
          type: string
        selectedRecurringDetailReference:
          description: The `recurringDetailReference` you want to use for this payment.
            The value `LATEST` can be used to select the most recently stored recurring
            detail.
          type: string
        sessionId:
          description: A session ID used to identify a payment session.
          type: string
        shopperEmail:
          description: 'The shopper''s email address. We recommend that you provide
            this data, as it is used in velocity fraud checks.

            > For 3D Secure 2 transactions, schemes require `shopperEmail` for all
            browser-based and mobile implementations.'
          type: string
        shopperIP:
          description: 'The shopper''s IP address. In general, we recommend that you
            provide this data, as it is used in a number of risk checks (for instance,
            number of payment attempts or location-based checks).

            > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based
            implementations.

            This field is also mandatory for some merchants depending on your business
            model. For more information, [contact Support](https://www.adyen.help/hc/en-us/requests/new).'
          type: string
        shopperInteraction:
          description: 'Specifies the sales channel, through which the shopper gives
            their card details, and whether the shopper is a returning customer.

            For the web service API, Adyen assumes Ecommerce shopper interaction by
            default.


            This field has the following possible values:

            * `Ecommerce` - Online transactions where the cardholder is present (online).
            For better authorisation rates, we recommend sending the card security
            code (CSC) along with the request.

            * `ContAuth` - Card on file and/or subscription transactions, where the
            cardholder is known to the merchant (returning customer). If the shopper
            is present (online), you can supply also the CSC to improve authorisation
            (one-click payment).

            * `Moto` - Mail-order and telephone-order transactions where the shopper
            is in contact with the merchant via email or telephone.

            * `POS` - Point-of-sale transactions where the shopper is physically present
            to make a payment using a secure payment terminal.'
          enum:
          - Ecommerce
          - ContAuth
          - Moto
          - POS
          type: string
        shopperLocale:
          x-addedInVersion: '7'
          description: The combination of a language code and a country code to specify
            the language to be used in the payment.
          type: string
        shopperName:
          x-addedInVersion: '7'
          description: The shopper's full name.
          $ref: '#/components/schemas/Name'
        shopperReference:
          description: "Required for recurring payments. \nYour reference to uniquely\
            \ identify this shopper, for example user ID or account ID. The value\
            \ is case-sensitive and must be at least three characters.\n> Your reference\
            \ must not include personally identifiable information (PII) such as name\
            \ or email address."
          type: string
        shopperStatement:
          description: "The text to be shown on the shopper's bank statement.\n We\
            \ recommend sending a maximum of 22 characters, otherwise banks might\
            \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\
            \ spaces, and special characters **. , ' _ - ? + * /**."
          type: string
        socialSecurityNumber:
          x-addedInVersion: '4'
          description: The shopper's social security number.
          type: string
        splits:
          x-addedInVersion: '37'
          description: An array of objects specifying how the payment should be split
            when using either Adyen for Platforms for [marketplaces](https://docs.adyen.com/marketplaces/split-payments)
            or [platforms](https://docs.adyen.com/platforms/split-payments), or standalone
            [Issuing](https://docs.adyen.com/issuing/add-manage-funds#split).
          items:
            $ref: '#/components/schemas/Split'
          type: array
        store:
          x-addedInVersion: '23'
          description: Required for Adyen for Platforms integrations if you are a
            platform model. This is your [reference](https://docs.adyen.com/api-explorer/Management/3/post/merchants/(merchantId)/stores#request-reference)
            (on [balance platform](https://docs.adyen.com/platforms)) or the [storeReference](https://docs.adyen.com/api-explorer/Account/latest/post/updateAccountHolder#request-accountHolderDetails-storeDetails-storeReference)
            (in the [classic integration](https://docs.adyen.com/classic-platforms/processing-payments/route-payment-to-store/#route-a-payment-to-a-store))
            for the ecommerce or point-of-sale store that is processing the payment.
          maxLength: 16
          minLength: 1
          type: string
        telephoneNumber:
          x-addedInVersion: '7'
          description: The shopper's telephone number.
          type: string
        threeDS2RequestData:
          x-addedInVersion: '40'
          description: Request fields for 3D Secure 2. To check if any of the following
            fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments)
            or [Classic integration](https://docs.adyen.com/classic-integration) documentation.
          $ref: '#/components/schemas/ThreeDS2RequestData'
        totalsGroup:
          x-addedInVersion: '23'
          description: The reference value to aggregate sales totals in reporting.
            When not specified, the store field is used (if available).
          maxLength: 16
          minLength: 1
          type: string
        trustedShopper:
          x-addedInVersion: '37'
          description: Set to true if the payment should be routed to a trusted MID.
          type: boolean
      required:
      - merchantAccount
      - reference
      - amount
      type: object
    PaymentRequest3d:
      additionalProperties: false
      properties:
        accountInfo:
          x-addedInVersion: '40'
          description: 'Shopper account information for 3D Secure 2.

            > For 3D Secure 2 transactions, we recommend that you include this object
            to increase the chances of achieving a frictionless flow.'
          $ref: '#/components/schemas/AccountInfo'
        additionalAmount:
          description: 'If you want a [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification)
            request to use a non-zero value, assign this value to `additionalAmount`
            (while the amount must be still set to 0 to trigger BIN or card verification).

            Required to be in the same currency as the `amount`. '
          $ref: '#/components/schemas/Amount'
        additionalData:
          additionalProperties:
            type: string
          x-anyOf:
          - $ref: '#/components/schemas/AdditionalData3DSecure'
          - $ref: '#/components/schemas/AdditionalDataAirline'
          - $ref: '#/components/schemas/AdditionalDataCarRental'
          - $ref: '#/components/schemas/AdditionalDataCommon'
          - $ref: '#/components/schemas/AdditionalDataLevel23'
          - $ref: '#/components/schemas/AdditionalDataLodging'
          - $ref: '#/components/schemas/AdditionalDataOpenInvoice'
          - $ref: '#/components/schemas/AdditionalDataOpi'
          - $ref: '#/components/schemas/AdditionalDataRatepay'
          - $ref: '#/components/schemas/AdditionalDataRetry'
          - $ref: '#/components/schemas/AdditionalDataRisk'
          - $ref: '#/components/schemas/AdditionalDataRiskStandalone'
          - $ref: '#/components/schemas/AdditionalDataSubMerchant'
          - $ref: '#/components/schemas/AdditionalDataTemporaryServices'
          - $ref: '#/components/schemas/AdditionalDataWallets'
          description: 'This field contains additional data, which may be required
            for a particular payment request.


            The `additionalData` object consists of entries, each of which includes
            the key and value.'
          type: object
        amount:
          description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)).
            For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification)
            requests, set amount to 0 (zero).
          $ref: '#/components/schemas/Amount'
        applicationInfo:
          x-addedInVersion: '40'
          description: Information about your application. For more details, see [Building
            Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).
          $ref: '#/components/schemas/ApplicationInfo'
        billingAddress:
          x-addedInVersion: '4'
          description: 'The address where to send the invoice.

            > The `billingAddress` object is required in the following scenarios.
            Include all of the fields within this object.

            >* For 3D Secure 2 transactions in all browser-based and mobile implementations.

            >* For cross-border payouts to and from Canada.'
          $ref: '#/components/schemas/Address'
        browserInfo:
          description: 'The shopper''s browser information.

            > For 3D Secure, the full object is required for web integrations. For
            mobile app integrations, include the `userAgent` and `acceptHeader` fields
            to indicate  that your integration can support a redirect in case a payment
            is routed to 3D Secure 2 redirect.'
          $ref: '#/components/schemas/BrowserInfo'
        captureDelayHours:
          x-addedInVersion: '2'
          description: The delay between the authorisation and scheduled auto-capture,
            specified in hours.
          format: int32
          type: integer
        dateOfBirth:
          x-addedInVersion: '7'
          description: 'The shopper''s date of birth.


            Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD'
          format: date
          type: string
        dccQuote:
          description: The forex quote as returned in the response of the forex service.
          $ref: '#/components/schemas/ForexQuote'
        deliveryAddress:
          description: The address where the purchased goods should be delivered.
          $ref: '#/components/schemas/Address'
        deliveryDate:
          x-addedInVersion: '8'
          description: 'The date and time the purchased goods should be delivered.


            Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD


            Example: 2017-07-17T13:42:40.428+01:00'
          format: date-time
          type: string
        deviceFingerprint:
          x-addedInVersion: '2'
          description: A string containing the shopper's device fingerprint. For more
            information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).
          maxLength: 5000
          type: string
        fraudOffset:
          description: An integer value that is added to the normal fraud score. The
            value can be either positive or negative.
          format: int32
          type: integer
        installments:
          x-addedInVersion: '4'
          description: Contains installment settings. For more information, refer
            to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).
          $ref: '#/components/schemas/Installments'
        mcc:
          x-addedInVersion: '12'
          description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code)
            (MCC) is a four-digit number, which relates to a particular market segment.
            This code reflects the predominant activity that is conducted by the merchant.
          type: string
        md:
          description: The payment session identifier returned by the card issuer.
          type: string
        merchantAccount:
          description: The merchant account identifier, with which you want to process
            the transaction.
          type: string
        merchantOrderReference:
          x-addedInVersion: '9'
          description: 'This reference allows linking multiple transactions to each
            other for reporting purposes (i.e. order auth-rate). The reference should
            be unique per billing cycle.

            The same merchant order reference should never be reused after the first
            authorised attempt. If used, this field should be supplied for all incoming
            authorisations.

            > We strongly recommend you send the `merchantOrderReference` value to
            benefit from linking payment requests when authorisation retries take
            place. In addition, we recommend you provide `retry.orderAttemptNumber`,
            `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.'
          type: string
        merchantRiskIndicator:
          x-addedInVersion: '40'
          description: 'Additional risk fields for 3D Secure 2.

            > For 3D Secure 2 transactions, we recommend that you include this object
            to increase the chances of achieving a frictionless flow.'
          $ref: '#/components/schemas/MerchantRiskIndicator'
        metadata:
          x-addedInVersion: '17'
          additionalProperties:
            type: string
          description: 'Metadata consists of entries, each of which includes a key
            and a value.

            Limits:

            * Maximum 20 key-value pairs per request. When exceeding, the "177" error
            occurs: "Metadata size exceeds limit".

            * Maximum 20 characters per key.

            * Maximum 80 characters per value. '
          type: object
        orderReference:
          description: When you are doing multiple partial (gift card) payments, this
            is the `pspReference` of the first payment. We use this to link the multiple
            payments to each other. As your own reference for linking multiple payments,
            use the `merchantOrderReference`instead.
          type: string
        paResponse:
          description: Payment authorisation response returned by the card issuer.
            The `paResponse` field holds the PaRes value received from the card issuer.
          type: string
        recurring:
          description: The recurring settings for the payment. Use this property when
            you want to enable [recurring payments](https://docs.adyen.com/classic-integration/recurring-payments).
          $ref: '#/components/schemas/Recurring'
        recurringProcessingModel:
          x-addedInVersion: '30'
          description: "Defines a recurring payment type. Required when creating a\
            \ token to store payment details or using stored payment details.\nAllowed\
            \ values:\n* `Subscription` \u2013 A transaction for a fixed or variable\
            \ amount, which follows a fixed schedule.\n* `CardOnFile` \u2013 With\
            \ a card-on-file (CoF) transaction, card details are stored to enable\
            \ one-click or omnichannel journeys, or simply to streamline the checkout\
            \ process. Any subscription not following a fixed schedule is also considered\
            \ a card-on-file transaction.\n* `UnscheduledCardOnFile` \u2013 An unscheduled\
            \ card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed\
            \ schedule and/or have variable amounts. For example, automatic top-ups\
            \ when a cardholder's balance drops below a certain amount.\n"
          enum:
          - CardOnFile
          - Subscription
          - UnscheduledCardOnFile
          type: string
        reference:
          description: 'The reference to uniquely identify a payment. This reference
            is used in all communication with you about the payment status. We recommend
            using a unique value per payment; however, it is not a requirement.

            If you need to provide multiple references for a transaction, separate
            them with hyphens ("-").

            Maximum length: 80 characters.'
          type: string
        selectedBrand:
          description: 'Some payment methods require defining a value for this field
            to specify how to process the transaction.


            For the Bancontact payment method, it can be set to:

            * `maestro` (default), to be processed like a Maestro card, or

            * `bcmc`, to be processed like a Bancontact card.'
          type: string
        selectedRecurringDetailReference:
          description: The `recurringDetailReference` you want to use for this payment.
            The value `LATEST` can be used to select the most recently stored recurring
            detail.
          type: string
        sessionId:
          description: A session ID used to identify a payment session.
          type: string
        shopperEmail:
          description: 'The shopper''s email address. We recommend that you provide
            this data, as it is used in velocity fraud checks.

            > For 3D Secure 2 transactions, schemes require `shopperEmail` for all
            browser-based and mobile implementations.'
          type: string
        shopperIP:
          description: 'The shopper''s IP address. In general, we recommend that you
            provide this data, as it is used in a number of risk checks (for instance,
            number of payment attempts or location-based checks).

            > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based
            implementations.

            This field is also mandatory for some merchants depending on your business
            model. For more information, [contact Support](https://www.adyen.help/hc/en-us/requests/new).'
          type: string
        shopperInteraction:
          description: 'Specifies the sales channel, through which the shopper gives
            their card details, and whether the shopper is a returning customer.

            For the web service API, Adyen assumes Ecommerce shopper interaction by
            default.


            This field has the following possible values:

            * `Ecommerce` - Online transactions where the cardholder is present (online).
            For better authorisation rates, we recommend sending the card security
            code (CSC) along with the request.

            * `ContAuth` - Card on file and/or subscription transactions, where the
            cardholder is known to the merchant (returning customer). If the shopper
            is present (online), you can supply also the CSC to improve authorisation
            (one-click payment).

            * `Moto` - Mail-order and telephone-order transactions where the shopper
            is in contact with the merchant via email or telephone.

            * `POS` - Point-of-sale transactions where the shopper is physically present
            to make a payment using a secure payment terminal.'
          enum:
          - Ecommerce
          - ContAuth
          - Moto
          - POS
          type: string
        shopperLocale:
          x-addedInVersion: '7'
          description: The combination of a language code and a country code to specify
            the language to be used in the payment.
          type: string
        shopperName:
          x-addedInVersion: '7'
          description: The shopper's full name.
          $ref: '#/components/schemas/Name'
        shopperReference:
          description: "Required for recurring payments. \nYour reference to uniquely\
            \ identify this shopper, for example user ID or account ID. The value\
            \ is case-sensitive and must be at least three characters.\n> Your reference\
            \ must not include personally identifiable information (PII) such as name\
            \ or email address."
          type: string
        shopperStatement:
          description: "The text to be shown on the shopper's bank statement.\n We\
            \ recommend sending a maximum of 22 characters, otherwise banks might\
            \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\
            \ spaces, and special characters **. , ' _ - ? + * /**."
          type: string
        socialSecurityNumber:
          x-addedInVersion: '4'
          description: The shopper's social security number.
          type: string
        splits:
          x-addedInVersion: '37'
          description: An array of objects specifying how the payment should be split
            when using either Adyen for Platforms for [marketplaces](https://docs.adyen.com/marketplaces/split-payments)
            or [platforms](https://docs.adyen.com/platforms/split-payments), or standalone
            [Issuing](https://docs.adyen.com/issuing/add-manage-funds#split).
          items:
            $ref: '#/components/schemas/Split'
          type: array
        store:
          x-addedInVersion: '23'
          description: Required for Adyen for Platforms integrations if you are a
            platform model. This is your [reference](https://docs.adyen.com/api-explorer/Management/3/post/merchants/(merchantId)/stores#request-reference)
            (on [balance platform](https://docs.adyen.com/platforms)) or the [storeReference](https://docs.adyen.com/api-explorer/Account/latest/post/updateAccountHolder#request-accountHolderDetails-storeDetails-storeReference)
            (in the [classic integration](https://docs.adyen.com/classic-platforms/processing-payments/route-payment-to-store/#route-a-payment-to-a-store))
            for the ecommerce or point-of-sale store that is processing the payment.
          maxLength: 16
          minLength: 1
          type: string
        telephoneNumber:
          x-addedInVersion: '7'
          description: The shopper's telephone number.
          type: string
        threeDS2RequestData:
          x-addedInVersion: '40'
          description: Request fields for 3D Secure 2. To check if any of the following
            fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments)
            or [Classic integration](https://docs.adyen.com/classic-integration) documentation.
          $ref: '#/components/schemas/ThreeDS2RequestData'
        totalsGroup:
          x-addedInVersion: '23'
          description: The reference value to aggregate sales totals in reporting.
            When not specified, the store field is used (if available).
          maxLength: 16
          minLength: 1
          type: string
        trustedShopper:
          x-addedInVersion: '37'
          description: Set to true if the payment should be routed to a trusted MID.
          type: boolean
      required:
      - merchantAccount
      - paResponse
      - md
      type: object
    PaymentRequest3ds2:
      additionalProperties: false
      properties:
        accountInfo:
          x-addedInVersion: '40'
          description: 'Shopper account information for 3D Secure 2.

            > For 3D Secure 2 transactions, we recommend that you include this object
            to increase the chances of achieving a frictionless flow.'
          $ref: '#/components/schemas/AccountInfo'
        additionalAmount:
          description: 'If you want a [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification)
            request to use a non-zero value, assign this value to `additionalAmount`
            (while the amount must be still set to 0 to trigger BIN or card verification).

            Required to be in the same currency as the `amount`. '
          $ref: '#/components/schemas/Amount'
        additionalData:
          additionalProperties:
            type: string
          x-anyOf:
          - $ref: '#/components/schemas/AdditionalData3DSecure'
          - $ref: '#/components/schemas/AdditionalDataAirline'
          - $ref: '#/components/schemas/AdditionalDataCarRental'
          - $ref: '#/components/schemas/AdditionalDataCommon'
          - $ref: '#/components/schemas/AdditionalDataLevel23'
          - $ref: '#/components/schemas/AdditionalDataLodging'
          - $ref: '#/components/schemas/AdditionalDataOpenInvoice'
          - $ref: '#/components/schemas/AdditionalDataOpi'
          - $ref: '#/components/schemas/AdditionalDataRatepay'
          - $ref: '#/components/schemas/AdditionalDataRetry'
          - $ref: '#/components/schemas/AdditionalDataRisk'
          - $ref: '#/components/schemas/AdditionalDataRiskStandalone'
          - $ref: '#/components/schemas/AdditionalDataSubMerchant'
          - $ref: '#/components/schemas/AdditionalDataTemporaryServices'
          - $ref: '#/components/schemas/AdditionalDataWallets'
          description: 'This field contains additional data, which may be required
            for a particular payment request.


            The `additionalData` object consists of entries, each of which includes
            the key and value.'
          type: object
        amount:
          description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)).
            For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification)
            requests, set amount to 0 (zero).
          $ref: '#/components/schemas/Amount'
        applicationInfo:
          x-addedInVersion: '40'
          description: Information about your application. For more details, see [Building
            Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions).
          $ref: '#/components/schemas/ApplicationInfo'
        billingAddress:
          x-addedInVersion: '4'
          description: 'The address where to send the invoice.

            > The `billingAddress` object is required in the following scenarios.
            Include all of the fields within this object.

            >* For 3D Secure 2 transactions in all browser-based and mobile implementations.

            >* For cross-border payouts to and from Canada.'
          $ref: '#/components/schemas/Address'
        browserInfo:
          description: 'The shopper''s browser information.

            > For 3D Secure, the full object is required for web integrations. For
            mobile app integrations, include the `userAgent` and `acceptHeader` fields
            to indicate  that your integration can support a redirect in case a payment
            is routed to 3D Secure 2 redirect.'
          $ref: '#/components/schemas/BrowserInfo'
        captureDelayHours:
          x-addedInVersion: '2'
          description: The delay between the authorisation and scheduled auto-capture,
            specified in hours.
          format: int32
          type: integer
        dateOfBirth:
          x-addedInVersion: '7'
          description: 'The shopper''s date of birth.


            Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD'
          format: date
          type: string
        dccQuote:
          description: The forex quote as returned in the response of the forex service.
          $ref: '#/components/schemas/ForexQuote'
        deliveryAddress:
          description: The address where the purchased goods should be delivered.
          $ref: '#/components/schemas/Address'
        deliveryDate:
          x-addedInVersion: '8'
          description: 'The date and time the purchased goods should be delivered.


            Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD


            Example: 2017-07-17T13:42:40.428+01:00'
          format: date-time
          type: string
        deviceFingerprint:
          x-addedInVersion: '2'
          description: A string containing the shopper's device fingerprint. For more
            information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting).
          maxLength: 5000
          type: string
        fraudOffset:
          description: An integer value that is added to the normal fraud score. The
            value can be either positive or negative.
          format: int32
          type: integer
        installments:
          x-addedInVersion: '4'
          description: Contains installment settings. For more information, refer
            to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments).
          $ref: '#/components/schemas/Installments'
        mcc:
          x-addedInVersion: '12'
          description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code)
            (MCC) is a four-digit number, which relates to a particular market segment.
            This code reflects the predominant activity that is conducted by the merchant.
          type: string
        merchantAccount:
          description: The merchant account identifier, with which you want to process
            the transaction.
          type: string
        merchantOrderReference:
          x-addedInVersion: '9'
          description: 'This reference allows linking multiple transactions to each
            other for reporting purposes (i.e. order auth-rate). The reference should
            be unique per billing cycle.

            The same merchant order reference should never be reused after the first
            authorised attempt. If used, this field should be supplied for all incoming
            authorisations.

            > We strongly recommend you send the `merchantOrderReference` value to
            benefit from linking payment requests when authorisation retries take
            place. In addition, we recommend you provide `retry.orderAttemptNumber`,
            `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.'
          type: string
        merchantRiskIndicator:
          x-addedInVersion: '40'
          description: 'Additional risk fields for 3D Secure 2.

            > For 3D Secure 2 transactions, we recommend that you include this object
            to increase the chances of achieving a frictionless flow.'
          $ref: '#/components/schemas/MerchantRiskIndicator'
        metadata:
          x-addedInVersion: '17'
          additionalProperties:
            type: string
          description: 'Metadata consists of entries, each of which includes a key
            and a value.

            Limits:

            * Maximum 20 key-value pairs per request. When exceeding, the "177" error
            occurs: "Metadata size exceeds limit".

            * Maximum 20 characters per key.

            * Maximum 80 characters per value. '
          type: object
        orderReference:
          description: When you are doing multiple partial (gift card) payments, this
            is the `pspReference` of the first payment. We use this to link the multiple
            payments to each other. As your own reference for linking multiple payments,
            use the `merchantOrderReference`instead.
          type: string
        recurring:
          description: The recurring settings for the payment. Use this property when
            you want to enable [recurring payments](https://docs.adyen.com/classic-integration/recurring-payments).
          $ref: '#/components/schemas/Recurring'
        recurringProcessingModel:
          x-addedInVersion: '30'
          description: "Defines a recurring payment type. Required when creating a\
            \ token to store payment details or using stored payment details.\nAllowed\
            \ values:\n* `Subscription` \u2013 A transaction for a fixed or variable\
            \ amount, which follows a fixed schedule.\n* `CardOnFile` \u2013 With\
            \ a card-on-file (CoF) transaction, card details are stored to enable\
            \ one-click or omnichannel journeys, or simply to streamline the checkout\
            \ process. Any subscription not following a fixed schedule is also considered\
            \ a card-on-file transaction.\n* `UnscheduledCardOnFile` \u2013 An unscheduled\
            \ card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed\
            \ schedule and/or have variable amounts. For example, automatic top-ups\
            \ when a cardholder's balance drops below a certain amount.\n"
          enum:
          - CardOnFile
          - Subscription
          - UnscheduledCardOnFile
          type: string
        reference:
          description: 'The reference to uniquely identify a payment. This reference
            is used in all communication with you about the payment status. We recommend
            using a unique value per payment; however, it is not a requirement.

            If you need to provide multiple references for a transaction, separate
            them with hyphens ("-").

            Maximum length: 80 characters.'
          type: string
        selectedBrand:
          description: 'Some payment methods require defining a value for this field
            to specify how to process the transaction.


            For the Bancontact payment method, it can be set to:

            * `maestro` (default), to be processed like a Maestro card, or

            * `bcmc`, to be processed like a Bancontact card.'
          type: string
        selectedRecurringDetailReference:
          description: The `recurringDetailReference` you want to use for this payment.
            The value `LATEST` can be used to select the most recently stored recurring
            detail.
          type: string
        sessionId:
          description: A session ID used to identify a payment session.
          type: string
        shopperEmail:
          description: 'The shopper''s email address. We recommend that you provide
            this data, as it is used in velocity fraud checks.

            > For 3D Secure 2 transactions, schemes require `shopperEmail` for all
            browser-based and mobile implementations.'
          type: string
        shopperIP:
          description: 'The shopper''s IP address. In general, we recommend that you
            provide this data, as it is used in a number of risk checks (for instance,
            number of payment attempts or location-based checks).

            > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based
            implementations.

            This field is also mandatory for some merchants depending on your business
            model. For more information, [contact Support](https://www.adyen.help/hc/en-us/requests/new).'
          type: string
        shopperInteraction:
          description: 'Specifies the sales channel, through which the shopper gives
            their card details, and whether the shopper is a returning customer.

            For the web service API, Adyen assumes Ecommerce shopper interaction by
            default.


            This field has the following possible values:

            * `Ecommerce` - Online transactions where the cardholder is present (online).
            For better authorisation rates, we recommend sending the card security
            code (CSC) along with the request.

            * `ContAuth` - Card on file and/or subscription transactions, where the
            cardholder is known to the merchant (returning customer). If the shopper
            is present (online), you can supply also the CSC to improve authorisation
            (one-click payment).

            * `Moto` - Mail-order and telephone-order transactions where the shopper
            is in contact with the merchant via email or telephone.

            * `POS` - Point-of-sale transactions where the shopper is physically present
            to make a payment using a secure payment terminal.'
          enum:
          - Ecommerce
          - ContAuth
          - Moto
          - POS
          type: string
        shopperLocale:
          x-addedInVersion: '7'
          description: The combination of a language code and a country code to specify
            the language to be used in the payment.
          type: string
        shopperName:
          x-addedInVersion: '7'
          description: The shopper's full name.
          $ref: '#/components/schemas/Name'
        shopperReference:
          description: "Required for recurring payments. \nYour reference to uniquely\
            \ identify this shopper, for example user ID or account ID. The value\
            \ is case-sensitive and must be at least three characters.\n> Your reference\
            \ must not include personally identifiable information (PII) such as name\
            \ or email address."
          type: string
        shopperStatement:
          description: "The text to be shown on the shopper's bank statement.\n We\
            \ recommend sending a maximum of 22 characters, otherwise banks might\
            \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\
            \ spaces, and special characters **. , ' _ - ? + * /**."
          type: string
        socialSecurityNumber:
          x-addedInVersion: '4'
          description: The shopper's social security number.
          type: string
        splits:
          x-addedInVersion: '37'
          description: An array of objects specifying how the payment should be split
            when using either Adyen for Platforms for [marketplaces](https://docs.adyen.com/marketplaces/split-payments)
            or [platforms](https://docs.adyen.com/platforms/split-payments), or standalone
            [Issuing](https://docs.adyen.com/issuing/add-manage-funds#split).
          items:
            $ref: '#/components/schemas/Split'
          type: array
        store:
          x-addedInVersion: '23'
          description: Required for Adyen for Platforms integrations if you are a
            platform model. This is your [reference](https://docs.adyen.com/api-explorer/Management/3/post/merchants/(merchantId)/stores#request-reference)
            (on [balance platform](https://docs.adyen.com/platforms)) or the [storeReference](https://docs.adyen.com/api-explorer/Account/latest/post/updateAccountHolder#request-accountHolderDetails-storeDetails-storeReference)
            (in the [classic integration](https://docs.adyen.com/classic-platforms/processing-payments/route-payment-to-store/#route-a-payment-to-a-store))
            for the ecommerce or point-of-sale store that is processing the payment.
          maxLength: 16
          minLength: 1
          type: string
        telephoneNumber:
          x-addedInVersion: '7'
          description: The shopper's telephone number.
          type: string
        threeDS2RequestData:
          x-addedInVersion: '40'
          description: Request fields for 3D Secure 2. To check if any of the following
            fields are required for your integration, refer to [Online payments](https://docs.adyen.com/online-payments)
            or [Classic integration](https://docs.adyen.com/classic-integration) documentation.
          $ref: '#/components/schemas/ThreeDS2RequestData'
        threeDS2Result:
          description: The ThreeDS2Result that was returned in the final CRes.
          $ref: '#/components/schemas/ThreeDS2Result'
        threeDS2Token:
          description: The ThreeDS2Token that was returned in the /authorise call.
          type: string
        totalsGroup:
          x-addedInVersion: '23'
          description: The reference value to aggregate sales totals in reporting.
            When not specified, the store field is used (if available).
          maxLength: 16
          minLength: 1
          type: string
        trustedShopper:
          x-addedInVersion: '37'
          description: Set to true if the payment should be routed to a trusted MID.
          type: boolean
      required:
      - merchantAccount
      - reference
      - amount
      type: object
    PaymentResult:
      additionalProperties: false
      properties:
        additionalData:
          additionalProperties:
            type: string
          x-anyOf:
          - $ref: '#/components/schemas/ResponseAdditionalData3DSecure'
          - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress'
          - $ref: '#/components/schemas/ResponseAdditionalDataCard'
          - $ref: '#/components/schemas/ResponseAdditionalDataCommon'
          - $ref: '#/components/schemas/ResponseAdditionalDataDomesticError'
          - $ref: '#/components/schemas/ResponseAdditionalDataInstallments'
          - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens'
          - $ref: '#/components/schemas/ResponseAdditionalDataOpi'
          - $ref: '#/components/schemas/ResponseAdditionalDataSepa'
          description: 'Contains additional information about the payment. Some data
            fields are included only if you select them first: Go to **Customer Area**
            > **Developers** > **Additional data**.'
          type: object
        authCode:
          description: 'Authorisation code:

            * When the payment is authorised successfully, this field holds the authorisation
            code for the payment.

            * When the payment is not authorised, this field is empty.'
          type: string
        dccAmount:
          description: 'Includes the currency of the conversion and the value of the
            transaction.

            > This value only applies if you have implemented Dynamic Currency Conversion.
            For more information, [contact Support](https://www.adyen.help/hc/en-us/requests/new).'
          $ref: '#/components/schemas/Amount'
        dccSignature:
          description: 'Cryptographic signature used to verify `dccQuote`.

            > This value only applies if you have implemented Dynamic Currency Conversion.
            For more information, [contact Support](https://www.adyen.help/hc/en-us/requests/new).'
          type: string
        fraudResult:
          description: The fraud result properties of the payment.
          $ref: '#/components/schemas/FraudResult'
        issuerUrl:
          description: 'The URL to direct the shopper to.

            > In case of SecurePlus, do not redirect a shopper to this URL.'
          type: string
        md:
          description: The payment session.
          maxLength: 20000
          type: string
        paRequest:
          description: 'The 3D request data for the issuer.


            If the value is **CUPSecurePlus-CollectSMSVerificationCode**, collect
            an SMS code from the shopper and pass it in the `/authorise3D` request.
            For more information, see [3D Secure](https://docs.adyen.com/classic-integration/3d-secure).'
          type: string
        pspReference:
          description: Adyen's 16-character reference associated with the transaction/request.
            This value is globally unique; quote it when communicating with us about
            this request.
          type: string
        refusalReason:
          description: 'If the payment''s authorisation is refused or an error occurs
            during authorisation, this field holds Adyen''s mapped reason for the
            refusal or a description of the error. When a transaction fails, the authorisation
            response includes `resultCode` and `refusalReason` values.


            For more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).'
          type: string
        resultCode:
          description: "The result of the payment. For more information, see [Result\
            \ codes](https://docs.adyen.com/online-payments/payment-result-codes).\n\
            \nPossible values:\n\n* **AuthenticationFinished** \u2013 The payment\
            \ has been successfully authenticated with 3D Secure 2. Returned for 3D\
            \ Secure 2 authentication-only transactions.\n* **AuthenticationNotRequired**\
            \ \u2013 The transaction does not require 3D Secure authentication. Returned\
            \ for [standalone authentication-only integrations](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only).\n\
            * **Authorised** \u2013 The payment was successfully authorised. This\
            \ state serves as an indicator to proceed with the delivery of goods and\
            \ services. This is a final state.\n* **Cancelled** \u2013 Indicates the\
            \ payment has been cancelled (either by the shopper or the merchant) before\
            \ processing was completed. This is a final state.\n* **ChallengeShopper**\
            \ \u2013 The issuer requires further shopper interaction before the payment\
            \ can be authenticated. Returned for 3D Secure 2 transactions.\n* **Error**\
            \ \u2013 There was an error when the payment was being processed. The\
            \ reason is given in the `refusalReason` field. This is a final state.\n\
            * **IdentifyShopper** \u2013 The issuer requires the shopper's device\
            \ fingerprint before the payment can be authenticated. Returned for 3D\
            \ Secure 2 transactions.\n* **PartiallyAuthorised** \u2013 The payment\
            \ has been authorised for a partial amount.\nThis happens for card payments\
            \ when the merchant supports Partial Authorisations and the cardholder\
            \ has insufficient funds.\n* **Pending** \u2013 Indicates that it is not\
            \ possible to obtain the final status of the payment. This can happen\
            \ if the systems providing final status information for the payment are\
            \ unavailable, or if the shopper needs to take further action to complete\
            \ the payment.\n* **PresentToShopper** \u2013 Indicates that the response\
            \ contains additional information that you need to present to a shopper,\
            \ so that they can use it to complete a payment.\n* **Received** \u2013\
            \ Indicates the payment has successfully been received by Adyen, and will\
            \ be processed. This is the initial state for all payments.\n* **RedirectShopper**\
            \ \u2013 Indicates the shopper should be redirected to an external web\
            \ page or app to complete the authorisation.\n* **Refused** \u2013 Indicates\
            \ the payment was refused. The reason is given in the `refusalReason`\
            \ field. This is a final state."
          enum:
          - AuthenticationFinished
          - AuthenticationNotRequired
          - Authorised
          - Cancelled
          - ChallengeShopper
          - Error
          - IdentifyShopper
          - PartiallyAuthorised
          - Pending
          - PresentToShopper
          - Received
          - RedirectShopper
          - Refused
          - Success
          type: string
      type: object
    Recurring:
      additionalProperties: false
      properties:
        contract:
          description: "The type of recurring contract to be used.\nPossible values:\n\
            * `ONECLICK` \u2013 Payment details can be used to initiate a one-click\
            \ payment, where the shopper enters the [card security code (CVC/CVV)](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-security-code-cvc-cvv-cid).\n\
            * `RECURRING` \u2013 Payment details can be used without the card security\
            \ code to initiate [card-not-present transactions](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-not-present-cnp).\n\
            * `ONECLICK,RECURRING` \u2013 Payment details can be used regardless of\
            \ whether the shopper is on your site or not.\n* `PAYOUT` \u2013 Payment\
            \ details can be used to [make a payout](https://docs.adyen.com/online-payments/online-payouts)."
          enum:
          - ONECLICK
          - RECURRING
          - PAYOUT
          type: string
        recurringDetailName:
          description: A descriptive name for this detail.
          type: string
        recurringExpiry:
          x-addedInVersion: '40'
          description: Date after which no further authorisations shall be performed.
            Only for 3D Secure 2.
          format: date-time
          type: string
        recurringFrequency:
          x-addedInVersion: '40'
          description: Minimum number of days between authorisations. Only for 3D
            Secure 2.
          type: string
        tokenService:
          x-addedInVersion: '25'
          description: The name of the token service.
          enum:
          - VISATOKENSERVICE
          - MCTOKENSERVICE
          - AMEXTOKENSERVICE
          - TOKEN_SHARING
          type: string
      type: object
    RefundRequest:
      additionalProperties: false
      properties:
        additionalData:
          additionalProperties:
            type: string
          x-anyOf:
          - $ref: '#/components/schemas/AdditionalData3DSecure'
          - $ref: '#/components/schemas/AdditionalDataAirline'
          - $ref: '#/components/schemas/AdditionalDataCarRental'
          - $ref: '#/components/schemas/AdditionalDataCommon'
          - $ref: '#/components/schemas/AdditionalDataLevel23'
          - $ref: '#/components/schemas/AdditionalDataLodging'
          - $ref: '#/components/schemas/AdditionalDataModifications'
          - $ref: '#/components/schemas/AdditionalDataOpenInvoice'
          - $ref: '#/components/schemas/AdditionalDataOpi'
          - $ref: '#/components/schemas/AdditionalDataRatepay'
          - $ref: '#/components/schemas/AdditionalDataRetry'
          - $ref: '#/components/schemas/AdditionalDataRisk'
          - $ref: '#/components/schemas/AdditionalDataRiskStandalone'
          - $ref: '#/components/schemas/AdditionalDataSubMerchant'
          - $ref: '#/components/schemas/AdditionalDataTemporaryServices'
          - $ref: '#/components/schemas/AdditionalDataWallets'
          description: 'This field contains additional data, which may be required
            for a particular modification request.


            The additionalData object consists of entries, each of which includes
            the key and value.'
          type: object
        merchantAccount:
          description: The merchant account that is used to process the payment.
          type: string
        modificationAmount:
          description: The amount that needs to be refunded. The `currency` must match
            the currency used in authorisation, the `value` must be smaller than or
            equal to the authorised amount.
          $ref: '#/components/schemas/Amount'
        originalMerchantReference:
          x-addedInVersion: '30'
          description: The original merchant reference to cancel.
          type: string
        originalReference:
          description: 'The original pspReference of the payment to modify.

            This reference is returned in:

            * authorisation response

            * authorisation notification


            '
          type: string
        reference:
          description: 'Your reference for the payment modification. This reference
            is visible in Customer Area and in reports.

            Maximum length: 80 characters.'
          type: string
        splits:
          x-addedInVersion: '37'
          description: An array of objects specifying how the amount should be split
            between accounts when using Adyen for Platforms. For more information,
            see how to split payments for [platforms](https://docs.adyen.com/platforms/automatic-split-configuration/).
          items:
            $ref: '#/components/schemas/Split'
          type: array
        tenderReference:
          x-addedInVersion: '25'
          description: The transaction reference provided by the PED. For point-of-sale
            integrations only.
          type: string
        uniqueTerminalId:
          x-addedInVersion: '25'
          description: Unique terminal ID for the PED that originally processed the
            request. For point-of-sale integrations only.
          type: string
      required:
      - merchantAccount
      - modificationAmount
      - originalReference
      type: object
    ResponseAdditionalData3DSecure:
      additionalProperties: false
      properties:
        cardHolderInfo:
          description: 'Information provided by the issuer to the cardholder. If this
            field is present, you need to display this information to the cardholder. '
          type: string
        cavv:
          description: The Cardholder Authentication Verification Value (CAVV) for
            the 3D Secure authentication session, as a Base64-encoded 20-byte array.
          type: string
        cavvAlgorithm:
          description: The CAVV algorithm used.
          type: string
        scaExemptionRequested:
          description: "Shows the [exemption type](https://docs.adyen.com/payments-fundamentals/psd2-sca-compliance-and-implementation-guide#specifypreferenceinyourapirequest)\
            \ that Adyen requested for the payment.\n\n Possible values:\n* **lowValue**\
            \ \n* **secureCorporate** \n* **trustedBeneficiary** \n* **transactionRiskAnalysis** "
          type: string
        threeds2.cardEnrolled:
          description: Indicates whether a card is enrolled for 3D Secure 2.
          type: boolean
      type: object
    ResponseAdditionalDataBillingAddress:
      additionalProperties: false
      properties:
        billingAddress.city:
          description: The billing address city passed in the payment request.
          type: string
        billingAddress.country:
          description: 'The billing address country passed in the payment request.


            Example: NL'
          type: string
        billingAddress.houseNumberOrName:
          description: The billing address house number or name passed in the payment
            request.
          type: string
        billingAddress.postalCode:
          description: 'The billing address postal code passed in the payment request.


            Example: 1011 DJ'
          type: string
        billingAddress.stateOrProvince:
          description: 'The billing address state or province passed in the payment
            request.


            Example: NH'
          type: string
        billingAddress.street:
          description: The billing address street passed in the payment request.
          type: string
      type: object
    ResponseAdditionalDataCard:
      additionalProperties: false
      properties:
        cardBin:
          description: 'The first six digits of the card number.


            This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin)
            for card numbers with a six-digit BIN.


            Example: 521234'
          type: string
        cardHolderName:
          description: The cardholder name passed in the payment request.
          type: string
        cardIssuingBank:
          description: The bank or the financial institution granting lines of credit
            through card association branded payment cards. This information can be
            included when available.
          type: string
        cardIssuingCountry:
          description: 'The country where the card was issued.


            Example: US'
          type: string
        cardIssuingCurrency:
          description: "The currency in which the card is issued, if this information\
            \ is available. Provided as the currency code or currency number from\
            \ the ISO-4217 standard. \n\nExample: USD"
          type: string
        cardPaymentMethod:
          description: 'The card payment method used for the transaction.


            Example: amex'
          type: string
        cardProductId:
          description: 'The Card Product ID represents the type of card following
            card scheme product definitions and can be returned for Adyen Acquiring
            service level payments.


            Possible values Visa:

            * **A** - Visa Traditional

            * **B** - Visa Traditional Rewards

            * **C** - Visa Signature

            * **D** - Visa Signature Preferred

            * **F** - Visa Classic


            Possible values Mastercard:

            * **MCC** - Mastercard Card

            * **MCE** - Mastercard Electronic Card

            * **MCF** - Mastercard Corporate Fleet Card

            * **MCG** - Gold Mastercard Card

            * **MCH** - Mastercard Premium Charge

            * **MCI** - Mastercard Select Debit

            '
          enum:
          - A
          - B
          - C
          - D
          - F
          - MCC
          - MCE
          - MCF
          - MCG
          - MCH
          - MCI
          type: string
        cardSummary:
          description: 'The last four digits of a card number.


            > Returned only in case of a card payment.'
          type: string
        issuerBin:
          description: 'The first eight digits of the card number. Only returned if
            the card number is 16 digits or more.


            This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin)
            for card numbers with an eight-digit BIN.


            Example: 52123423'
          type: string
      type: object
    ResponseAdditionalDataCommon:
      additionalProperties: false
      properties:
        acquirerAccountCode:
          description: 'The name of the Adyen acquirer account.


            Example: PayPalSandbox_TestAcquirer


            > Only relevant for PayPal transactions.'
          type: string
        acquirerCode:
          description: 'The name of the acquirer processing the payment request.


            Example: TestPmmAcquirer'
          type: string
        acquirerReference:
          description: 'The reference number that can be used for reconciliation in
            case a non-Adyen acquirer is used for settlement.


            Example: 7C9N3FNBKT9'
          type: string
        alias:
          description: 'The Adyen alias of the card.


            Example: H167852639363479'
          type: string
        aliasType:
          description: 'The type of the card alias.


            Example: Default'
          type: string
        authCode:
          description: 'Authorisation code:

            * When the payment is authorised successfully, this field holds the authorisation
            code for the payment.

            * When the payment is not authorised, this field is empty.


            Example: 58747'
          type: string
        authorisationMid:
          description: Merchant ID known by the acquirer.
          type: string
        authorisedAmountCurrency:
          description: The currency of the authorised amount, as a three-character
            [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
          type: string
        authorisedAmountValue:
          description: 'Value of the amount authorised.


            This amount is represented in minor units according to the [following
            table](https://docs.adyen.com/development-resources/currency-codes).'
          type: string
        avsResult:
          description: 'The AVS result code of the payment, which provides information
            about the outcome of the AVS check.


            For possible values, see [AVS](https://docs.adyen.com/risk-management/configure-standard-risk-rules/consistency-rules#billing-address-does-not-match-cardholder-address-avs).'
          type: string
        avsResultRaw:
          description: 'Raw AVS result received from the acquirer, where available.


            Example: D'
          type: string
        bic:
          description: 'BIC of a bank account.


            Example: TESTNL01


            > Only relevant for SEPA Direct Debit transactions.'
          type: string
        coBrandedWith:
          description: Includes the co-branded card information.
          type: string
        cvcResult:
          description: The result of CVC verification.
          example: 1 Matches
          type: string
        cvcResultRaw:
          description: The raw result of CVC verification.
          example: M
          type: string
        dsTransID:
          description: Supported for 3D Secure 2. The unique transaction identifier
            assigned by the DS to identify a single transaction.
          type: string
        eci:
          description: 'The Electronic Commerce Indicator returned from the schemes
            for the 3DS payment session.


            Example: 02'
          type: string
        expiryDate:
          description: 'The expiry date on the card.


            Example: 6/2016


            > Returned only in case of a card payment.'
          type: string
        extraCostsCurrency:
          description: 'The currency of the extra amount charged due to additional
            amounts set in the skin used in the HPP payment request.


            Example: EUR'
          type: string
        extraCostsValue:
          description: The value of the extra amount charged due to additional amounts
            set in the skin used in the HPP payment request. The amount is in minor
            units.
          type: string
        fraudCheck-[itemNr]-[FraudCheckname]:
          description: The fraud score due to a particular fraud check. The fraud
            check name is found in the key of the key-value pair.
          type: string
        fraudManualReview:
          description: Indicates if the payment is sent to manual review.
          type: string
        fraudResultType:
          description: The fraud result properties of the payment.
          enum:
          - GREEN
          - FRAUD
          type: string
        fraudRiskLevel:
          description: 'The risk level of the transaction as classified by the [machine
            learning](https://docs.adyen.com/risk-management/configure-your-risk-profile/machine-learning-rules/)
            fraud risk rule. The risk level indicates the likelihood that a transaction
            will result in a fraudulent dispute. The possible return values are:

            * veryLow

            * low

            * medium

            * high

            * veryHigh


            >'
          enum:
          - veryLow
          - low
          - medium
          - high
          - veryHigh
          type: string
        fundingSource:
          description: 'Information regarding the funding type of the card. The possible
            return values are:

            * CHARGE

            * CREDIT

            * DEBIT

            * PREPAID

            * PREPAID_RELOADABLE


            * PREPAID_NONRELOADABLE

            * DEFFERED_DEBIT


            > This functionality requires additional configuration on Adyen''s end.
            To enable it, contact the Support Team.


            For receiving this field in the notification, enable **Include Funding
            Source** in **Notifications** > **Additional settings**.'
          type: string
        fundsAvailability:
          description: 'Indicates availability of funds.


            Visa:

            * "I" (fast funds are supported)

            * "N" (otherwise)


            Mastercard:

            * "I" (product type is Prepaid or Debit, or issuing country is in CEE/HGEM
            list)

            * "N" (otherwise)


            > Returned when you verify a card BIN or estimate costs, and only if payoutEligible
            is "Y" or "D".'
          type: string
        inferredRefusalReason:
          description: 'Provides the more granular indication of why a transaction
            was refused. When a transaction fails with either "Refused", "Restricted
            Card", "Transaction Not Permitted", "Not supported" or "DeclinedNon Generic"
            refusalReason from the issuer, Adyen cross references its PSP-wide data
            for extra insight into the refusal reason. If an inferred refusal reason
            is available, the `inferredRefusalReason`, field is populated and the
            `refusalReason`, is set to "Not Supported".


            Possible values:


            * 3D Secure Mandated

            * Closed Account

            * ContAuth Not Supported

            * CVC Mandated

            * Ecommerce Not Allowed

            * Crossborder Not Supported

            * Card Updated


            * Low Authrate Bin

            * Non-reloadable prepaid card'
          type: string
        isCardCommercial:
          description: Indicates if the card is used for business purposes only.
          type: string
        issuerCountry:
          description: 'The issuing country of the card based on the BIN list that
            Adyen maintains.


            Example: JP'
          type: string
        liabilityShift:
          description: A Boolean value indicating whether a liability shift was offered
            for this payment.
          type: string
        mcBankNetReferenceNumber:
          description: 'The `mcBankNetReferenceNumber`, is a minimum of six characters
            and a maximum of nine characters long.


            > Contact Support Team to enable this field.'
          type: string
        merchantAdviceCode:
          description: 'The Merchant Advice Code (MAC) can be returned by Mastercard
            issuers for refused payments. If present, the MAC contains information
            about why the payment failed, and whether it can be retried.


            For more information see [Mastercard Merchant Advice Codes](https://docs.adyen.com/development-resources/raw-acquirer-responses#mastercard-merchant-advice-codes).'
          type: string
        merchantReference:
          description: The reference provided for the transaction.
          type: string
        networkTxReference:
          description: 'Returned in the response if you are not tokenizing with Adyen
            and are using the Merchant-initiated transactions (MIT) framework from
            Mastercard or Visa.


            This contains either the Mastercard Trace ID or the Visa Transaction ID.'
          type: string
        nonScheme.transactionLimit:
          description: The maximum spendable value for a single transaction. Applicable
            to some gift cards.
          type: string
        nonScheme.transactionLimitCcy:
          description: The currency of the transaction limit.
          type: string
        ownerName:
          description: 'The owner name of a bank account.


            Only relevant for SEPA Direct Debit transactions.'
          type: string
        paymentAccountReference:
          description: The Payment Account Reference (PAR) value links a network token
            with the underlying primary account number (PAN). The PAR value consists
            of 29 uppercase alphanumeric characters.
          type: string
        paymentMethod:
          description: The payment method used in the transaction.
          type: string
        paymentMethodVariant:
          description: 'The Adyen sub-variant of the payment method used for the payment
            request.


            For more information, refer to [PaymentMethodVariant](https://docs.adyen.com/development-resources/paymentmethodvariant).


            Example: mcpro'
          type: string
        payoutEligible:
          description: 'Indicates whether a payout is eligible or not for this card.


            Visa:

            * "Y"

            * "N"


            Mastercard:

            * "Y" (domestic and cross-border)


            * "D" (only domestic)

            * "N" (no MoneySend)

            * "U" (unknown)'
          type: string
        realtimeAccountUpdaterStatus:
          description: 'The response code from the Real Time Account Updater service.


            Possible return values are:

            * CardChanged

            * CardExpiryChanged

            * CloseAccount


            * ContactCardAccountHolder'
          type: string
        receiptFreeText:
          description: Message to be displayed on the terminal.
          type: string
        recurring.contractTypes:
          x-addedInVersion: '40'
          description: The recurring contract types applicable to the transaction.
          type: string
        recurring.firstPspReference:
          description: 'The `pspReference`, of the first recurring payment that created
            the recurring detail.


            This functionality requires additional configuration on Adyen''s end.
            To enable it, contact the Support Team.'
          type: string
        recurring.recurringDetailReference:
          description: The reference that uniquely identifies the recurring transaction.
          type: string
        recurring.shopperReference:
          x-addedInVersion: '40'
          description: The provided reference of the shopper for a recurring transaction.
          type: string
        recurringProcessingModel:
          x-addedInVersion: '40'
          description: The processing model used for the recurring transaction.
          enum:
          - CardOnFile
          - Subscription
          - UnscheduledCardOnFile
          type: string
        referred:
          description: 'If the payment is referred, this field is set to true.


            This field is unavailable if the payment is referred and is usually not
            returned with ecommerce transactions.


            Example: true'
          type: string
        refusalReasonRaw:
          description: 'Raw refusal reason received from the acquirer, where available.


            Example: AUTHORISED'
          type: string
        requestAmount:
          description: The amount of the payment request.
          type: string
        requestCurrencyCode:
          description: The currency of the payment request.
          type: string
        shopperInteraction:
          description: 'The shopper interaction type of the payment request.


            Example: Ecommerce'
          type: string
        shopperReference:
          description: 'The shopperReference passed in the payment request.


            Example: AdyenTestShopperXX'
          type: string
        terminalId:
          description: 'The terminal ID used in a point-of-sale payment.


            Example: 06022622'
          type: string
        threeDAuthenticated:
          description: 'A Boolean value indicating whether 3DS authentication was
            completed on this payment.


            Example: true'
          type: string
        threeDAuthenticatedResponse:
          description: 'The raw 3DS authentication result from the card issuer.


            Example: N'
          type: string
        threeDOffered:
          description: 'A Boolean value indicating whether 3DS was offered for this
            payment.


            Example: true'
          type: string
        threeDOfferedResponse:
          description: 'The raw enrollment result from the 3DS directory services
            of the card schemes.


            Example: Y'
          type: string
        threeDSVersion:
          description: The 3D Secure 2 version.
          type: string
        tokenization.shopperReference:
          description: The reference for the shopper that you sent when tokenizing
            the payment details.
          type: string
        tokenization.store.operationType:
          description: 'The operation performed on the token. Possible values:


            * **created**: the token has been created.

            * **updated**: the existing token has been updated.

            * **alreadyExisting**: the details have already been stored.

            '
          enum:
          - created
          - updated
          - alreadyExisting
          type: string
        tokenization.storedPaymentMethodId:
          description: The reference that uniquely identifies tokenized payment details.
          type: string
        visaTransactionId:
          description: 'The `visaTransactionId`, has a fixed length of 15 numeric
            characters.


            > Contact Support Team to enable this field.'
          type: string
        xid:
          description: "The 3DS transaction ID of the 3DS session sent in notifications.\
            \ The value is Base64-encoded and is returned for transactions with directoryResponse\
            \ 'N' or 'Y'. \n\nExample: ODgxNDc2MDg2MDExODk5MAAAAAA="
          type: string
      type: object
    ResponseAdditionalDataDomesticError:
      additionalProperties: false
      properties:
        domesticRefusalReasonRaw:
          description: "The reason the transaction was declined, given by the local\
            \ issuer. \nCurrently available for merchants in Japan."
          type: string
        domesticShopperAdvice:
          description: "The action the shopper should take, in a local language. \n\
            Currently available in Japanese, for merchants in Japan."
          type: string
      type: object
    ResponseAdditionalDataInstallments:
      additionalProperties: false
      properties:
        installmentPaymentData.installmentType:
          description: Type of installment. The value of `installmentType` should
            be **IssuerFinanced**.
          type: string
        installmentPaymentData.option[itemNr].annualPercentageRate:
          description: Annual interest rate.
          type: string
        installmentPaymentData.option[itemNr].firstInstallmentAmount:
          description: First Installment Amount in minor units.
          type: string
        installmentPaymentData.option[itemNr].installmentFee:
          description: Installment fee amount in minor units.
          type: string
        installmentPaymentData.option[itemNr].interestRate:
          description: Interest rate for the installment period.
          type: string
        installmentPaymentData.option[itemNr].maximumNumberOfInstallments:
          description: Maximum number of installments possible for this payment.
          type: string
        installmentPaymentData.option[itemNr].minimumNumberOfInstallments:
          description: Minimum number of installments possible for this payment.
          type: string
        installmentPaymentData.option[itemNr].numberOfInstallments:
          description: Total number of installments possible for this payment.
          type: string
        installmentPaymentData.option[itemNr].subsequentInstallmentAmount:
          description: Subsequent Installment Amount in minor units.
          type: string
        installmentPaymentData.option[itemNr].totalAmountDue:
          description: Total amount in minor units.
          type: string
        installmentPaymentData.paymentOptions:
          description: 'Possible values:

            * PayInInstallmentsOnly

            * PayInFullOnly

            * PayInFullOrInstallments'
          type: string
        installments.value:
          description: 'The number of installments that the payment amount should
            be charged with.


            Example: 5

            > Only relevant for card payments in countries that support installments.'
          type: string
      type: object
    ResponseAdditionalDataNetworkTokens:
      additionalProperties: false
      properties:
        networkToken.available:
          description: Indicates whether a network token is available for the specified
            card.
          type: string
        networkToken.bin:
          description: The Bank Identification Number of a tokenized card, which is
            the first six digits of a card number.
          type: string
        networkToken.tokenSummary:
          description: The last four digits of a network token.
          type: string
      type: object
    ResponseAdditionalDataOpi:
      additionalProperties: false
      properties:
        opi.transToken:
          description: 'Returned in the response if you included `opi.includeTransToken:
            true` in an ecommerce payment request. This contains an Oracle Payment
            Interface token that you can store in your Oracle Opera database to identify
            tokenized ecommerce transactions. For more information and required settings,
            see [Oracle Opera](https://docs.adyen.com/plugins/oracle-opera#opi-token-ecommerce).'
          type: string
      type: object
    ResponseAdditionalDataSepa:
      additionalProperties: false
      properties:
        sepadirectdebit.dateOfSignature:
          description: 'The transaction signature date.


            Format: yyyy-MM-dd'
          type: string
        sepadirectdebit.mandateId:
          description: Its value corresponds to the pspReference value of the transaction.
          type: string
        sepadirectdebit.sequenceType:
          description: 'This field can take one of the following values:

            * OneOff: (OOFF) Direct debit instruction to initiate exactly one direct
            debit transaction.


            * First: (FRST) Initial/first collection in a series of direct debit instructions.

            * Recurring: (RCUR) Direct debit instruction to carry out regular direct
            debit transactions initiated by the creditor.

            * Final: (FNAL) Last/final collection in a series of direct debit instructions.


            Example: OOFF'
          type: string
      type: object
    SDKEphemPubKey:
      additionalProperties: false
      properties:
        crv:
          description: The `crv` value as received from the 3D Secure 2 SDK.
          type: string
        kty:
          description: The `kty` value as received from the 3D Secure 2 SDK.
          type: string
        x:
          description: The `x` value as received from the 3D Secure 2 SDK.
          type: string
        y:
          description: The `y` value as received from the 3D Secure 2 SDK.
          type: string
      type: object
    ServiceError:
      additionalProperties: false
      properties:
        errorCode:
          description: The error code mapped to the error message.
          type: string
        errorType:
          description: The category of the error.
          type: string
        message:
          description: A short explanation of the issue.
          type: string
        pspReference:
          description: The PSP reference of the payment.
          type: string
        status:
          description: The HTTP response status.
          format: int32
          type: integer
      type: object
    ShopperInteractionDevice:
      additionalProperties: false
      properties:
        locale:
          description: Locale on the shopper interaction device.
          type: string
        os:
          description: Operating system running on the shopper interaction device.
          type: string
        osVersion:
          description: Version of the operating system on the shopper interaction
            device.
          type: string
      type: object
    Split:
      additionalProperties: false
      properties:
        account:
          description: 'The unique identifier of the account to which the split amount
            is booked. Required if `type` is **MarketPlace** or **BalanceAccount**.


            * [Classic Platforms integration](https://docs.adyen.com/classic-platforms):
            The [`accountCode`](https://docs.adyen.com/api-explorer/Account/latest/post/updateAccount#request-accountCode)
            of the account to which the split amount is booked.

            * [Balance Platform](https://docs.adyen.com/adyen-for-platforms-model):
            The [`balanceAccountId`](https://docs.adyen.com/api-explorer/balanceplatform/latest/get/balanceAccounts/_id_#path-id)
            of the account to which the split amount is booked.'
          type: string
        amount:
          description: 'The amount of the split item.


            * Required for all split types in the [Classic Platforms integration](https://docs.adyen.com/classic-platforms).

            * Required if `type` is **BalanceAccount**, **Commission**, **Default**,
            or **VAT** in your [Balance Platform](https://docs.adyen.com/adyen-for-platforms-model)
            integration.'
          $ref: '#/components/schemas/SplitAmount'
        description:
          description: Your description for the split item.
          type: string
        reference:
          description: 'Your unique reference for the part of the payment booked to
            the specified `account`.


            This is required if `type` is **MarketPlace** ([Classic Platforms integration](https://docs.adyen.com/classic-platforms))
            or **BalanceAccount** ([Balance Platform](https://docs.adyen.com/adyen-for-platforms-model)).


            For the other types, we also recommend providing a **unique** reference
            so you can reconcile the split and the associated payment in the transaction
            overview and in the reports.'
          type: string
        type:
          description: "The part of the payment you want to book to the specified\
            \ `account`.\n\nPossible values for the [Balance Platform](https://docs.adyen.com/adyen-for-platforms-model):\n\
            * **BalanceAccount**: books part of the payment (specified in `amount`)\
            \ to the specified `account`.\n* Transaction fees types that you can book\
            \ to the specified `account`:\n   * **AcquiringFees**: the aggregated\
            \ amount of the interchange and scheme fees.\n   * **PaymentFee**: the\
            \ aggregated amount of all transaction fees.\n   * **AdyenFees**: the\
            \ aggregated amount of Adyen's commission and markup fees.\n   * **AdyenCommission**:\
            \ the transaction fees due to Adyen under [blended rates](https://www.adyen.com/knowledge-hub/interchange-fees-explained).\n\
            \   * **AdyenMarkup**: the transaction fees due to Adyen under [Interchange\
            \ ++ pricing](https://www.adyen.com/knowledge-hub/interchange-fees-explained).\n\
            \   * **Interchange**: the fees paid to the issuer for each payment made\
            \ with the card network.\n   * **SchemeFee**: the fees paid to the card\
            \ scheme for using their network. \n* **Commission**: your platform's\
            \ commission on the payment (specified in `amount`), booked to your liable\
            \ balance account.\n* **Remainder**: the amount left over after a currency\
            \ conversion, booked to the specified `account`.\n* **TopUp**: allows\
            \ you and your users to top up balance accounts using direct debit, card\
            \ payments, or other payment methods.\n* **VAT**: the value-added tax\
            \ charged on the payment, booked to your platforms liable balance account.\n\
            * **Commission**: your platform's commission (specified in `amount`) on\
            \ the payment, booked to your liable balance account.\n* **Default**:\
            \ in very specific use cases, allows you to book the specified `amount`\
            \ to the specified `account`. For more information, contact Adyen support.\n\
            \nPossible values for the [Classic Platforms integration](https://docs.adyen.com/classic-platforms):\
            \ **Commission**, **Default**, **MarketPlace**, **PaymentFee**, **VAT**."
          enum:
          - AcquiringFees
          - AdyenCommission
          - AdyenFees
          - AdyenMarkup
          - BalanceAccount
          - Commission
          - Default
          - Interchange
          - MarketPlace
          - PaymentFee
          - Remainder
          - SchemeFee
          - Surcharge
          - Tip
          - TopUp
          - VAT
          type: string
      required:
      - type
      type: object
    SplitAmount:
      additionalProperties: false
      properties:
        currency:
          description: The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
            By default, this is the original payment currency.
          maxLength: 3
          minLength: 3
          type: string
        value:
          description: The value of the split amount, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
          format: int64
          type: integer
      required:
      - value
      type: object
    TechnicalCancelRequest:
      additionalProperties: false
      properties:
        additionalData:
          additionalProperties:
            type: string
          x-anyOf:
          - $ref: '#/components/schemas/AdditionalData3DSecure'
          - $ref: '#/components/schemas/AdditionalDataAirline'
          - $ref: '#/components/schemas/AdditionalDataCarRental'
          - $ref: '#/components/schemas/AdditionalDataCommon'
          - $ref: '#/components/schemas/AdditionalDataLevel23'
          - $ref: '#/components/schemas/AdditionalDataLodging'
          - $ref: '#/components/schemas/AdditionalDataModifications'
          - $ref: '#/components/schemas/AdditionalDataOpenInvoice'
          - $ref: '#/components/schemas/AdditionalDataOpi'
          - $ref: '#/components/schemas/AdditionalDataRatepay'
          - $ref: '#/components/schemas/AdditionalDataRetry'
          - $ref: '#/components/schemas/AdditionalDataRisk'
          - $ref: '#/components/schemas/AdditionalDataRiskStandalone'
          - $ref: '#/components/schemas/AdditionalDataSubMerchant'
          - $ref: '#/components/schemas/AdditionalDataTemporaryServices'
          - $ref: '#/components/schemas/AdditionalDataWallets'
          description: 'This field contains additional data, which may be required
            for a particular modification request.


            The additionalData object consists of entries, each of which includes
            the key and value.'
          type: object
        merchantAccount:
          description: The merchant account that is used to process the payment.
          type: string
        modificationAmount:
          description: The amount that needs to be captured/refunded. Required for
            `/capture` and `/refund`, not allowed for `/cancel`. The `currency` must
            match the currency used in authorisation, the `value` must be smaller
            than or equal to the authorised amount.
          $ref: '#/components/schemas/Amount'
        originalMerchantReference:
          x-addedInVersion: '30'
          description: The original merchant reference to cancel.
          type: string
        reference:
          description: 'Your reference for the payment modification. This reference
            is visible in Customer Area and in reports.

            Maximum length: 80 characters.'
          type: string
        splits:
          x-addedInVersion: '37'
          description: An array of objects specifying how the amount should be split
            between accounts when using Adyen for Platforms. For more information,
            see how to split payments for [platforms](https://docs.adyen.com/platforms/automatic-split-configuration/).
          items:
            $ref: '#/components/schemas/Split'
          type: array
        tenderReference:
          x-addedInVersion: '25'
          description: The transaction reference provided by the PED. For point-of-sale
            integrations only.
          type: string
        uniqueTerminalId:
          x-addedInVersion: '25'
          description: Unique terminal ID for the PED that originally processed the
            request. For point-of-sale integrations only.
          type: string
      required:
      - merchantAccount
      - originalMerchantReference
      type: object
    ThreeDS2RequestData:
      additionalProperties: false
      properties:
        authenticationOnly:
          default: false
          description: If set to true, you will only perform the [3D Secure 2 authentication](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only),
            and not the payment authorisation.
          type: boolean
        challengeIndicator:
          description: 'Possibility to specify a preference for receiving a challenge
            from the issuer.

            Allowed values:

            * `noPreference`

            * `requestNoChallenge`

            * `requestChallenge`

            * `requestChallengeAsMandate`

            '
          enum:
          - noPreference
          - requestNoChallenge
          - requestChallenge
          - requestChallengeAsMandate
          type: string
        deviceChannel:
          description: 'The environment of the shopper.

            Allowed values:

            * `app`

            * `browser`'
          type: string
        deviceRenderOptions:
          description: 'Display options for the 3D Secure 2 SDK.

            Optional and only for `deviceChannel` **app**.'
          $ref: '#/components/schemas/DeviceRenderOptions'
        messageVersion:
          description: The `messageVersion` value indicating the 3D Secure 2 protocol
            version.
          type: string
        notificationURL:
          description: URL to where the issuer should send the `CRes`. Required if
            you are not using components for `channel` **Web** or if you are using
            classic integration `deviceChannel` **browser**.
          type: string
        sdkAppID:
          description: 'The `sdkAppID` value as received from the 3D Secure 2 SDK.

            Required for `deviceChannel` set to **app**.'
          type: string
        sdkEncData:
          description: 'The `sdkEncData` value as received from the 3D Secure 2 SDK.

            Required for `deviceChannel` set to **app**.'
          type: string
        sdkEphemPubKey:
          description: 'The `sdkEphemPubKey` value as received from the 3D Secure
            2 SDK.

            Required for `deviceChannel` set to **app**.'
          $ref: '#/components/schemas/SDKEphemPubKey'
        sdkMaxTimeout:
          default: 60
          description: 'The maximum amount of time in minutes for the 3D Secure 2
            authentication process.

            Optional and only for `deviceChannel` set to **app**. Defaults to **60**
            minutes.'
          format: int32
          type: integer
        sdkReferenceNumber:
          description: 'The `sdkReferenceNumber` value as received from the 3D Secure
            2 SDK.

            Only for `deviceChannel` set to **app**.'
          type: string
        sdkTransID:
          description: 'The `sdkTransID` value as received from the 3D Secure 2 SDK.

            Only for `deviceChannel` set to **app**.'
          type: string
        sdkVersion:
          x-addedInVersion: '40'
          description: "Version of the 3D Secure 2 mobile SDK. \nOnly for `deviceChannel`\
            \ set to **app**."
          type: string
        threeDSCompInd:
          description: Completion indicator for the device fingerprinting.
          type: string
        threeDSRequestorID:
          description: Required for [authentication-only integration](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only)
            for Visa. Unique 3D Secure requestor identifier assigned by the Directory
            Server when you enrol for 3D Secure 2.
          type: string
        threeDSRequestorName:
          description: Required for [authentication-only integration](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only)
            for Visa. Unique 3D Secure requestor name assigned by the Directory Server
            when you enrol for 3D Secure 2.
          type: string
        threeDSRequestorURL:
          description: URL of the (customer service) website that will be shown to
            the shopper in case of technical errors during the 3D Secure 2 process.
          type: string
      required:
      - deviceChannel
      type: object
    ThreeDS2Result:
      additionalProperties: false
      properties:
        authenticationValue:
          description: The `authenticationValue` value as defined in the 3D Secure
            2 specification.
          type: string
        dsTransID:
          description: The `dsTransID` value as defined in the 3D Secure 2 specification.
          type: string
        eci:
          description: The `eci` value as defined in the 3D Secure 2 specification.
          type: string
        threeDSServerTransID:
          description: The `threeDSServerTransID` value as defined in the 3D Secure
            2 specification.
          type: string
        timestamp:
          description: The `timestamp` value of the 3D Secure 2 authentication.
          type: string
        transStatus:
          description: The `transStatus` value as defined in the 3D Secure 2 specification.
          type: string
        transStatusReason:
          description: Provides information on why the `transStatus` field has the
            specified value. For possible values, refer to [our docs](https://docs.adyen.com/online-payments/3d-secure/api-reference#possible-transstatusreason-values).
          type: string
      type: object
    ThreeDS2ResultRequest:
      additionalProperties: false
      properties:
        merchantAccount:
          description: The merchant account identifier, with which you want to process
            the transaction.
          type: string
        pspReference:
          description: The pspReference returned in the /authorise call.
          type: string
      required:
      - merchantAccount
      - pspReference
      type: object
    ThreeDS2ResultResponse:
      additionalProperties: false
      properties:
        threeDS2Result:
          description: The result of the 3D Secure 2 authentication.
          $ref: '#/components/schemas/ThreeDS2Result'
      type: object
    ThreeDSecureData:
      additionalProperties: false
      properties:
        authenticationResponse:
          description: 'In 3D Secure 2, this is the `transStatus` from the challenge
            result. If the transaction was frictionless, omit this parameter.


            '
          enum:
          - Y
          - N
          - U
          - A
          type: string
        cavv:
          description: The cardholder authentication value (base64 encoded, 20 bytes
            in a decoded form).
          format: byte
          type: string
        cavvAlgorithm:
          description: The CAVV algorithm used. Include this only for 3D Secure 1.
          type: string
        directoryResponse:
          description: 'In 3D Secure 2, this is the `transStatus` from the `ARes`.


            '
          enum:
          - A
          - C
          - D
          - I
          - N
          - R
          - U
          - Y
          type: string
        dsTransID:
          x-addedInVersion: '40'
          description: Supported for 3D Secure 2. The unique transaction identifier
            assigned by the Directory Server (DS) to identify a single transaction.
          type: string
        eci:
          description: The electronic commerce indicator.
          type: string
        threeDSVersion:
          x-addedInVersion: '40'
          description: The version of the 3D Secure protocol.
          type: string
        xid:
          description: Supported for 3D Secure 1. The transaction identifier (Base64-encoded,
            20 bytes in a decoded form).
          format: byte
          type: string
      type: object
    VoidPendingRefundRequest:
      additionalProperties: false
      properties:
        additionalData:
          additionalProperties:
            type: string
          x-anyOf:
          - $ref: '#/components/schemas/AdditionalData3DSecure'
          - $ref: '#/components/schemas/AdditionalDataAirline'
          - $ref: '#/components/schemas/AdditionalDataCarRental'
          - $ref: '#/components/schemas/AdditionalDataCommon'
          - $ref: '#/components/schemas/AdditionalDataLevel23'
          - $ref: '#/components/schemas/AdditionalDataLodging'
          - $ref: '#/components/schemas/AdditionalDataModifications'
          - $ref: '#/components/schemas/AdditionalDataOpenInvoice'
          - $ref: '#/components/schemas/AdditionalDataOpi'
          - $ref: '#/components/schemas/AdditionalDataRatepay'
          - $ref: '#/components/schemas/AdditionalDataRetry'
          - $ref: '#/components/schemas/AdditionalDataRisk'
          - $ref: '#/components/schemas/AdditionalDataRiskStandalone'
          - $ref: '#/components/schemas/AdditionalDataSubMerchant'
          - $ref: '#/components/schemas/AdditionalDataTemporaryServices'
          - $ref: '#/components/schemas/AdditionalDataWallets'
          description: 'This field contains additional data, which may be required
            for a particular modification request.


            The additionalData object consists of entries, each of which includes
            the key and value.'
          type: object
        merchantAccount:
          description: The merchant account that is used to process the payment.
          type: string
        modificationAmount:
          description: The amount that needs to be captured/refunded. Required for
            `/capture` and `/refund`, not allowed for `/cancel`. The `currency` must
            match the currency used in authorisation, the `value` must be smaller
            than or equal to the authorised amount.
          $ref: '#/components/schemas/Amount'
        originalMerchantReference:
          x-addedInVersion: '30'
          description: The original merchant reference to cancel.
          type: string
        originalReference:
          description: 'The original pspReference of the payment to modify.

            This reference is returned in:

            * authorisation response

            * authorisation notification


            '
          type: string
        reference:
          description: 'Your reference for the payment modification. This reference
            is visible in Customer Area and in reports.

            Maximum length: 80 characters.'
          type: string
        splits:
          x-addedInVersion: '37'
          description: An array of objects specifying how the amount should be split
            between accounts when using Adyen for Platforms. For more information,
            see how to split payments for [platforms](https://docs.adyen.com/platforms/automatic-split-configuration/).
          items:
            $ref: '#/components/schemas/Split'
          type: array
        tenderReference:
          x-addedInVersion: '25'
          description: The transaction reference provided by the PED. For point-of-sale
            integrations only.
          type: string
        uniqueTerminalId:
          x-addedInVersion: '25'
          description: Unique terminal ID for the PED that originally processed the
            request. For point-of-sale integrations only.
          type: string
      required:
      - merchantAccount
      type: object
  securitySchemes:
    ApiKeyAuth:
      in: header
      name: X-API-Key
      type: apiKey
    BasicAuth:
      scheme: basic
      type: http
  examples:
    generic-400:
      summary: Response code 400. Bad request.
      value:
        status: 400
        errorCode: '702'
        message: 'Unexpected input: ", expected: }'
        errorType: validation
    generic-401:
      summary: Response code 401. Unauthorized.
      value:
        status: 401
        errorCode: '000'
        message: HTTP Status Response - Unauthorized
        errorType: security
    generic-500:
      summary: Response code 500. Internal server error.
      value:
        status: 500
        errorCode: '905'
        message: Payment details are not supported
        errorType: configuration
        pspReference: '8516091485743033'
    post-adjustAuthorisation-adjustAuthorisation:
      summary: Increases or decreases the authorised amount
      value:
        originalReference: COPY_PSP_REFERENCE_FROM_AUTHORISE_RESPONSE
        modificationAmount:
          currency: USD
          value: 1700
        reference: YourModificationReference
        merchantAccount: YOUR_MERCHANT_ACCOUNT
    post-adjustAuthorisation-adjustAuthorisation-200:
      summary: Example response for request 'adjustAuthorisation'
      value:
        pspReference: 851617892360718D
        response: '[adjustAuthorisation-received]'
    post-authorise-authorise-3d-secure-2:
      summary: Make a card payment with 3D Secure 2 native authentication
      value:
        amount:
          currency: USD
          value: 1500
        merchantAccount: YOUR_MERCHANT_ACCOUNT
        reference: YOUR_REFERENCE_NUMBER
        threeDS2RequestData:
          deviceChannel: browser
          notificationURL: https://www.example.com/YOUR_3DS_NOTIFICATION_URL
        browserInfo:
          userAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36
            (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36
          acceptHeader: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
          language: en
          colorDepth: 24
          screenHeight: 723
          screenWidth: 1536
          timeZoneOffset: 0
          javaEnabled: false
        billingAddress:
          country: US
          city: New York
          street: Redwood Block
          houseNumberOrName: 37C
          stateOrProvince: NY
          postalCode: '10039'
        accountInfo:
          accountCreationDate: '2019-01-17T13:42:40+01:00'
        shopperEmail: s.hopper@test.com
        shopperIP: 192.0.2.1
        card:
          cvc: '737'
          expiryMonth: '03'
          expiryYear: '2030'
          holderName: John Smith
          number: '4917610000000000'
    post-authorise-authorise-3dsecure:
      summary: Initiate a 3D Secure payment
      value:
        amount:
          value: 1500
          currency: EUR
        browserInfo:
          userAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36
            (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36
          acceptHeader: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
          language: en
          colorDepth: 24
          screenHeight: 723
          screenWidth: 1536
          timeZoneOffset: 0
          javaEnabled: false
        card:
          number: '5212345678901234'
          expiryMonth: '03'
          expiryYear: '2030'
          cvc: '737'
          holderName: John Smith
        reference: YOUR_REFERENCE
        merchantAccount: YOUR_MERCHANT_ACCOUNT
    post-authorise-authorise-card:
      summary: Authorise a card payment
      value:
        card:
          number: '4111111111111111'
          expiryMonth: '03'
          expiryYear: '2030'
          cvc: '737'
          holderName: John Smith
        amount:
          value: 1500
          currency: EUR
        reference: YOUR_REFERENCE
        merchantAccount: YOUR_MERCHANT_ACCOUNT
    post-authorise-authorise-recurringcontauth:
      summary: Authorise a recurring payment
      value:
        amount:
          value: 2000
          currency: EUR
        reference: YOUR_REFERENCE
        shopperEmail: s.hopper@test.com
        shopperIP: 61.294.12.12
        shopperReference: YOUR_SHOPPER_REFERENCE
        selectedRecurringDetailReference: LATEST
        recurring:
          contract: RECURRING
        shopperInteraction: ContAuth
        merchantAccount: YOUR_MERCHANT_ACCOUNT
    post-authorise-authorise-recurringoneclick:
      summary: Authorise a one-click payment
      value:
        amount:
          value: 2000
          currency: EUR
        card:
          cvc: '737'
        reference: YOUR_REFERENCE
        shopperEmail: s.hopper@test.com
        shopperIP: 61.294.12.12
        shopperReference: YOUR_SHOPPER_REFERENCE
        selectedRecurringDetailReference: LATEST
        recurring:
          contract: ONECLICK
        shopperInteraction: Ecommerce
        merchantAccount: YOUR_MERCHANT_ACCOUNT
    post-authorise-authorise-recurringstore:
      summary: Store card details for recurring payments
      value:
        amount:
          value: 2000
          currency: EUR
        card:
          number: '4111111111111111'
          expiryMonth: '03'
          expiryYear: '2030'
          cvc: '737'
          holderName: John Smith
        reference: YOUR_REFERENCE
        shopperEmail: s.hopper@test.com
        shopperIP: 61.294.12.12
        shopperReference: YOUR_SHOPPER_REFERENCE
        recurring:
          contract: RECURRING
        merchantAccount: YOUR_MERCHANT_ACCOUNT
    post-authorise-authorise-split:
      summary: Split a payment between a sub-merchant and a platform account
      value:
        card:
          number: '4111111111111111'
          cvc: '737'
          expiryMonth: '03'
          expiryYear: '2030'
          holderName: John Smith
        amount:
          value: 6200
          currency: EUR
        reference: YOUR_ORDER_NUMBER
        merchantAccount: YOUR_MERCHANT_ACCOUNT
        splits:
        - amount:
            value: 6000
          type: MarketPlace
          account: '151272963'
          reference: '6124145'
          description: 'Porcelain Doll: Eliza (20cm)'
        - amount:
            value: 200
          type: Commission
          reference: '6124146'
    post-authorise3d-authorise3d:
      summary: Complete a 3D Secure payment
      value:
        md: 31h..........vOXek7w
        paResponse: eNqtmF........wGVA4Ch
        shopperIP: 61.294.12.12
        merchantAccount: YOUR_MERCHANT_ACCOUNT
    post-authorise3ds2-authorise3ds2:
      summary: Submit 3D Secure 2 authentication data to the issuer
      value:
        merchantAccount: YOUR_MERCHANT_ACCOUNT
        amount:
          currency: EUR
          value: 1000
        reference: YOUR_ORDER_NUMBER
        threeDS2RequestData:
          deviceChannel: app
          threeDSCompInd: Y
        threeDS2Token: "\u2014 - BINARY DATA - -"
    post-cancel-cancel:
      summary: Cancel an authorised payment
      value:
        originalReference: COPY_PSP_REFERENCE_FROM_AUTHORISE_RESPONSE
        reference: YourModificationReference
        merchantAccount: YOUR_MERCHANT_ACCOUNT
    post-cancelOrRefund-cancelOrRefund:
      summary: Cancel or refund a payment
      value:
        originalReference: COPY_PSP_REFERENCE_FROM_AUTHORISE_RESPONSE
        reference: YourModificationReference
        merchantAccount: YOUR_MERCHANT_ACCOUNT
    post-cancelOrRefund-cancelOrRefund-200:
      summary: Example response for request 'cancelOrRefund'
      value:
        pspReference: 851617892359708H
        response: '[cancelOrRefund-received]'
    post-capture-capture:
      summary: Capture an authorised payment
      value:
        originalReference: COPY_PSP_REFERENCE_FROM_AUTHORISE_RESPONSE
        modificationAmount:
          value: 500
          currency: EUR
        reference: YOUR_REFERENCE
        merchantAccount: YOUR_MERCHANT_ACCOUNT
    post-capture-capture-200:
      summary: Example response for request 'capture'
      value:
        pspReference: 861617892359057J
        response: '[capture-received]'
    post-donate-donate:
      summary: Create a payment for the specified donation
      value:
        originalReference: COPY_PSP_REFERENCE_FROM_AUTHORISE_RESPONSE
        modificationAmount:
          value: 500
          currency: EUR
        reference: YOUR_DONATION_REFERENCE
        donationAccount: AdyenGivingDemo
        merchantAccount: YOUR_MERCHANT_ACCOUNT
    post-refund-refund:
      summary: Refund a captured payment
      value:
        originalReference: COPY_PSP_REFERENCE_FROM_AUTHORISE_RESPONSE
        modificationAmount:
          value: 500
          currency: EUR
        reference: YOUR_REFERENCE
        merchantAccount: YOUR_MERCHANT_ACCOUNT
    post-refund-refund-200:
      summary: Example response for request 'refund'
      value:
        pspReference: 861617892360059B
        response: '[refund-received]'
    post-retrieve3ds2Result-retrieve3ds2Result:
      summary: Retrieve authentication details after doing a 3D Secure 2 authentication
        only
      value:
        merchantAccount: YOUR_MERCHANT_ACCOUNT
        pspReference: '9935272408535455'
    post-technicalCancel-technicalCancel:
      summary: Cancel a payment without a PSP reference
      value:
        originalMerchantReference: YOUR_MERCHANT_REFERENCE
        reference: YOUR_MODIFICATION_REFERENCE
        merchantAccount: YOUR_MERCHANT_ACCOUNT
    post-technicalCancel-technicalCancel-200:
      summary: Example response for request 'technicalCancel'
      value:
        pspReference: 881617892361436J
        response: '[technical-cancel-received]'
    post-voidPendingRefund-voidpendingrefund-pspreference:
      summary: Cancel a POS refund request with PSP reference before it has been completed
      value:
        merchantAccount: YOUR_MERCHANT_ACCOUNT
        originalReference: '9914748988390044'
    post-voidPendingRefund-voidpendingrefund-pspreference-200:
      summary: Example response for request 'voidpendingrefund-pspreference'
      value:
        pspReference: 861617892360062F
        response: '[voidPendingRefund-received]'
    post-voidPendingRefund-voidpendingrefund-tenderreference:
      summary: Cancels a POS refund request with tender reference before it has been
        completed
      value:
        merchantAccount: YOUR_MERCHANT_ACCOUNT
        tenderReference: 5Iw8001176969533005
        uniqueTerminalId: VX820-123456789
    post-voidPendingRefund-voidpendingrefund-tenderreference-200:
      summary: Example response for request 'voidpendingrefund-tenderreference'
      value:
        pspReference: 881617892360409G
        response: '[voidPendingRefund-received]'
