Adyen Refund API

The Refund API from Adyen — 1 operation(s) for refund.

Operations 1

POST /refund Adyen Refund a Captured Payment #

Documentation

📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/classic/configure-notifications/
📖
Documentation
https://docs.adyen.com/api-explorer/Account/6/overview
📖
Documentation
https://docs.adyen.com/development-resources/webhooks/
📖
Documentation
https://docs.adyen.com/api-explorer/BalanceControl/1/overview
📖
Documentation
https://docs.adyen.com/api-explorer/BinLookup/52/overview
📖
Documentation
https://docs.adyen.com/api-explorer/Checkout/71/overview
📖
Documentation
https://docs.adyen.com/api-explorer/balanceplatform/2/overview
📖
Documentation
https://docs.adyen.com/api-explorer/balanceplatform-webhooks/1/overview
📖
Documentation
https://docs.adyen.com/development-resources/data-protection-api/
📖
Documentation
https://docs.adyen.com/risk-management/disputes-api
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/classic/fund-transfer/
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/collect-verification-details/hosted/
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/legal-entity-management-api/
📖
Documentation
https://docs.adyen.com/api-explorer/Management/3/overview
📖
Documentation
https://docs.adyen.com/api-explorer/management-webhooks/3/overview
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/classic/notifications
📖
Documentation
https://docs.adyen.com/point-of-sale/design-your-integration/notifications/
📖
Documentation
https://docs.adyen.com/online-payments/
📖
Documentation
https://docs.adyen.com/online-payments/online-payouts
📖
Documentation
https://docs.adyen.com/point-of-sale/design-your-integration/terminal-api/
📖
Documentation
https://docs.adyen.com/online-payments/tokenization
📖
Documentation
https://docs.adyen.com/api-explorer/report-webhooks/1/overview
📖
Documentation
https://docs.adyen.com/payment-methods/gift-cards/stored-value-api/
📖
Documentation
https://docs.adyen.com/point-of-sale/design-your-integration/terminal-api/terminal-api-reference/
📖
Documentation
https://docs.adyen.com/development-resources/testing/create-test-cards
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/business-accounts/transactions/transaction-webhooks/
📖
Documentation
https://docs.adyen.com/api-explorer/transfer-webhooks/3/overview
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/payout-to-users/on-demand-payouts
📖
Documentation
https://docs.adyen.com/development-resources/webhooks

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/adyen-refund-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

adyen-refund-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: '68'
  x-publicVersion: true
  title: Adyen Payment Refund 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/v68/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/v68/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
servers:
- url: https://pal-test.adyen.com/pal/servlet/Payment/v68
tags:
- name: Refund
paths:
  /refund:
    post:
      tags:
      - Refund
      summary: Adyen 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'
              examples:
                post-refund403Example:
                  summary: Default post-refund 403 response
                  x-microcks-default: true
                  value:
                    additionalData: {}
                    errorCode: CODE123
                    errorType: standard
                    message: example_value
                    pspReference: REF-001
                    status: 500
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
              examples:
                post-refund422Example:
                  summary: Default post-refund 422 response
                  x-microcks-default: true
                  value:
                    additionalData: {}
                    errorCode: CODE123
                    errorType: standard
                    message: example_value
                    pspReference: REF-001
                    status: 500
          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.
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  examples:
    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]'
    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'
    generic-400:
      summary: Response code 400. Bad request.
      value:
        status: 400
        errorCode: '702'
        message: 'Unexpected input: ", expected: }'
        errorType: validation
  schemas:
    PlatformChargebackLogic:
      properties:
        behavior:
          x-addedInVersion: '68'
          description: 'The method of handling the chargeback.


            Possible values: **deductFromLiableAccount**, **deductFromOneBalanceAccount**, **deductAccordingToSplitRatio**.'
          enum:
          - deductAccordingToSplitRatio
          - deductFromLiableAccount
          - deductFromOneBalanceAccount
          type: string
        costAllocationAccount:
          x-addedInVersion: '68'
          description: The unique identifier of the balance account to which the chargeback fees are booked. By default, the chargeback fees are booked to your liable balance account.
          type: string
        targetAccount:
          x-addedInVersion: '68'
          description: 'The unique identifier of the balance account against which the disputed amount is booked.


            Required if `behavior` is **deductFromOneBalanceAccount**.'
          type: string
      type: object
    AdditionalData3DSecure:
      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)\nor send the `executeThreeD` parameter.\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 still selects the version of 3D Secure based on configuration to optimize authorisation rates and improve the shopper's experience.\n* **false** – Not ready to support native 3D Secure 2 authentication. Adyen will not offer 3D Secure 2 to your shopper regardless of 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** – Perform 3D Secure authentication.\n* **false** – 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* **1.0.2**: Apply 3D Secure version 1.0.2. \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. For example, if the configuration is to fall back to 3D Secure 1, we will apply version 1.0.2.\n* If you prefer 2.1.0 or 2.2.0 but the BIN is not enrolled, you will receive an error.\n\n"
          type: string
      type: object
    AdditionalDataRiskStandalone:
      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:

            * **Eligible** — Merchant is protected by PayPal''s Seller Protection Policy for Unauthorized Payments and Item Not Received.


            * **PartiallyEligible** — Merchant is protected by PayPal''s Seller Protection Policy for Item Not Received.


            * **Ineligible** — 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/risk-management/standalone-risk#tokenised-pan-request).
          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
    AdditionalDataModifications:
      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
    AdditionalDataCarRental:
      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
    Amount:
      properties:
        currency:
          description: The three-character [ISO currency code](https://docs.adyen.com/development-resources/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).
          format: int64
          type: integer
      required:
      - value
      - currency
      type: object
    AdditionalDataRatepay:
      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:
      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
    AdditionalDataCommon:
      properties:
        RequestedTestErrorResponseCode:
          description: 'Triggers test scenarios that allow to replicate certain communication errors.


            Allowed values:

            * **NO_CONNECTION_AVAILABLE** – There wasn''t a connection available to service the outgoing communication.

            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.

            * **IOEXCEPTION_RECEIVED** – Something went wrong during transmission of the message or receiving the response.

            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. \nIf a payment was partially authorised, the response includes resultCode: PartiallyAuthorised and the authorised amount in additionalData.authorisedAmountValue.\nTo 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).


            Allowed values:

            * **PreAuth** – flags the payment request to be handled as a pre-authorisation.

            * **FinalAuth** – flags the payment request to be handled as a final authorisation.'
          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
        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
        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
        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
    AdditionalDataOpenInvoice:
      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.recipientFir

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