openapi: 3.1.0
info:
  version: '1'
  x-publicVersion: true
  title: Notification webhooks
  description: "Adyen sends notifications through webhooks to inform your system about\
    \ events that occur in the balance platform. These events include, for example,\
    \ a card user making a payment, or a merchant starting a refund. \nWhen an event\
    \ occurs, Adyen makes an HTTP POST request to a URL on your server and includes\
    \ the details of the event in the request body.\n\nYou can use the webhooks to\
    \ build your implementation. For example, you can use this information to update\
    \ balances in your own dashboards or to keep track of incoming funds."
  x-timestamp: '2022-09-19T22:19:02Z'
  termsOfService: https://www.adyen.com/legal/terms-and-conditions
  contact:
    name: Adyen Developer Experience team
    url: https://www.adyen.help/hc/en-us/community/topics
    email: developer-experience@adyen.com
x-groups:
- Account holder and balance account
- Payment Instrument
- Authorisation, refund, or transfer requests
- Fund movements
- Reports
tags: []
x-staticResponse: response.json
webhooks:
  balancePlatform.accountHolder.created:
    post:
      tags:
      - Account holder and balance account
      summary: Account holder created
      description: Adyen sends this webhook when you successfully [create an account
        holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/accountHolders).
      operationId: post-balancePlatform.accountHolder.created
      x-groupName: Account holder and balance account
      x-sortIndex: 5
      security:
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              balancePlatform-accountHolder-created:
                $ref: '#/components/examples/post-balancePlatform.accountHolder.created-balancePlatform-accountHolder-created'
            schema:
              $ref: '#/components/schemas/AccountHolderNotificationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                balancePlatform-accountHolder-created:
                  $ref: '#/components/examples/WebhookAck'
              schema:
                $ref: '#/components/schemas/BalancePlatformNotificationResponse'
          description: OK - the request has succeeded.
  balancePlatform.accountHolder.updated:
    post:
      tags:
      - Account holder and balance account
      summary: Account holder updated
      description: Adyen sends this webhook when you successfully [update an account
        holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/patch/accountHolders/{id}).
      operationId: post-balancePlatform.accountHolder.updated
      x-groupName: Account holder and balance account
      x-sortIndex: 5
      security:
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              balancePlatform-accountHolder-updated:
                $ref: '#/components/examples/post-balancePlatform.accountHolder.updated-balancePlatform-accountHolder-updated'
            schema:
              $ref: '#/components/schemas/AccountHolderNotificationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                balancePlatform-accountHolder-updated:
                  $ref: '#/components/examples/WebhookAck'
              schema:
                $ref: '#/components/schemas/BalancePlatformNotificationResponse'
          description: OK - the request has succeeded.
  balancePlatform.balanceAccount.created:
    post:
      tags:
      - Account holder and balance account
      summary: Balance account created
      description: Adyen sends this webhook when you successfully [create a balance
        account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts).
      operationId: post-balancePlatform.balanceAccount.created
      x-groupName: Account holder and balance account
      x-sortIndex: 5
      security:
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              balancePlatform-balanceAccount-created:
                $ref: '#/components/examples/post-balancePlatform.balanceAccount.created-balancePlatform-balanceAccount-created'
            schema:
              $ref: '#/components/schemas/BalanceAccountNotificationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                balancePlatform-balanceAccount-created:
                  $ref: '#/components/examples/WebhookAck'
              schema:
                $ref: '#/components/schemas/BalancePlatformNotificationResponse'
          description: OK - the request has succeeded.
  balancePlatform.balanceAccountSweep.created:
    post:
      tags:
      - Account holder and balance account
      summary: Balance account sweep created
      description: Adyen sends this webhook when you successfully [create a sweep](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts/{balanceAccountId}/sweeps).
      operationId: post-balancePlatform.balanceAccountSweep.created
      x-groupName: Account holder and balance account
      x-sortIndex: 6
      security:
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              balancePlatform-sweep-created:
                $ref: '#/components/examples/post-balancePlatform.balanceAccountSweep.created-balancePlatform-sweep-created'
            schema:
              $ref: '#/components/schemas/SweepConfigurationNotificationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                balancePlatform-sweep-created:
                  $ref: '#/components/examples/WebhookAck'
              schema:
                $ref: '#/components/schemas/BalancePlatformNotificationResponse'
          description: OK - the request has succeeded.
  balancePlatform.balanceAccountSweep.deleted:
    post:
      tags:
      - Account holder and balance account
      summary: Balance account sweep deleted
      description: Adyen sends this webhook when you successfully [delete a sweep](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/delete/balanceAccounts/{balanceAccountId}/sweeps/{sweepId}).
      operationId: post-balancePlatform.balanceAccountSweep.deleted
      x-groupName: Account holder and balance account
      x-sortIndex: 6
      security:
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              balancePlatform-sweep-deleted:
                $ref: '#/components/examples/post-balancePlatform.balanceAccountSweep.deleted-balancePlatform-sweep-deleted'
            schema:
              $ref: '#/components/schemas/SweepConfigurationNotificationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                balancePlatform-sweep-deleted:
                  $ref: '#/components/examples/WebhookAck'
              schema:
                $ref: '#/components/schemas/BalancePlatformNotificationResponse'
          description: OK - the request has succeeded.
  balancePlatform.balanceAccountSweep.updated:
    post:
      tags:
      - Account holder and balance account
      summary: Balance account sweep updated
      description: Adyen sends this webhook when you successfully [update a sweep](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/patch/balanceAccounts/{balanceAccountId}/sweeps/{sweepId}).
      operationId: post-balancePlatform.balanceAccountSweep.updated
      x-groupName: Account holder and balance account
      x-sortIndex: 6
      security:
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              balancePlatform-sweep-updated:
                $ref: '#/components/examples/post-balancePlatform.balanceAccountSweep.updated-balancePlatform-sweep-updated'
            schema:
              $ref: '#/components/schemas/SweepConfigurationNotificationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                balancePlatform-sweep-updated:
                  $ref: '#/components/examples/WebhookAck'
              schema:
                $ref: '#/components/schemas/BalancePlatformNotificationResponse'
          description: OK - the request has succeeded.
  balancePlatform.incomingTransfer.created:
    post:
      tags:
      - Fund movements
      summary: Incoming transfer created
      description: 'Adyen sends this webhook when there are incoming funds due to
        a refund or a fund transfer. Use the `paymentId` to link to the original refund
        request or funds transfer request. Check the content of the webhook to differentiate
        the events.


        * For refunds, the webhook includes the payment instrument to which funds
        will be refunded.


        * For incoming fund transfers, the webhook only includes information about
        the balance account.'
      x-addedInVersion: '1'
      operationId: post-balancePlatform.incomingTransfer.created
      x-groupName: Fund movements
      x-sortIndex: 1
      security:
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              balancePlatform-incomingTransfer-created:
                $ref: '#/components/examples/post-balancePlatform.incomingTransfer.created-balancePlatform-incomingTransfer-created'
            schema:
              $ref: '#/components/schemas/IncomingTransferNotificationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                balancePlatform-incomingTransfer-created:
                  $ref: '#/components/examples/WebhookAck'
              schema:
                $ref: '#/components/schemas/BalancePlatformNotificationResponse'
          description: OK - the request has succeeded.
  balancePlatform.incomingTransfer.updated:
    post:
      tags:
      - Fund movements
      summary: Outgoing transfer updated
      description: "Adyen sends this webhook when funds were added to the balance\
        \ account. This could be due to a refund or a funds transfer. Use the `data.id`\
        \ to track the original incoming transfer resource in the `balancePlatform.incomingTransfer.created`\
        \ webhook.\n\nThe `status` field indicates the event that triggered the webhook.\
        \ \n\n* For refunds, the `status` is **Refunded**. \n\n* For incoming fund\
        \ transfers, the `status` is **IncomingTransfer**."
      x-addedInVersion: '1'
      operationId: post-balancePlatform.incomingTransfer.updated
      x-groupName: Fund movements
      x-sortIndex: 1
      security:
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              balancePlatform-incomingTransfer-updated:
                $ref: '#/components/examples/post-balancePlatform.incomingTransfer.updated-balancePlatform-incomingTransfer-updated'
            schema:
              $ref: '#/components/schemas/IncomingTransferNotificationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                balancePlatform-incomingTransfer-updated:
                  $ref: '#/components/examples/WebhookAck'
              schema:
                $ref: '#/components/schemas/BalancePlatformNotificationResponse'
          description: OK - the request has succeeded.
  balancePlatform.outgoingTransfer.created:
    post:
      tags:
      - Fund movements
      summary: Outgoing transfer created
      description: "Adyen sends this webhook when funds were deducted from a balance\
        \ account due to a capture or a funds transfer. Use the `paymentId` to link\
        \ to the original payment authorisation or funds transfer request.\n\nThe\
        \ `status` field indicates the event that triggered the webhook. \n\n* For\
        \ captures, the `status` will be **Captured**. \n\n* For outgoing fund transfers,\
        \ the `status` will be **OutgoingTransfer**."
      x-addedInVersion: '1'
      operationId: post-balancePlatform.outgoingTransfer.created
      x-groupName: Fund movements
      x-sortIndex: 1
      security:
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              balancePlatform-outgoingTransfer-created:
                $ref: '#/components/examples/post-balancePlatform.outgoingTransfer.created-balancePlatform-outgoingTransfer-created'
            schema:
              $ref: '#/components/schemas/OutgoingTransferNotificationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                balancePlatform-outgoingTransfer-created:
                  $ref: '#/components/examples/WebhookAck'
              schema:
                $ref: '#/components/schemas/BalancePlatformNotificationResponse'
          description: OK - the request has succeeded.
  balancePlatform.outgoingTransfer.updated:
    post:
      tags:
      - Fund movements
      summary: Outgoing transfer updated
      description: 'Adyen sends this webhook when there is updated information after
        funds have been deducted from a balance account. For example, if the fund
        transfer failed.


        Use the `data.id` to track the original outgoing transfer resource from the
        `balancePlatform.outgoingTransfer.created` webhook.'
      x-addedInVersion: '1'
      operationId: post-balancePlatform.outgoingTransfer.updated
      x-groupName: Fund movements
      x-sortIndex: 1
      security:
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              balancePlatform-outgoingTransfer-updated:
                $ref: '#/components/examples/post-balancePlatform.outgoingTransfer.updated-balancePlatform-outgoingTransfer-updated'
            schema:
              $ref: '#/components/schemas/OutgoingTransferNotificationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                balancePlatform-outgoingTransfer-updated:
                  $ref: '#/components/examples/WebhookAck'
              schema:
                $ref: '#/components/schemas/BalancePlatformNotificationResponse'
          description: OK - the request has succeeded.
  balancePlatform.payment.created:
    post:
      tags:
      - Authorisation, refund, or transfer requests
      summary: Payment authorisation, refund, or funds transfer initiated
      description: "Adyen sends this webhook when a payment authorisation, a refund,\
        \ or a funds transfer has been initiated. This webhook only informs your server\
        \ of requests. For the actual fund movements, you'll get the information from\
        \ the subsequent outgoing or incoming transfer webhooks.\n\n To differentiate\
        \ the requests, check the content of the webhook.\n\n* For payments, the webhook\
        \ contains the authorisation result, information about the processing merchant,\
        \ and shows a negative amount.\n\n * For refunds, the webhook contains to\
        \ which payment instrument the funds will be refunded, and shows a positive\
        \ amount.\n\n* For outgoing or incoming fund transfers, the webhook shows\
        \ a positive or negative amount depending on the direction of the transfer,\
        \ and only includes information about the balance account."
      x-addedInVersion: '1'
      operationId: post-balancePlatform.payment.created
      x-groupName: Authorisation, refund, or transfer requests
      x-sortIndex: 1
      security:
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              balancePlatform-payment-created-authorized:
                $ref: '#/components/examples/post-balancePlatform.payment.created-balancePlatform-payment-created-authorized'
              balancePlatform-payment-created-funds-transfer:
                $ref: '#/components/examples/post-balancePlatform.payment.created-balancePlatform-payment-created-funds-transfer'
              balancePlatform-payment-created-refund-requested:
                $ref: '#/components/examples/post-balancePlatform.payment.created-balancePlatform-payment-created-refund-requested'
              balancePlatform-payment-created-rejected:
                $ref: '#/components/examples/post-balancePlatform.payment.created-balancePlatform-payment-created-rejected'
            schema:
              $ref: '#/components/schemas/PaymentNotificationRequest-2'
      responses:
        '200':
          content:
            application/json:
              examples:
                balancePlatform-payment-created-authorized:
                  $ref: '#/components/examples/WebhookAck'
                balancePlatform-payment-created-funds-transfer:
                  $ref: '#/components/examples/WebhookAck'
                balancePlatform-payment-created-refund-requested:
                  $ref: '#/components/examples/WebhookAck'
                balancePlatform-payment-created-rejected:
                  $ref: '#/components/examples/WebhookAck'
              schema:
                $ref: '#/components/schemas/BalancePlatformNotificationResponse'
          description: OK - the request has succeeded.
  balancePlatform.payment.updated:
    post:
      tags:
      - Authorisation, refund, or transfer requests
      summary: Payment authorisation expired or cancelled
      description: Adyen sends this webhook when a payment authorisation has expired
        or has been cancelled. Use the `data.id` to track the original payment authorisation
        from the `balancePlatform.payment.created` webhook.
      x-addedInVersion: '1'
      operationId: post-balancePlatform.payment.updated
      x-groupName: Authorisation, refund, or transfer requests
      x-sortIndex: 1
      security:
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              balancePlatform-payment-updated-expired:
                $ref: '#/components/examples/post-balancePlatform.payment.updated-balancePlatform-payment-updated-expired'
              balancePlatform-payment-updated-partially-cancelled:
                $ref: '#/components/examples/post-balancePlatform.payment.updated-balancePlatform-payment-updated-partially-cancelled'
              balancePlatform-payment-updated-partially-expired:
                $ref: '#/components/examples/post-balancePlatform.payment.updated-balancePlatform-payment-updated-partially-expired'
            schema:
              $ref: '#/components/schemas/PaymentNotificationRequest-2'
      responses:
        '200':
          content:
            application/json:
              examples:
                balancePlatform-payment-updated-expired:
                  $ref: '#/components/examples/WebhookAck'
                balancePlatform-payment-updated-partially-cancelled:
                  $ref: '#/components/examples/WebhookAck'
                balancePlatform-payment-updated-partially-expired:
                  $ref: '#/components/examples/WebhookAck'
              schema:
                $ref: '#/components/schemas/BalancePlatformNotificationResponse'
          description: OK - the request has succeeded.
  balancePlatform.paymentInstrument.created:
    post:
      tags:
      - Payment Instrument
      summary: Payment instrument created
      description: "Adyen sends this webhook when you successfully [create a payment\
        \ instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/paymentInstruments).\
        \ \n>The notification does not include the card number when creating virtual\
        \ cards. You can only get the card number in the POST response."
      operationId: post-balancePlatform.paymentInstrument.created
      x-groupName: Payment Instrument
      x-sortIndex: 3
      security:
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              balancePlatform-paymentInstrument-created:
                $ref: '#/components/examples/post-balancePlatform.paymentInstrument.created-balancePlatform-paymentInstrument-created'
            schema:
              $ref: '#/components/schemas/PaymentNotificationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                balancePlatform-paymentInstrument-created:
                  $ref: '#/components/examples/WebhookAck'
              schema:
                $ref: '#/components/schemas/BalancePlatformNotificationResponse'
          description: OK - the request has succeeded.
  balancePlatform.paymentInstrument.updated:
    post:
      tags:
      - Payment Instrument
      summary: Payment instrument updated
      description: 'Adyen sends this webhook when you successfully [update a payment
        instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/patch/paymentInstruments/{id}). '
      operationId: post-balancePlatform.paymentInstrument.updated
      x-groupName: Payment Instrument
      x-sortIndex: 3
      security:
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              balancePlatform-paymentInstrument-updated:
                $ref: '#/components/examples/post-balancePlatform.paymentInstrument.updated-balancePlatform-paymentInstrument-updated'
            schema:
              $ref: '#/components/schemas/PaymentNotificationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                balancePlatform-paymentInstrument-updated:
                  $ref: '#/components/examples/WebhookAck'
              schema:
                $ref: '#/components/schemas/BalancePlatformNotificationResponse'
          description: OK - the request has succeeded.
  balancePlatform.report.created:
    post:
      tags:
      - Reports
      summary: Report generated
      description: 'Adyen sends this webhook after a report is generated and ready
        to be downloaded. The webhook contains the URL at which the report can be
        downloaded.


        Before you download reports, ask your Adyen contact for your report credentials.
        You must use your the credentials to authenticate your GET request.'
      operationId: post-balancePlatform.report.created
      x-groupName: Reports
      x-sortIndex: 7
      security:
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              balancePlatform.report.created:
                $ref: '#/components/examples/post-balancePlatform.report.created-balancePlatform.report.created'
            schema:
              $ref: '#/components/schemas/ReportNotificationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                balancePlatform.report.created:
                  $ref: '#/components/examples/WebhookAck'
              schema:
                $ref: '#/components/schemas/BalancePlatformNotificationResponse'
          description: OK - the request has succeeded.
components:
  schemas:
    AccountHolder:
      properties:
        balancePlatform:
          description: The unique identifier of the [balance platform](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balancePlatforms/{id}__queryParam_id)
            to which the account holder belongs. Required in the request if your API
            credentials can be used for multiple balance platforms.
          type: string
        capabilities:
          additionalProperties:
            $ref: '#/components/schemas/AccountHolderCapability'
          description: Contains key-value pairs that specify the actions that an account
            holder can do in your platform. The key is a capability required for your
            integration. For example, **issueCard** for Issuing. The value is an object
            containing the settings for the capability.
          type: object
        contactDetails:
          description: Contact details of the account holder.
          $ref: '#/components/schemas/ContactDetails'
        description:
          description: Your description for the account holder, maximum 300 characters.
          maxLength: 300
          type: string
        id:
          description: The unique identifier of the account holder.
          type: string
        legalEntityId:
          description: The unique identifier of the [legal entity](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/legalEntities__resParam_id)
            associated with the account holder. Adyen performs a verification process
            against the legal entity of the account holder.
          type: string
        primaryBalanceAccount:
          description: The ID of the account holder's primary balance account. By
            default, this is set to the first balance account that you create for
            the account holder. To assign a different balance account, send a PATCH
            request.
          type: string
        reference:
          description: Your reference for the account holder, maximum 150 characters.
          maxLength: 150
          type: string
        status:
          description: "The status of the account holder.\n\nPossible values: \n\n\
            \ * **Active**: The account holder is active. This is the default status\
            \ when creating an account holder. \n\n * **Inactive**: The account holder\
            \ is temporarily inactive due to missing KYC details. You can set the\
            \ account back to active by providing the missing KYC details. \n\n *\
            \ **Suspended**: The account holder is permanently deactivated by Adyen.\
            \ This action cannot be undone. \n\n* **Closed**: The account holder is\
            \ permanently deactivated by you. This action cannot be undone."
          enum:
          - Active
          - Closed
          - Inactive
          - Suspended
          type: string
        timeZone:
          description: 'The [time zone](https://www.iana.org/time-zones) of the account
            holder. For example, **Europe/Amsterdam**.

            If not set, the time zone of the balance account will be used. For possible
            values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).'
          type: string
      required:
      - legalEntityId
      - id
    AccountHolderCapability:
      properties:
        allowed:
          description: Indicates whether the capability is allowed. Adyen sets this
            to **true** if the verification is successful and the account holder is
            permitted to use the capability.
          type: boolean
        allowedLevel:
          description: 'The capability level that is allowed for the account holder.


            Possible values: **notApplicable**, **low**, **medium**, **high**.'
          enum:
          - high
          - low
          - medium
          - notApplicable
          type: string
        allowedSettings:
          description: A JSON object containing the settings that are allowed for
            the account holder.
          $ref: '#/components/schemas/JSONObject'
        enabled:
          description: Indicates whether the capability is enabled. If **false**,
            the capability is temporarily disabled for the account holder.
          type: boolean
        problems:
          description: Contains verification errors and the actions that you can take
            to resolve them.
          items:
            $ref: '#/components/schemas/CapabilityProblem'
          type: array
        requested:
          description: Indicates whether the capability is requested. To check whether
            the account holder is permitted to use the capability, refer to the `allowed`
            field.
          type: boolean
        requestedLevel:
          description: 'The requested level of the capability. Some capabilities,
            such as those used in [card issuing](https://docs.adyen.com/issuing/add-capabilities#capability-levels),
            have different levels. Levels increase the capability, but also require
            additional checks and increased monitoring.


            Possible values: **notApplicable**, **low**, **medium**, **high**.'
          enum:
          - high
          - low
          - medium
          - notApplicable
          type: string
        requestedSettings:
          description: A JSON object containing the settings that were requested for
            the account holder.
          $ref: '#/components/schemas/JSONObject'
        verificationStatus:
          description: 'The status of the verification checks for the capability.


            Possible values:


            * **pending**: Adyen is running the verification.


            * **invalid**: The verification failed. Check if the `errors` array contains
            more information.


            * **valid**: The verification has been successfully completed.


            * **rejected**: Adyen has verified the information, but found reasons
            to not allow the capability.

            '
          enum:
          - invalid
          - pending
          - rejected
          - valid
          type: string
    AccountHolderNotificationData:
      properties:
        accountHolder:
          description: Contains information about the account holder resource that
            triggered the event.
          $ref: '#/components/schemas/AccountHolder'
        balancePlatform:
          description: Unique identifier of the balance platform.
          type: string
    AccountHolderNotificationRequest:
      properties:
        data:
          description: Contains event details.
          $ref: '#/components/schemas/AccountHolderNotificationData'
        environment:
          description: 'The environment from which the webhook originated.


            Possible values: **test**, **live**.'
          type: string
        type:
          description: Type of notification.
          enum:
          - balancePlatform.accountHolder.updated
          - balancePlatform.accountHolder.created
          type: string
      required:
      - environment
      - type
      - data
    Address:
      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
    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
    Authentication:
      properties:
        email:
          description: The email address where the one-time password (OTP) is sent.
          type: string
        password:
          description: "The password used for 3D Secure password-based authentication.\
            \ The value must be between 1 to 30 characters and must only contain the\
            \ following supported characters.\n\n* Characters between **a-z**, **A-Z**,\
            \ and **0-9**\n\n* Special characters: **\xE4\xF6\xFC\xDF\xC4\xD6\xDC\
            +-*/\xE7%()=?!~#'\",;:$&\xE0\xF9\xF2\xE2\xF4\xFB\xE1\xFA\xF3**"
          maxLength: 30
          minLength: 1
          type: string
        phone:
          description: 'The phone number where the one-time password (OTP) is sent.


            This object must have:


            * A `type` set to **mobile**.


            * A `number` with a valid country code.


            * A `number` with more than 4 digits, excluding the country code.


            >Make sure to verify that the card user owns the phone number.'
          $ref: '#/components/schemas/Phone'
    Balance:
      properties:
        available:
          description: The remaining amount available for spending.
          format: int64
          type: integer
        balance:
          description: The total amount in the balance.
          format: int64
          type: integer
        currency:
          description: The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)
            of the balance.
          type: string
        reserved:
          description: The amount reserved for payments that have been authorised,
            but have not been captured yet.
          format: int64
          type: integer
      required:
      - currency
      - balance
      - reserved
      - available
    BalanceAccount:
      properties:
        accountHolderId:
          description: The unique identifier of the [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/accountHolders__resParam_id)
            associated with the balance account.
          type: string
        balances:
          description: List of balances with the amount and currency.
          items:
            $ref: '#/components/schemas/Balance'
          type: array
        defaultCurrencyCode:
          description: 'The default three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)
            of the balance account.

            The default value is **EUR**.'
          type: string
        description:
          description: A human-readable description of the balance account, maximum
            300 characters. You can use this parameter to distinguish between multiple
            balance accounts under an account holder.
          maxLength: 300
          type: string
        id:
          description: The unique identifier of the balance account.
          type: string
        paymentInstruments:
          description: List of [payment instruments](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/paymentInstruments)
            associated with the balance account.
          items:
            $ref: '#/components/schemas/PaymentInstrumentReference'
          type: array
        reference:
          description: Your reference for the balance account, maximum 150 characters.
          maxLength: 150
          type: string
        status:
          description: "The status of the balance account, set to **Active** by default.\
            \ \n"
          enum:
          - Active
          - Closed
          - Inactive
          - Suspended
          type: string
        sweepConfigurations:
          additionalProperties:
            $ref: '#/components/schemas/SweepConfiguration'
          description: 'Contains key-value pairs that specify configurations for balance
            sweeps per currency code. A sweep pulls in or pushes out funds based on
            a defined schedule, amount, and a source (for pulling funds) or a destination
            (for pushing funds).


            The key must be a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)
            in uppercase. For example, **EUR**. The value must be an object containing
            the sweep configuration.'
          type: object
        timeZone:
          description: 'The [time zone](https://www.iana.org/time-zones) of the balance
            account. For example, **Europe/Amsterdam**.

            If not set, the time zone of the account holder will be used. For possible
            values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).'
          type: string
      required:
      - accountHolderId
      - id
    BalanceAccountNotificationData:
      properties:
        balanceAccount:
          $ref: '#/components/schemas/BalanceAccount'
        balancePlatform:
          description: Unique identifier of the balance platform.
          type: string
    BalanceAccountNotificationRequest:
      properties:
        data:
          description: Contains event details.
          $ref: '#/components/schemas/BalanceAccountNotificationData'
        environment:
          description: 'The environment from which the webhook originated.


            Possible values: **test**, **live**.'
          type: string
        type:
          description: Type of notification.
          enum:
          - balancePlatform.balanceAccount.updated
          - balancePlatform.balanceAccount.created
          type: string
      required:
      - environment
      - type
      - data
    BalancePlatformNotificationResponse:
      properties:
        notificationResponse:
          description: Respond with **HTTP 200 OK** and `[accepted]` in the response
            body to [accept the webhook](https://docs.adyen.com/development-resources/webhooks#accept-notifications).
          type: string
    BankAccount:
      properties:
        iban:
          description: The [International Bank Account Number](https://en.wikipedia.org/wiki/International_Bank_Account_Number)
            (IBAN).
          type: string
      required:
      - iban
    BankAccountInfo:
      properties:
        address:
          description: The address of the bank account owner.
          $ref: '#/components/schemas/Address'
        iban:
          description: The international bank account number as defined in the [ISO-13616](https://www.iso.org/standard/81090.html)
            standard.
          type: string
        ownerName:
          description: The name of the bank account owner.
          $ref: '#/components/schemas/Name-2'
    BulkAddress:
      properties:
        city:
          description: The name of the city.
          type: string
        company:
          description: The name of the company.
          type: string
        country:
          description: The two-character ISO-3166-1 alpha-2 country code. For example,
            **US**.
          type: string
        email:
          description: The email address.
          type: string
        houseNumberOrName:
          description: The house number or name.
          type: string
        mobile:
          description: The full telephone number.
          type: string
        postalCode:
          description: 'The postal code.


            Maximum length:


            * 5 digits for addresses in the US.


            * 10 characters for all other countries.'
          type: string
        stateOrProvince:
          description: 'The two-letter ISO 3166-2 state or province code.


            Maximum length: 2 characters for addresses in the US.'
          type: string
        street:
          description: The streetname of the house.
          type: string
      required:
      - country
    CapabilityProblem:
      properties:
        entity:
          description: Contains the type of the entity and the corresponding ID.
          $ref: '#/components/schemas/CapabilityProblemEntity'
        verificationErrors:
          description: Contains information about the verification error.
          items:
            $ref: '#/components/schemas/VerificationError'
          type: array
    CapabilityProblemEntity:
      properties:
        id:
          description: The ID of the entity.
          type: string
        owner:
          description: Contains details about the owner of the entity that has an
            error.
          $ref: '#/components/schemas/CapabilityProblemEntity-recursive'
        type:
          description: "Type of entity. \n\nPossible values: **LegalEntity**, **BankAccount**,\
            \ **Document**."
          enum:
          - BankAccount
          - Document
          - LegalEntity
          type: string
    CapabilityProblemEntity-recursive:
      properties:
        id:
          description: The ID of the entity.
          type: string
        type:
          description: "Type of entity. \n\nPossible values: **LegalEntity**, **BankAccount**,\
            \ **Document**."
          enum:
          - BankAccount
          - Document
          - LegalEntity
          type: string
      required: []
    Card:
      properties:
        authentication:
          description: Contains the card user's password and mobile phone number.
            This is required when you issue cards that can be used to make online
            payments within the EEA and the UK, or can be added to digital wallets.
            Refer to [3D Secure and digital wallets](https://docs.adyen.com/issuing/3d-secure-and-wallets)
            for more information.
          $ref: '#/components/schemas/Authentication'
        bin:
          description: The bank identification number (BIN) of the card number.
          type: string
        brand:
          description: 'The brand of the payment instrument.

            Possible values: **visa**, **mc**.'
          type: string
        brandVariant:
          description: 'The brand variant of the payment instrument.

            >Contact your Adyen Implementation Manager to get the values that are
            relevant to your integration. Examples: **visadebit**, **mcprepaid**.'
          type: string
        cardholderName:
          description: "The name of the cardholder.\n Maximum length: 26 characters."
          maxLength: 26
          type: string
        configuration:
          description: "Settings required when creating a physical card. \n\nReach\
            \ out to your Adyen contact to get the values that you can send in this\
            \ object."
          $ref: '#/components/schemas/CardConfiguration'
        cvc:
          description: 'The CVC2 value of the card.

            > The CVC2 is not sent by default. This is only returned in the `POST`
            response for single-use virtual cards.'
          type: string
        deliveryContact:
          description: The delivery contact (name and address) for physical card delivery.
          $ref: '#/components/schemas/Contact'
        expiration:
          description: The expiration date of the card.
          $ref: '#/components/schemas/Expiry'
        formFactor:
          description: 'The form factor of the card.

            Possible values: **virtual**, **physical**.'
          enum:
          - physical
          - unknown
          - virtual
          type: string
        lastFour:
          description: Last last four digits of the card number.
          type: string
        number:
          description: 'The primary account number (PAN) of the card.

            > The PAN is masked by default and returned only for single-use virtual
            cards.'
          type: string
      required:
      - formFactor
      - cardholderName
      - brand
      - brandVariant
      - number
    CardConfiguration:
      properties:
        activation:
          description: Overrides the activation label design ID defined in the `configurationProfileId`.
            The activation label is attached to the card and contains the activation
            instructions.
          type: string
        activationUrl:
          description: "Your app's URL, if you want to activate cards through your\
            \ app. For example, **my-app://ref1236a7d**. A QR code is created based\
            \ on this URL, and is included in the carrier. Before you use this field,\
            \ reach out to your Adyen contact to set up the QR code process. \n\n\
            Maximum length: 255 characters."
          maxLength: 255
          type: string
        bulkAddress:
          description: Overrides the shipment bulk address defined in the `configurationProfileId`.
          $ref: '#/components/schemas/BulkAddress'
        cardImageId:
          description: The ID of the card image. This is the image that will be printed
            on the full front of the card.
          type: string
        carrier:
          description: Overrides the carrier design ID defined in the `configurationProfileId`.
            The carrier is the letter or packaging to which the card is attached.
          type: string
        carrierImageId:
          description: The ID of the carrier image. This is the image that will printed
            on the letter to which the card is attached.
          type: string
        configurationProfileId:
          description: 'The ID of the card configuration profile that contains the
            settings of the card. For example, the envelope and PIN mailer designs
            or the logistics company handling the shipment. All the settings in the
            profile are applied to the card, unless you provide other fields to override
            them.


            For example, send the `shipmentMethod` to override the logistics company
            defined in the card configuration profile.'
          type: string
        currency:
          description: The three-letter [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217)
            currency code of the card. For example, **EUR**.
          type: string
        envelope:
          description: 'Overrides the envelope design ID defined in the `configurationProfileId`. '
          type: string
        insert:
          description: Overrides the insert design ID defined in the `configurationProfileId`.
            An insert is any additional material, such as marketing materials, that
            are shipped together with the card.
          type: string
        language:
          description: The two-letter [ISO-639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)
            language code of the card. For example, **en**.
          type: string
        logoImageId:
          description: The ID of the logo image. This is the image that will be printed
            on the partial front of the card, such as a logo on the upper right corner.
          type: string
        pinMailer:
          description: Overrides the PIN mailer design ID defined in the `configurationProfileId`.
            The PIN mailer is the letter on which the PIN is printed.
          type: string
        shipmentMethod:
          description: Overrides the logistics company defined in the `configurationProfileId`.
          type: string
      required:
      - configurationProfileId
    Contact:
      properties:
        address:
          description: The address of the contact.
          $ref: '#/components/schemas/Address'
        email:
          description: The e-mail address of the contact.
          type: string
        fullPhoneNumber:
          description: 'The phone number of the contact provided as a single string.  It
            will be handled as a landline phone.

            **Examples:** "0031 6 11 22 33 44", "+316/1122-3344", "(0031) 611223344"'
          type: string
        name:
          description: The name of the contact.
          $ref: '#/components/schemas/Name'
        personalData:
          description: Personal data of the contact.
          $ref: '#/components/schemas/PersonalData'
        phoneNumber:
          description: The phone number of the contact.
          $ref: '#/components/schemas/PhoneNumber'
        webAddress:
          description: The URL of the website of the contact.
          type: string
    ContactDetails:
      properties:
        address:
          description: The address of the account holder.
          $ref: '#/components/schemas/Address'
        email:
          description: The email address of the account holder.
          type: string
        phone:
          description: The phone number of the account holder.
          $ref: '#/components/schemas/Phone'
        webAddress:
          description: The URL of the account holder's website.
          type: string
      required:
      - email
      - phone
      - address
    Counterparty:
      properties:
        balanceAccountId:
          description: Unique identifier of the [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id).
          type: string
        bankAccount:
          description: Contains information about the bank account.
          $ref: '#/components/schemas/BankAccountInfo'
        merchant:
          description: Contains information about the merchant.
          $ref: '#/components/schemas/MerchantData'
        transferInstrumentId:
          description: Unique identifier of the [transfer instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id).
          type: string
    CronSweepSchedule:
      additionalProperties: false
      properties:
        cronExpression:
          description: 'A [cron expression](https://en.wikipedia.org/wiki/Cron#CRON_expression)
            that is used to set the sweep schedule. The schedule uses the time zone
            of the balance account. For example, **30 17 * * MON** schedules a sweep
            every Monday at 17:30.


            The expression must have five values separated by a single space in the
            following order:


            * Minute: **0-59**


            * Hour: **0-23**


            * Day of the month: **1-31**


            * Month: **1-12** or **JAN-DEC**


            * Day of the week: **0-7** (0 and 7 are Sunday) or **MON-SUN**.


            The following non-standard characters are supported: **&ast;**, **L**,
            **#**, **W** and **/**. See [crontab guru](https://crontab.guru/) for
            more examples.'
          type: string
        type:
          description: 'The schedule type.


            Possible values:


            * **cron**: push out funds based on a cron expression.


            * **daily**: push out funds daily at 07:00 AM CET.


            * **weekly**: push out funds every Monday at 07:00 AM CET.


            * **monthly**: push out funds every first of the month at 07:00 AM CET.


            * **balance**: pull in funds instantly if the balance is less than or
            equal to the `triggerAmount`. You can only use this for sweeps of `type`
            **pull** and when the source is a `merchantAccount` or `transferInstrument`.'
          enum:
          - daily
          - weekly
          - monthly
          - balance
          - cron
          type: string
      required:
      - cronExpression
    Expiry:
      properties:
        month:
          description: The month in which the card will expire.
          type: string
        year:
          description: The year in which the card will expire.
          type: string
    IncomingTransferNotificationData:
      properties:
        accountHolder:
          description: Contains information about the account holder.
          $ref: '#/components/schemas/ResourceReference'
        amount:
          description: "The amount converted to the balance account's currency, in\
            \ case the original transaction currency is different.\n\n* A _positive_\
            \ value means the amount is added to the balance account.\n\n * A _negative_\
            \ value means the amount is deducted from the balance account. "
          $ref: '#/components/schemas/Amount'
        balanceAccount:
          description: Contains information about the balance account.
          $ref: '#/components/schemas/ResourceReference'
        balancePlatform:
          description: Unique identifier of the balance platform.
          type: string
        counterparty:
          description: Contains information about the other party in the transaction.
          $ref: '#/components/schemas/Counterparty'
        creationDate:
          description: Date and time when the event was triggered, in ISO 8601 extended
            format. For example, **2020-12-18T10:15:30+01:00**.
          format: date-time
          type: string
        description:
          description: Your description for the transfer. If you send a description
            longer than 140 characters, the text is truncated.
          type: string
        id:
          description: The ID of the resource.
          type: string
        modification:
          description: Contains the amount and type of modification that triggered
            the notification. For example, this object contains the amount of a partial
            cancellation or partial expired authorisation.
          $ref: '#/components/schemas/NotificationModificationData'
        originalAmount:
          description: "The amount in the original currency of the transaction.\n\n\
            * A _positive_ value means the amount is added to the balance account.\n\
            \n * A _negative_ value means the amount is deducted from the balance\
            \ account. "
          $ref: '#/components/schemas/Amount'
        paymentId:
          description: The ID of the original payment authorisation, refund, or funds
            transfer request. Use this to trace the original request from the `balancePlatform.payment.created`
            webhook.
          type: string
        paymentInstrument:
          description: Contains information about the payment instrument.
          $ref: '#/components/schemas/ResourceReference'
        platformPayment:
          description: Contains information about the related platform payment.
          $ref: '#/components/schemas/PlatformPayment'
        reference:
          description: An Adyen-generated unique reference for the transfer.
          maxLength: 80
          type: string
        referenceForBeneficiary:
          description: "The reference sent to or received from the counterparty.\n\
            \n* For outgoing funds, this is the [`referenceForBeneficiary`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers__resParam_referenceForBeneficiary)\
            \ from the  [`/transfers`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers)\
            \ request.\n\n * For incoming funds, this is the reference from the sender."
          maxLength: 80
          type: string
        status:
          description: "The event status. The possible values depend on the `type`.\n\
            \n* **Authorised**, **Refused**, or **Error** for type `balancePlatform.payment.created`\n\
            \n * **Expired** or **Cancelled** for type `balancePlatform.payment.updated`\n\
            \n* **PendingIncomingTransfer** for type `balancePlatform.incomingTransfer.created`\
            \ \n\n* **Refunded** or **IncomingTransfer** for type `balancePlatform.incomingTransfer.updated`\n\
            \n * **Captured** or **OutgoingTransfer** for type `balancePlatform.outgoingTransfer.created`\n\
            \n* **TransferConfirmed**, **TransferSentOut**, or **TransferFailed**\
            \ for type `balancePlatform.outgoingTransfer.updated`\n\n  "
          type: string
        valueDate:
          description: Indicates the expected settlement date of this transaction,
            in ISO 8601 extended format. For example, **2021-08-17T15:34:37+02:00**.
          format: date-time
          type: string
      required:
      - counterparty
    IncomingTransferNotificationRequest:
      properties:
        data:
          description: Contains event details.
          $ref: '#/components/schemas/IncomingTransferNotificationData'
        environment:
          description: 'The environment from which the webhook originated.


            Possible values: **test**, **live**.'
          type: string
        type:
          description: Type of notification.
          enum:
          - balancePlatform.incomingTransfer.updated
          - balancePlatform.incomingTransfer.created
          type: string
      required:
      - environment
      - type
      - data
    JSONObject:
      properties:
        paths:
          items:
            $ref: '#/components/schemas/JSONPath'
          type: array
        rootPath:
          $ref: '#/components/schemas/JSONPath'
    JSONPath:
      properties:
        content:
          items:
            type: string
          type: array
    MerchantData:
      properties:
        mcc:
          description: The merchant category code.
          type: string
        merchantId:
          description: The merchant identifier.
          type: string
        nameLocation:
          description: Contains the merchant's name and location.
          $ref: '#/components/schemas/NameLocation'
        postalCode:
          description: The merchant postal code.
          type: string
    Name:
      properties:
        firstName:
          description: The first name.
          type: string
        lastName:
          description: The last name.
          type: string
      required:
      - firstName
      - lastName
    Name-2:
      properties:
        firstName:
          description: The first name.
          type: string
        fullName:
          description: The full name.
          type: string
        infix:
          description: The infix in the name, if any.
          type: string
        lastName:
          description: The last name.
          type: string
    NameLocation:
      properties:
        city:
          description: The city where the merchant is located.
          type: string
        country:
          description: The country where the merchant is located in [three-letter
            country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) format.
          type: string
        countryOfOrigin:
          description: The home country in [three-digit country code](https://en.wikipedia.org/wiki/ISO_3166-1_numeric)
            format, used for government-controlled merchants such as embassies.
          type: string
        name:
          description: The name of the merchant's shop or service.
          type: string
        rawData:
          description: The raw data.
          type: string
        state:
          description: The state where the merchant is located.
          type: string
    NotificationModificationData:
      properties:
        amount:
          description: "The amount of the modification converted to the balance account's\
            \ currency, in case the original transaction currency is different. For\
            \ example, if a part of an authorised amount was cancelled, the value\
            \ shows the amount that was cancelled.\n\n * A _positive_ value means\
            \ the amount is added to the balance account.\n\n * A _negative_ value\
            \ means the amount is deducted from the balance account. "
          $ref: '#/components/schemas/Amount'
        type:
          description: 'The type of modification.


            Possible values: **Authorised**, **Cancelled**, **Captured**, **Error**,
            **Expired**, **OutgoingTransfer**, **PendingIncomingTransfer**, **PendingRefund**,
            **IncomingTransfer**, **Refunded**, **Refused**.'
          type: string
    OutgoingTransferNotificationData:
      properties:
        accountHolder:
          description: Contains information about the account holder.
          $ref: '#/components/schemas/ResourceReference'
        amount:
          description: "The amount converted to the balance account's currency, in\
            \ case the original transaction currency is different.\n\n* A _positive_\
            \ value means the amount is added to the balance account.\n\n * A _negative_\
            \ value means the amount is deducted from the balance account. "
          $ref: '#/components/schemas/Amount'
        balanceAccount:
          description: Contains information about the balance account.
          $ref: '#/components/schemas/ResourceReference'
        balancePlatform:
          description: Unique identifier of the balance platform.
          type: string
        counterparty:
          description: Contains information about the other party in the transaction.
          $ref: '#/components/schemas/Counterparty'
        creationDate:
          description: Date and time when the event was triggered, in ISO 8601 extended
            format. For example, **2020-12-18T10:15:30+01:00**.
          format: date-time
          type: string
        description:
          description: Your description for the transfer. If you send a description
            longer than 140 characters, the text is truncated.
          type: string
        id:
          description: The ID of the resource.
          type: string
        merchantData:
          description: Contains information about the merchant that processed the
            payment. This object is only included for payment authorisation requests
            and captures.
          $ref: '#/components/schemas/MerchantData'
        modification:
          description: Contains the amount and type of modification that triggered
            the notification. For example, this object contains the amount of a partial
            cancellation or partial expired authorisation.
          $ref: '#/components/schemas/NotificationModificationData'
        originalAmount:
          description: "The amount in the original currency of the transaction.\n\n\
            * A _positive_ value means the amount is added to the balance account.\n\
            \n * A _negative_ value means the amount is deducted from the balance\
            \ account. "
          $ref: '#/components/schemas/Amount'
        paymentId:
          description: The ID of the original payment authorisation, refund, or funds
            transfer request. Use this to trace the original request from the `balancePlatform.payment.created`
            webhook.
          type: string
        paymentInstrument:
          description: Contains information about the payment instrument.
          $ref: '#/components/schemas/ResourceReference'
        platformPayment:
          description: Contains information about the related platform payment.
          $ref: '#/components/schemas/PlatformPayment'
        processingType:
          description: Contains information about how the payment was processed. For
            example, **ecommerce** for online or **pos** for point-of-sale payments.
          type: string
        purposeCode:
          description: "Indicates the purpose of the outgoing transfer. Adyen sets\
            \ this to:\n\n* **payoutManual** when the transfer was triggered by a\
            \ one-off payout using the [`/transfers`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers)\
            \ endpoint.\n\n * **payoutSweep** when the transfer was triggered by a\
            \ scheduled payout using [`sweepConfigurations`](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_sweepConfigurations)."
          type: string
        reference:
          description: The [`reference`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers__reqParam_reference)
            from the `/transfers` request. If you haven't provided any, Adyen generates
            a unique reference.
          maxLength: 80
          type: string
        referenceForBeneficiary:
          description: "The reference sent to or received from the counterparty.\n\
            \n* For outgoing funds, this is the [`referenceForBeneficiary`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers__resParam_referenceForBeneficiary)\
            \ from the  [`/transfers`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers)\
            \ request.\n\n * For incoming funds, this is the reference from the sender."
          maxLength: 80
          type: string
        relayedAuthorisationData:
          description: If you're using [relayed authorisation](https://docs.adyen.com/issuing/processing-payments-for-cards#relayed-authorisation),
            this object contains information from the relayed authorisation response
            from your server.
          $ref: '#/components/schemas/RelayedAuthorisationData'
        status:
          description: "The event status. The possible values depend on the `type`.\n\
            \n* **Authorised**, **Refused**, or **Error** for type `balancePlatform.payment.created`\n\
            \n * **Expired** or **Cancelled** for type `balancePlatform.payment.updated`\n\
            \n* **PendingIncomingTransfer** for type `balancePlatform.incomingTransfer.created`\
            \ \n\n* **Refunded** or **IncomingTransfer** for type `balancePlatform.incomingTransfer.updated`\n\
            \n * **Captured** or **OutgoingTransfer** for type `balancePlatform.outgoingTransfer.created`\n\
            \n* **TransferConfirmed**, **TransferSentOut**, or **TransferFailed**\
            \ for type `balancePlatform.outgoingTransfer.updated`\n\n  "
          type: string
        transactionRulesResult:
          description: Contains results from the evaluation of [transaction rules](https://docs.adyen.com/issuing/transaction-rules).
          $ref: '#/components/schemas/TransactionRulesResult'
        valueDate:
          description: Indicates the expected settlement date of this transaction,
            in ISO 8601 extended format. For example, **2021-08-17T15:34:37+02:00**.
          format: date-time
          type: string
      required:
      - counterparty
    OutgoingTransferNotificationRequest:
      properties:
        data:
          description: Contains details about the event.
          $ref: '#/components/schemas/OutgoingTransferNotificationData'
        environment:
          description: 'The environment from which the webhook originated.


            Possible values: **test**, **live**.'
          type: string
        type:
          description: Type of notification.
          enum:
          - balancePlatform.outgoingTransfer.created
          - balancePlatform.outgoingTransfer.updated
          type: string
      required:
      - environment
      - type
      - data
    PaymentInstrument:
      properties:
        balanceAccountId:
          description: The unique identifier of the [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/balanceAccounts__resParam_id)
            associated with the payment instrument.
          type: string
        bankAccount:
          description: Contains the business account details. Returned when you create
            a payment instrument with `type` **bankAccount**.
          $ref: '#/components/schemas/BankAccount'
        card:
          description: Contains information about the card payment instrument. Returned
            when you create a payment instrument with `type` **card**.
          $ref: '#/components/schemas/Card'
        description:
          description: Your description for the payment instrument, maximum 300 characters.
          maxLength: 300
          type: string
        id:
          description: The unique identifier of the payment instrument.
          type: string
        issuingCountryCode:
          description: The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)
            country code where the payment instrument is issued. For example, **NL**
            or **US**.
          type: string
        paymentInstrumentGroupId:
          description: The unique identifier of the [payment instrument group](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/paymentInstrumentGroups__resParam_id)
            to which the payment instrument belongs.
          type: string
        reference:
          description: Your reference for the payment instrument, maximum 150 characters.
          maxLength: 150
          type: string
        status:
          x-enum:
          - description: The payment instrument has been requested. This state is
              applicable when creating physical cards.
            value: Requested
          - description: The payment instrument is active and can be used to make
              payments.
            value: Active
          - description: The payment instrument is inactive and cannot be used to
              make payments.
            value: Inactive
          - description: The payment instrument is temporarily suspended and cannot
              be used to make payments.
            value: Suspended
          - description: The payment instrument is permanently closed. This action
              cannot be undone.
            value: Closed
          - description: The payment instrument is suspended. Either because it was
              stolen or lost.
            value: blocked
          - description: The payment instrument is permanently closed. This action
              cannot be undone.
            value: discarded
          description: "The status of the payment instrument. If a status is not specified\
            \ when creating a payment instrument, it is set to **Active** by default.\
            \ However, there can be exceptions for cards based on the `card.formFactor`\
            \ and the `issuingCountryCode`. For example, when issuing physical cards\
            \ in the US, the default status is **Requested**.\n\nPossible values:\
            \ \n\n * **Active**:  The payment instrument is active and can be used\
            \ to make payments. \n\n * **Requested**: The payment instrument has been\
            \ requested. This state is applicable for physical cards. \n\n* **Inactive**:\
            \ The payment instrument is inactive and cannot be used to make payments.\
            \ \n\n * **Suspended**: The payment instrument is temporarily suspended\
            \ and cannot be used to make payments. \n\n * **Closed**: The payment\
            \ instrument is permanently closed. This action cannot be undone. \n\n\
            * **Stolen** \n\n * **Lost**\n\n "
          enum:
          - Active
          - Closed
          - Inactive
          - Lost
          - Requested
          - Stolen
          - Suspended
          - blocked
          - discarded
          type: string
        type:
          description: 'Type of payment instrument.


            Possible value: **card**, **bankAccount**. '
          enum:
          - bankAccount
          - card
          type: string
      required:
      - balanceAccountId
      - issuingCountryCode
      - type
      - id
    PaymentInstrumentNotificationData:
      properties:
        balancePlatform:
          description: Unique identifier of the balance platform.
          type: string
        paymentInstrument:
          description: Contains information about the payment instrument resource
            that triggered the event.
          $ref: '#/components/schemas/PaymentInstrument'
    PaymentInstrumentReference:
      properties:
        id:
          description: The unique identifier of the payment instrument.
          type: string
      required:
      - id
    PaymentNotificationData:
      properties:
        accountHolder:
          description: Contains information about the account holder.
          $ref: '#/components/schemas/ResourceReference'
        amount:
          description: "The amount converted to the balance account's currency, in\
            \ case the original transaction currency is different.\n\n* A _positive_\
            \ value means the amount is added to the balance account.\n\n * A _negative_\
            \ value means the amount is deducted from the balance account. "
          $ref: '#/components/schemas/Amount'
        authCode:
          description: The authorisation code for the payment.
          type: string
        balanceAccount:
          description: Contains information about the balance account.
          $ref: '#/components/schemas/ResourceReference'
        balancePlatform:
          description: Unique identifier of the balance platform.
          type: string
        creationDate:
          description: Date and time when the event was triggered, in ISO 8601 extended
            format. For example, **2020-12-18T10:15:30+01:00**.
          format: date-time
          type: string
        description:
          description: Your description for the transfer. If you send a description
            longer than 140 characters, the text is truncated.
          type: string
        id:
          description: The ID of the resource.
          type: string
        merchantData:
          description: Contains information about the merchant that processed the
            payment. This object is only included for payment authorisation requests
            and captures.
          $ref: '#/components/schemas/MerchantData'
        modification:
          description: Contains the amount and type of modification that triggered
            the notification. For example, this object contains the amount of a partial
            cancellation or partial expired authorisation.
          $ref: '#/components/schemas/NotificationModificationData'
        originalAmount:
          description: "The amount in the original currency of the transaction.\n\n\
            * A _positive_ value means the amount is added to the balance account.\n\
            \n * A _negative_ value means the amount is deducted from the balance\
            \ account. "
          $ref: '#/components/schemas/Amount'
        paymentInstrument:
          description: Contains information about the payment instrument.
          $ref: '#/components/schemas/ResourceReference'
        platformPayment:
          description: Contains information about the related platform payment.
          $ref: '#/components/schemas/PlatformPayment'
        processingType:
          description: Contains information about how the payment was processed. For
            example, **ecommerce** for online or **pos** for point-of-sale payments.
          type: string
        reference:
          description: The [`reference`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers__reqParam_reference)
            from the `/transfers` request. If you haven't provided any, Adyen generates
            a unique reference.
          maxLength: 80
          type: string
        referenceForBeneficiary:
          description: "The reference sent to or received from the counterparty.\n\
            \n* For outgoing funds, this is the [`referenceForBeneficiary`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers__resParam_referenceForBeneficiary)\
            \ from the  [`/transfers`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers)\
            \ request.\n\n * For incoming funds, this is the reference from the sender."
          maxLength: 80
          type: string
        relayedAuthorisationData:
          description: If you're using [relayed authorisation](https://docs.adyen.com/issuing/processing-payments-for-cards#relayed-authorisation),
            this object contains information from the relayed authorisation response
            from your server.
          $ref: '#/components/schemas/RelayedAuthorisationData'
        status:
          description: "The event status. The possible values depend on the `type`.\n\
            \n* **Authorised**, **Refused**, or **Error** for type `balancePlatform.payment.created`\n\
            \n * **Expired** or **Cancelled** for type `balancePlatform.payment.updated`\n\
            \n* **PendingIncomingTransfer** for type `balancePlatform.incomingTransfer.created`\
            \ \n\n* **Refunded** or **IncomingTransfer** for type `balancePlatform.incomingTransfer.updated`\n\
            \n * **Captured** or **OutgoingTransfer** for type `balancePlatform.outgoingTransfer.created`\n\
            \n* **TransferConfirmed**, **TransferSentOut**, or **TransferFailed**\
            \ for type `balancePlatform.outgoingTransfer.updated`\n\n  "
          type: string
        transactionRulesResult:
          description: Contains results from the evaluation of [transaction rules](https://docs.adyen.com/issuing/transaction-rules).
          $ref: '#/components/schemas/TransactionRulesResult'
        validationResult:
          description: Array of checks that Adyen performed to validate the payment
            and the result of each.
          items:
            $ref: '#/components/schemas/ValidationResult'
          type: array
    PaymentNotificationRequest:
      properties:
        data:
          description: Contains event details.
          $ref: '#/components/schemas/PaymentInstrumentNotificationData'
        environment:
          description: 'The environment from which the webhook originated.


            Possible values: **test**, **live**.'
          type: string
        type:
          description: Type of notification.
          enum:
          - balancePlatform.paymentInstrument.created
          - balancePlatform.paymentInstrument.updated
          type: string
      required:
      - environment
      - type
      - data
    PaymentNotificationRequest-2:
      properties:
        data:
          description: Contains event details.
          $ref: '#/components/schemas/PaymentNotificationData'
        environment:
          description: 'The environment from which the webhook originated.


            Possible values: **test**, **live**.'
          type: string
        type:
          description: Type of notification.
          enum:
          - balancePlatform.payment.created
          - balancePlatform.payment.updated
          type: string
      required:
      - environment
      - type
      - data
    PersonalData:
      properties:
        dateOfBirth:
          description: 'The date of birth of the person.

            The date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).'
          type: string
        idNumber:
          description: An ID number of the person.
          type: string
        nationality:
          description: 'The nationality of the person represented by a two-character
            country code.

            >The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. ''NL'').'
          maxLength: 2
          minLength: 2
          type: string
    Phone:
      properties:
        number:
          description: "The full phone number provided as a single string. \nFor example,\
            \ **\"0031 6 11 22 33 44\"**, **\"+316/1122-3344\"**, \n\n or **\"(0031)\
            \ 611223344\"**."
          type: string
        type:
          description: "Type of phone number.\nPossible values: \n**Landline**, **Mobile**.\n"
          enum:
          - Landline
          - Mobile
          type: string
      required:
      - number
      - type
    PhoneNumber:
      properties:
        phoneCountryCode:
          description: 'The two-character ISO-3166-1 alpha-2 country code of the phone
            number.

            For example, **US** or **NL**.'
          type: string
        phoneNumber:
          description: 'The phone number.

            The inclusion of the phone number country code is not necessary.'
          type: string
        phoneType:
          description: 'The type of the phone number.

            Possible values: **Landline**, **Mobile**, **SIP**, **Fax**.'
          enum:
          - Fax
          - Landline
          - Mobile
          - SIP
          type: string
      required:
      - phoneCountryCode
      - phoneNumber
    PlatformPayment:
      properties:
        account:
          description: The account given in the related split.
          type: string
        description:
          description: The description of the related split.
          type: string
        modificationMerchantReference:
          description: The merchant reference of the modification.
          type: string
        modificationPspReference:
          description: The pspReference of the modification.
          type: string
        paymentMerchantReference:
          description: The merchant reference of the payment.
          type: string
        paymentPspReference:
          description: The pspReference of the payment.
          type: string
        reference:
          description: The reference of the related split.
          type: string
        type:
          description: The type of the related split.
          enum:
          - BalanceAccount
          - Commission
          - Default
          - PaymentFee
          - VAT
          type: string
    RelayedAuthorisationData:
      properties:
        metadata:
          additionalProperties:
            type: string
          description: The `metadata` object from the relayed authorisation response
            from your server.
          type: object
        reference:
          description: The `reference` from the relayed authorisation response from
            your server.
          type: string
        status:
          description: The value can be **Authorised** or **Refused**, based on the
            `authorisationDecision.status` in the relayed authorisation response from
            your server.
          type: string
    RemediatingAction:
      properties:
        code:
          description: The remediating action code.
          type: string
        message:
          description: A description of how you can resolve the verification error.
          type: string
    ReportNotificationData:
      properties:
        accountHolder:
          description: The account holder related to the report.
          $ref: '#/components/schemas/ResourceReference'
        balanceAccount:
          description: The balance account related to the report.
          $ref: '#/components/schemas/ResourceReference'
        balancePlatform:
          description: Unique identifier of the balance platform.
          type: string
        creationDate:
          description: Date and time when the event was triggered, in ISO 8601 extended
            format. For example, **2020-12-18T10:15:30+01:00**.
          format: date-time
          type: string
        downloadUrl:
          description: The URL at which you can download the report. To download,
            you must authenticate your GET request with your [API credentials](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/overview).
          type: string
        fileName:
          description: The filename of the report.
          type: string
        reportType:
          description: Type of report.
          type: string
      required:
      - fileName
      - reportType
      - downloadUrl
    ReportNotificationRequest:
      properties:
        data:
          description: Contains event details.
          $ref: '#/components/schemas/ReportNotificationData'
        environment:
          description: 'The environment from which the webhook originated.


            Possible values: **test**, **live**.'
          type: string
        type:
          description: Type of notification.
          enum:
          - balancePlatform.report.created
          type: string
      required:
      - environment
      - type
      - data
    Resource:
      properties:
        balancePlatform:
          description: Unique identifier of the balance platform.
          type: string
        creationDate:
          description: Date and time when the event was triggered, in ISO 8601 extended
            format. For example, **2020-12-18T10:15:30+01:00**.
          format: date-time
          type: string
        id:
          description: The ID of the resource.
          type: string
    ResourceReference:
      properties:
        description:
          description: The description of the resource.
          type: string
        id:
          description: The unique identifier of the resource.
          type: string
        reference:
          description: The reference of the resource.
          type: string
    SweepConfiguration:
      properties:
        balanceAccountId:
          description: "The unique identifier of the destination or source [balance\
            \ account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id).\n\
            \n You can only use this for periodic sweep schedules such as `schedule.type`\
            \ **daily** or **monthly**."
          type: string
        id:
          description: The unique identifier of the sweep.
          type: string
        merchantAccount:
          description: The merchant account that will be the source of funds. You
            can only use this if you are processing payments with Adyen. This can
            only be used for sweeps of `type` **pull** and `schedule.type` **balance**.
          type: string
        schedule:
          description: The schedule when the `triggerAmount` is evaluated. If the
            balance meets the threshold, funds are pushed out of or pulled in to the
            balance account.
          oneOf:
          - $ref: '#/components/schemas/CronSweepSchedule'
          - $ref: '#/components/schemas/SweepSchedule'
        status:
          x-enum:
          - description: The sweep is enabled and funds will be pulled in or pushed
              out based on the defined configuration
            value: active
          - description: The sweep is disabled and cannot be triggered.
            value: inactive
          description: "The status of the sweep. If not provided, by default, this\
            \ is set to **active**.\n\nPossible values: \n\n * **active**:  the sweep\
            \ is enabled and funds will be pulled in or pushed out based on the defined\
            \ configuration. \n\n * **inactive**: the sweep is disabled and cannot\
            \ be triggered. \n\n"
          enum:
          - active
          - inactive
          type: string
        sweepAmount:
          description: The amount that must be pushed out or pulled in. You can configure
            either `sweepAmount` or `targetAmount`, not both.
          $ref: '#/components/schemas/Amount'
        targetAmount:
          description: The amount that must be available in the balance account after
            the sweep. You can configure either `sweepAmount` or `targetAmount`, not
            both.
          $ref: '#/components/schemas/Amount'
        transferInstrumentId:
          description: 'The unique identifier of the destination or source [transfer
            instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id).


            You can also use this in combination with a `merchantAccount` and a `type`
            **pull** to start a direct debit request from the source transfer instrument.
            To use this feature, reach out to your Adyen contact.'
          type: string
        triggerAmount:
          description: 'The threshold amount that triggers the sweep. If not provided,
            by default, the amount is set to zero. The `triggerAmount` is evaluated
            according to the specified `schedule.type`.


            * For `type` **pull**, if the balance is less than or equal to the `triggerAmount`,
            funds are pulled in to the balance account.


            * For `type` **push**, if the balance is more than or equal to the `triggerAmount`,
            funds are pushed out of the balance account.'
          $ref: '#/components/schemas/Amount'
        type:
          default: push
          description: "The direction of sweep, whether pushing out or pulling in\
            \ funds to the balance account. If not provided, by default, this is set\
            \ to **push**.\n\nPossible values:\n\n * **push**: _push out funds_ to\
            \ a destination balance account or transfer instrument.\n\n * **pull**:\
            \ _pull in funds_ from a source merchant account, transfer instrument,\
            \ or balance account."
          enum:
          - pull
          - push
          type: string
      required:
      - id
      - schedule
    SweepConfigurationNotificationData:
      properties:
        accountId:
          description: The unique identifier of the balance account for which the
            sweep was configured.
          type: string
        balancePlatform:
          description: Unique identifier of the balance platform.
          type: string
        sweep:
          description: Contains information about the sweep resource that triggered
            the event.
          $ref: '#/components/schemas/SweepConfigurationV2'
    SweepConfigurationNotificationRequest:
      properties:
        data:
          description: Contains event details.
          $ref: '#/components/schemas/SweepConfigurationNotificationData'
        environment:
          description: 'The environment from which the webhook originated.


            Possible values: **test**, **live**.'
          type: string
        type:
          description: Type of notification.
          enum:
          - balancePlatform.balanceAccountSweep.created
          - balancePlatform.balanceAccountSweep.updated
          - balancePlatform.balanceAccountSweep.deleted
          type: string
      required:
      - environment
      - type
      - data
    SweepConfigurationV2:
      properties:
        counterparty:
          description: 'The destination or the source of the funds, depending on the
            `type`.


            Either a `balanceAccountId`, `transferInstrumentId`, or `merchantAccount`
            is required.'
          $ref: '#/components/schemas/SweepCounterparty'
        currency:
          description: 'The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes)
            in uppercase. For example, **EUR**.


            The sweep currency must match any of the [balances currencies](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balanceAccounts/{id}__resParam_balances).'
          type: string
        description:
          description: 'The message that will be used in the sweep transfer''s description
            body with a maximum length of 140 characters.


            If the message is longer after replacing placeholders, the message will
            be cut off at 140 characters.'
          type: string
        id:
          description: The unique identifier of the sweep.
          type: string
        schedule:
          description: The schedule when the `triggerAmount` is evaluated. If the
            balance meets the threshold, funds are pushed out of or pulled in to the
            balance account.
          oneOf:
          - $ref: '#/components/schemas/CronSweepSchedule'
          - $ref: '#/components/schemas/SweepSchedule'
        status:
          x-enum:
          - description: The sweep is enabled and funds will be pulled in or pushed
              out based on the defined configuration
            value: active
          - description: The sweep is disabled and cannot be triggered.
            value: inactive
          description: "The status of the sweep. If not provided, by default, this\
            \ is set to **active**.\n\nPossible values: \n\n * **active**:  the sweep\
            \ is enabled and funds will be pulled in or pushed out based on the defined\
            \ configuration. \n\n * **inactive**: the sweep is disabled and cannot\
            \ be triggered. \n\n"
          enum:
          - active
          - inactive
          type: string
        sweepAmount:
          description: The amount that must be pushed out or pulled in. You can configure
            either `sweepAmount` or `targetAmount`, not both.
          $ref: '#/components/schemas/Amount'
        targetAmount:
          description: The amount that must be available in the balance account after
            the sweep. You can configure either `sweepAmount` or `targetAmount`, not
            both.
          $ref: '#/components/schemas/Amount'
        triggerAmount:
          description: 'The threshold amount that triggers the sweep. If not provided,
            by default, the amount is set to zero. The `triggerAmount` is evaluated
            according to the specified `schedule.type`.


            * For `type` **pull**, if the balance is less than or equal to the `triggerAmount`,
            funds are pulled in to the balance account.


            * For `type` **push**, if the balance is more than or equal to the `triggerAmount`,
            funds are pushed out of the balance account.'
          $ref: '#/components/schemas/Amount'
        type:
          default: push
          description: "The direction of sweep, whether pushing out or pulling in\
            \ funds to the balance account. If not provided, by default, this is set\
            \ to **push**.\n\nPossible values:\n\n * **push**: _push out funds_ to\
            \ a destination balance account or transfer instrument.\n\n * **pull**:\
            \ _pull in funds_ from a source merchant account, transfer instrument,\
            \ or balance account."
          enum:
          - pull
          - push
          type: string
      required:
      - id
      - schedule
      - currency
      - counterparty
    SweepCounterparty:
      properties:
        balanceAccountId:
          description: "The unique identifier of the destination or source [balance\
            \ account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id).\n\
            \n You can only use this for periodic sweep schedules such as `schedule.type`\
            \ **daily** or **monthly**."
          type: string
        merchantAccount:
          description: The merchant account that will be the source of funds, if you
            are processing payments with Adyen. You can only use this with sweeps
            of `type` **pull** and `schedule.type` **balance**.
          type: string
        transferInstrumentId:
          description: 'The unique identifier of the destination or source [transfer
            instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/transferInstruments__resParam_id).


            You can also use this in combination with a `merchantAccount` and a `type`
            **pull** to start a direct debit request from the source transfer instrument.
            To use this feature, reach out to your Adyen contact.'
          type: string
    SweepSchedule:
      additionalProperties: false
      properties:
        type:
          description: 'The schedule type.


            Possible values:


            * **cron**: push out funds based on a cron expression.


            * **daily**: push out funds daily at 07:00 AM CET.


            * **weekly**: push out funds every Monday at 07:00 AM CET.


            * **monthly**: push out funds every first of the month at 07:00 AM CET.


            * **balance**: pull in funds instantly if the balance is less than or
            equal to the `triggerAmount`. You can only use this for sweeps of `type`
            **pull** and when the source is a `merchantAccount` or `transferInstrument`.'
          enum:
          - daily
          - weekly
          - monthly
          - balance
          - cron
          type: string
    TransactionEventViolation:
      properties:
        reason:
          description: An explanation about why the transaction rule failed.
          type: string
        transactionRule:
          description: Contains information about the transaction rule.
          $ref: '#/components/schemas/ResourceReference'
        transactionRuleSource:
          description: Contains the type and ID of the resource to which the transaction
            rule is linked.
          $ref: '#/components/schemas/TransactionRuleSource'
    TransactionNotificationData:
      properties:
        accountHolder:
          description: Contains information about the account holder.
          $ref: '#/components/schemas/ResourceReference'
        amount:
          description: "The amount converted to the balance account's currency, in\
            \ case the original transaction currency is different.\n\n* A _positive_\
            \ value means the amount is added to the balance account.\n\n * A _negative_\
            \ value means the amount is deducted from the balance account. "
          $ref: '#/components/schemas/Amount'
        authCode:
          description: The authorisation code for the payment.
          type: string
        balanceAccount:
          description: Contains information about the balance account.
          $ref: '#/components/schemas/ResourceReference'
        balancePlatform:
          description: Unique identifier of the balance platform.
          type: string
        counterparty:
          description: Contains information about the other party in the transaction.
          $ref: '#/components/schemas/Counterparty'
        creationDate:
          description: Date and time when the event was triggered, in ISO 8601 extended
            format. For example, **2020-12-18T10:15:30+01:00**.
          format: date-time
          type: string
        description:
          description: Your description for the transfer. If you send a description
            longer than 140 characters, the text is truncated.
          type: string
        id:
          description: The ID of the resource.
          type: string
        merchantData:
          description: Contains information about the merchant that processed the
            payment. This object is only included for payment authorisation requests
            and captures.
          $ref: '#/components/schemas/MerchantData'
        modification:
          description: Contains the amount and type of modification that triggered
            the notification. For example, this object contains the amount of a partial
            cancellation or partial expired authorisation.
          $ref: '#/components/schemas/NotificationModificationData'
        originalAmount:
          description: "The amount in the original currency of the transaction.\n\n\
            * A _positive_ value means the amount is added to the balance account.\n\
            \n * A _negative_ value means the amount is deducted from the balance\
            \ account. "
          $ref: '#/components/schemas/Amount'
        paymentId:
          description: The ID of the original payment authorisation, refund, or funds
            transfer request. Use this to trace the original request from the `balancePlatform.payment.created`
            webhook.
          type: string
        paymentInstrument:
          description: Contains information about the payment instrument.
          $ref: '#/components/schemas/ResourceReference'
        platformPayment:
          description: Contains information about the related platform payment.
          $ref: '#/components/schemas/PlatformPayment'
        processingType:
          description: Contains information about how the payment was processed. For
            example, **ecommerce** for online or **pos** for point-of-sale payments.
          type: string
        purposeCode:
          description: "Indicates the purpose of the outgoing transfer. Adyen sets\
            \ this to:\n\n* **payoutManual** when the transfer was triggered by a\
            \ one-off payout using the [`/transfers`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers)\
            \ endpoint.\n\n * **payoutSweep** when the transfer was triggered by a\
            \ scheduled payout using [`sweepConfigurations`](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_sweepConfigurations)."
          type: string
        reference:
          description: The [`reference`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers__reqParam_reference)
            from the `/transfers` request. If you haven't provided any, Adyen generates
            a unique reference.
          maxLength: 80
          type: string
        referenceForBeneficiary:
          description: "The reference sent to or received from the counterparty.\n\
            \n* For outgoing funds, this is the [`referenceForBeneficiary`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers__resParam_referenceForBeneficiary)\
            \ from the  [`/transfers`](https://docs.adyen.com/api-explorer/#/transfers/latest/post/transfers)\
            \ request.\n\n * For incoming funds, this is the reference from the sender."
          maxLength: 80
          type: string
        relayedAuthorisationData:
          description: If you're using [relayed authorisation](https://docs.adyen.com/issuing/processing-payments-for-cards#relayed-authorisation),
            this object contains information from the relayed authorisation response
            from your server.
          $ref: '#/components/schemas/RelayedAuthorisationData'
        status:
          description: "The event status. The possible values depend on the `type`.\n\
            \n* **Authorised**, **Refused**, or **Error** for type `balancePlatform.payment.created`\n\
            \n * **Expired** or **Cancelled** for type `balancePlatform.payment.updated`\n\
            \n* **PendingIncomingTransfer** for type `balancePlatform.incomingTransfer.created`\
            \ \n\n* **Refunded** or **IncomingTransfer** for type `balancePlatform.incomingTransfer.updated`\n\
            \n * **Captured** or **OutgoingTransfer** for type `balancePlatform.outgoingTransfer.created`\n\
            \n* **TransferConfirmed**, **TransferSentOut**, or **TransferFailed**\
            \ for type `balancePlatform.outgoingTransfer.updated`\n\n  "
          type: string
        transactionRulesResult:
          description: Contains results from the evaluation of [transaction rules](https://docs.adyen.com/issuing/transaction-rules).
          $ref: '#/components/schemas/TransactionRulesResult'
        validationResult:
          description: Array of checks that Adyen performed to validate the payment
            and the result of each.
          items:
            $ref: '#/components/schemas/ValidationResult'
          type: array
        valueDate:
          description: Indicates the expected settlement date of this transaction,
            in ISO 8601 extended format. For example, **2021-08-17T15:34:37+02:00**.
          format: date-time
          type: string
      required:
      - counterparty
    TransactionRuleSource:
      properties:
        id:
          description: ID of the resource, when applicable.
          type: string
        type:
          description: "Indicates the type of resource for which the transaction rule\
            \ is defined.\n\nPossible values:\n\n * **PaymentInstrumentGroup**\n\n\
            * **PaymentInstrument**\n\n* **BalancePlatform**\n\n* **EntityUsageConfiguration**\n\
            \n* **PlatformRule**: The transaction rule is a platform-wide rule imposed\
            \ by Adyen."
          type: string
    TransactionRulesResult:
      properties:
        allRulesPassed:
          description: Indicates whether the transaction passed the evaluation for
            all transaction rules.
          type: boolean
        failedTransactionRules:
          description: Array containing all the transaction rules that the transaction
            violated. This list is only sent when `allRulesPassed` is **false**.
          items:
            $ref: '#/components/schemas/TransactionEventViolation'
          type: array
    ValidationResult:
      properties:
        result:
          description: 'The result of the check.


            Possible values:


            - **valid**: The validation was successful.


            - **invalid**: The validation failed.


            - **notValidated**: The validation was not performed because some services
            were unreachable or Adyen does not have the information needed to perform
            the check.


            - **notApplicable**: The validation is not applicable.'
          type: string
        type:
          description: Type of check.
          type: string
    VerificationError:
      properties:
        code:
          description: The verification error code.
          type: string
        message:
          description: A description of the error.
          type: string
        remediatingActions:
          description: Contains the actions that you can take to resolve the verification
            error.
          items:
            $ref: '#/components/schemas/RemediatingAction'
          type: array
        subErrors:
          description: Contains more granular information about the verification error.
          items:
            $ref: '#/components/schemas/VerificationError-recursive'
          type: array
        type:
          description: "The type of error.\n\n Possible values: **invalidInput**,\
            \ **dataMissing**."
          enum:
          - dataMissing
          - invalidInput
          - pendingStatus
          type: string
    VerificationError-recursive:
      properties:
        code:
          description: The verification error code.
          type: string
        message:
          description: A description of the error.
          type: string
        type:
          description: "The type of error.\n\n Possible values: **invalidInput**,\
            \ **dataMissing**."
          enum:
          - dataMissing
          - invalidInput
          - pendingStatus
          type: string
        remediatingActions:
          description: Contains the actions that you can take to resolve the verification
            error.
          items:
            $ref: '#/components/schemas/RemediatingAction'
          type: array
      required: []
  securitySchemes:
    ApiKeyAuth:
      in: header
      name: X-API-Key
      type: apiKey
    BasicAuth:
      scheme: basic
      type: http
  examples:
    WebhookAck:
      summary: Acknowledge Webhook
      value:
        notificationResponse: '[accepted]'
    post-balancePlatform.accountHolder.created-balancePlatform-accountHolder-created:
      summary: Account holder created
      description: Example webhook when an account holder was created
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          accountHolder:
            contactDetails: {}
            description: Sam Hopper
            legalEntityId: LE43319330319C8AYX89L2V59
            reference: YOUR_REFERENCE-2412C
            capabilities:
              issueCard:
                enabled: 'true'
                requested: 'true'
                allowed: 'false'
                verificationStatus: pending
              receiveFromTransferInstrument:
                enabled: 'true'
                requested: 'true'
                allowed: 'false'
                verificationStatus: pending
              sendToTransferInstrument:
                enabled: 'true'
                requested: 'true'
                allowed: 'false'
                verificationStatus: pending
              sendToBalanceAccount:
                enabled: 'true'
                requested: 'true'
                allowed: 'false'
                verificationStatus: pending
              receiveFromBalanceAccount:
                enabled: 'true'
                requested: 'true'
                allowed: 'false'
                verificationStatus: pending
            id: AH32272223222B5CZW6QZ2V34
            status: Active
        environment: test
        type: balancePlatform.accountHolder.created
    post-balancePlatform.accountHolder.updated-balancePlatform-accountHolder-updated:
      summary: Account holder updated
      description: Example webhook when an account holder was updated
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          accountHolder:
            description: Sam Hopper
            legalEntityId: LE43319330319C8AYX89L2V59
            reference: YOUR_REFERENCE-2412C
            capabilities:
              sendToTransferInstrument:
                enabled: 'true'
                requested: 'true'
                allowed: 'false'
                problems:
                - entity:
                    id: LE43319330319C8AYX89L2V59
                    type: LegalEntity
                  verificationErrors:
                  - code: '2_8037'
                    message: No bankStatement available to perform verification.
                    remediatingActions:
                    - code: '1_703'
                      message: Upload a bank statement
                    type: dataMissing
                verificationStatus: invalid
            id: AH32272223222B5CZW6QZ2V34
            status: Active
        environment: test
        type: balancePlatform.accountHolder.updated
    post-balancePlatform.balanceAccount.created-balancePlatform-balanceAccount-created:
      summary: Balance account created
      description: Example webhook when a balance account was created
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          balanceAccount:
            accountHolderId: AH3227C223222B5CZW72CCC73
            defaultCurrencyCode: EUR
            id: BA3227C223222B5CZW72VCC75
            status: Active
        environment: test
        type: balancePlatform.balanceAccount.created
    post-balancePlatform.balanceAccountSweep.created-balancePlatform-sweep-created:
      summary: Sweep created
      description: Example webhook when a sweep was created
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          accountId: BA3227C223222B5FTD99V8GRS
          sweep:
            id: SWPC4227C224555B5FTD2NT2JV4WN5
            schedule:
              type: weekly
            status: active
            targetAmount:
              currency: EUR
              value: 0
            triggerAmount:
              currency: EUR
              value: 0
            type: push
            counterparty:
              balanceAccountId: BA32272223222B5FTD2KR6TJD
            currency: EUR
        environment: test
        type: balancePlatform.balanceAccountSweep.created
    post-balancePlatform.balanceAccountSweep.deleted-balancePlatform-sweep-deleted:
      summary: Sweep deleted
      description: Example webhook when a sweep was deleted
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          accountId: BA3227C223222B5FTD99V8GRS
          sweep:
            id: SWPC4227C224555B5FTD2NT2JV4WN5
            schedule:
              type: weekly
            status: active
            targetAmount:
              currency: EUR
              value: 0
            triggerAmount:
              currency: EUR
              value: 0
            type: push
            counterparty:
              balanceAccountId: BA32272223222B5FTD2KR6TJD
            currency: EUR
        environment: test
        type: balancePlatform.balanceAccountSweep.deleted
    post-balancePlatform.balanceAccountSweep.updated-balancePlatform-sweep-updated:
      summary: Sweep updated
      description: Example webhook when a sweep was updated
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          accountId: BA3227C223222B5FTD99V8GRS
          sweep:
            id: SWPC4227C224555B5FTD2NT2JV4WN5
            schedule:
              type: weekly
            status: inactive
            targetAmount:
              currency: EUR
              value: 0
            triggerAmount:
              currency: EUR
              value: 0
            type: push
            counterparty:
              balanceAccountId: BA32272223222B5FTD2KR6TJD
            currency: EUR
        environment: test
        type: balancePlatform.balanceAccountSweep.created
    post-balancePlatform.incomingTransfer.created-balancePlatform-incomingTransfer-created:
      summary: Pending incoming transfer
      description: Example webhook when there is an incoming transfer
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          creationDate: '2021-05-03T15:20:14+02:00'
          id: IZL6685QQEBKFOOY
          accountHolder:
            description: S.Hopper
            id: AH32272223222B5BBXP2Z8ZWS
          amount:
            currency: EUR
            value: 15000
          balanceAccount:
            description: S.Hopper - Main account
            id: BA32272223222B5BQ3KWP86MW
          modification:
            amount:
              currency: EUR
              value: 15000
            type: PendingIncomingTransfer
          originalAmount:
            currency: EUR
            value: 15000
          paymentId: IZL6685QQEBKFON0
          status: PendingIncomingTransfer
        environment: test
        type: balancePlatform.incomingTransfer.created
    post-balancePlatform.incomingTransfer.updated-balancePlatform-incomingTransfer-updated:
      summary: Completed incoming transfer
      description: Example webhook when an incoming transfer was completed and funds
        were settled
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          creationDate: '2021-05-03T15:20:14+02:00'
          id: IZL6685QQEBKFOOY
          accountHolder:
            description: Liable Accountholder
            id: AH32272223222B5BBXP2Z8ZWS
          amount:
            currency: EUR
            value: 1500
          balanceAccount:
            description: second-account
            id: BA32272223222B5BQ3KWP86MW
          modification:
            amount:
              currency: EUR
              value: 1500
            type: IncomingTransfer
          originalAmount:
            currency: EUR
            value: 1500
          paymentId: IZL6685QQEBKFON0
          status: IncomingTransfer
        environment: test
        type: balancePlatform.incomingTransfer.updated
    post-balancePlatform.outgoingTransfer.created-balancePlatform-outgoingTransfer-created:
      summary: Completed outgoing funds transfer
      description: Example webhook when an outgoing funds transfer was completed
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          creationDate: '2021-05-03T15:20:06+02:00'
          id: 1W1UG35QQEBJLHZ8
          accountHolder:
            description: S.Hopper - Staff 123
            id: AH32272223222B5CZW6QZ2V34
          amount:
            currency: EUR
            value: -1500
          balanceAccount:
            description: My Balance Account
            id: BA3227C223222B5B9SCR82TMV
          originalAmount:
            currency: EUR
            value: -1500
          modification:
            amount:
              currency: EUR
              value: -1500
            type: OutgoingTransfer
          paymentId: 1W1UG35QQEBJLHZ8
          status: OutgoingTransfer
          valueDate: '2021-08-10T14:57:01+02:00'
        environment: test
        type: balancePlatform.outgoingTransfer.created
    post-balancePlatform.outgoingTransfer.updated-balancePlatform-outgoingTransfer-updated:
      summary: Outgoing funds transfer failed
      description: Example webhook if an outgoing funds transfer failed
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          creationDate: '2021-05-03T15:20:06+02:00'
          id: 1W1UG35QQEBJLHZ8
          accountHolder:
            description: S.Hopper - Staff 123
            id: AH32272223222B5CZW6QZ2V34
          amount:
            currency: EUR
            value: -1500
          balanceAccount:
            description: My Balance Account
            id: BA3227C223222B5B9SCR82TMV
          originalAmount:
            currency: EUR
            value: -1500
          modification:
            amount:
              currency: EUR
              value: -1500
            type: OutgoingTransfer
          paymentId: 1W1UG35QQEBJLHZ8
          status: TransferFailed
          valueDate: '2021-08-10T14:57:01+02:00'
        environment: test
        type: balancePlatform.outgoingTransfer.updated
    post-balancePlatform.payment.created-balancePlatform-payment-created-authorized:
      summary: Payment authorized
      description: Example webhook when a payment made with an Adyen-issued card was
        authorized
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          creationDate: '2021-04-01T12:56:38+02:00'
          id: 1W1UG35QDNNE694X
          accountHolder:
            description: S.Hopper - Staff 123
            id: AH32272223222B5CZW6QZ2V34
          amount:
            currency: EUR
            value: -2000
          authCode: '397402'
          balanceAccount:
            description: My Balance Account
            id: BA3227C223222B5B9SCR82TMV
          merchantData:
            mcc: '7999'
            merchantId: '526567789012346'
            nameLocation:
              city: Amsterdam
              country: NLD
              name: Store-ecom
              rawData: Store-ecom        Amsterdam     NLD
          modification:
            amount:
              currency: EUR
              value: -2000
            type: Authorised
          originalAmount:
            currency: EUR
            value: -2000
          paymentInstrument:
            description: S.Hopper - card
            id: PI32272223222B5CZW7BQ2V3T
          processingType: ecommerce
          relayedAuthorisationData:
            metadata:
              key1: value1
              key2: value2
              key3: value3
          status: Authorised
          transactionRulesResult:
            allRulesPassed: 'true'
          validationResult:
          - result: valid
            type: BalanceCheck
          - result: valid
            type: AccountLookup
          - result: valid
            type: RelayedAuthorisation
          - result: valid
            type: Screening
          - result: valid
            type: TransactionRules
          - result: valid
            type: TransactionValidation
          - result: valid
            type: PaymentInstrumentExpirationCheck
          - result: valid
            type: MaxAuthAmount
          - result: valid
            type: CVC2
        environment: test
        type: balancePlatform.payment.created
    post-balancePlatform.payment.created-balancePlatform-payment-created-funds-transfer:
      summary: Outgoing transfer requested
      description: Example webhook when an outgoing transfer was requested
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          creationDate: '2021-05-03T15:20:06+02:00'
          id: 1W1UG35QQEBJLHZ8
          accountHolder:
            description: Liable account holder
            id: AH32272223222B59MTF7458DP
            reference: Liable account holder
          amount:
            currency: EUR
            value: -15000
          balanceAccount:
            description: Liable balance account
            id: BA3227C223222B5B9SCR82TMV
          modification:
            amount:
              currency: EUR
              value: -15000
            type: Authorised
          originalAmount:
            currency: EUR
            value: -15000
          status: Authorised
        environment: test
        type: balancePlatform.payment.created
    post-balancePlatform.payment.created-balancePlatform-payment-created-refund-requested:
      summary: Refund requested
      description: Example webhook when your user requests a refund
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          creationDate: '2021-04-13T13:35:17+02:00'
          id: IZMP115QIFI1EXZK
          accountHolder:
            description: S. Hopper
            id: AH32272223222B59MTF7458DP
          amount:
            currency: EUR
            value: 2000
          balanceAccount:
            description: My Balance Account
            id: BA3227C223222B5B9SCR82TMV
          originalAmount:
            currency: EUR
            value: 2000
          modification:
            amount:
              currency: EUR
              value: 2000
            type: Authorised
          paymentInstrument:
            description: a test card
            id: PI3227C223222B5BKTS5RC3D3
          status: Authorised
        environment: test
        type: balancePlatform.payment.created
    post-balancePlatform.payment.created-balancePlatform-payment-created-rejected:
      summary: Payment declined
      description: Example webhook when a payment made with an Adyen-issued card was
        declined
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          creationDate: '2021-03-15T10:30:43+01:00'
          id: 2L470J5Q6VVUAWGT
          accountHolder:
            description: S.Hopper - Staff 123
            id: AH32272223222B5CZW6QZ2V34
          amount:
            currency: EUR
            value: -1000
          balanceAccount:
            description: My Balance Account
            id: BA3227C223222B5B9SCR82TMV
          merchantData:
            mcc: '7999'
            merchantId: '526567789012346'
            nameLocation:
              city: Amsterdam
              country: NLD
              name: Store-ecom
              rawData: Store-ecom        Amsterdam     NLD
          modification:
            amount:
              currency: EUR
              value: -1000
            type: Refused
          originalAmount:
            currency: EUR
            value: -1000
          paymentInstrument:
            description: S.Hopper - card
            id: PI32272223222B5CZW7BQ2V3T
          processingType: ecommerce
          status: Refused
          transactionRulesResult:
            allRulesPassed: 'false'
            failedTransactionRules:
            - reason: This event exceeds the maximum allowed number of transactions
                (1) in interval monthly
              transactionRule:
                description: Allow 1 transactions per month
                id: TR32272223222B5CSZ666CTKF
                reference: myRule12345
              transactionRuleSource:
                id: PI3227C223222B5BKTS5RC3D3
                type: PaymentInstrument
          validationResult:
          - result: valid
            type: MaxAuthAmount
          - result: valid
            type: CVC2
          - result: valid
            type: BalanceCheck
          - result: valid
            type: AccountLookup
          - result: invalid
            type: TransactionRules
          - result: valid
            type: TransactionValidation
          - result: notApplicable
            type: RelayedAuthorisation
          - result: valid
            type: PaymentInstrumentExpirationCheck
          - result: valid
            type: Screening
        environment: test
        type: balancePlatform.payment.created
    post-balancePlatform.payment.updated-balancePlatform-payment-updated-expired:
      summary: Payment authorization expired
      description: Example webhook when a payment authorization expired
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          creationDate: '2021-03-25T11:42:05+01:00'
          id: 2L470J5QAVHDDZTW
          accountHolder:
            description: S.Hopper - Staff 123
            id: AH32272223222B5CZW6QZ2V34
          amount:
            currency: EUR
            value: -2500
          authCode: '995167'
          balanceAccount:
            description: My Balance Account
            id: BA3227C223222B5B9SCR82TMV
          merchantData:
            mcc: '7999'
            merchantId: '526567789012346'
            nameLocation:
              city: Amsterdam
              country: NLD
              name: Store-ecom
              rawData: Store-ecom        Amsterdam     NLD
          modification:
            amount:
              currency: EUR
              value: 2500
            type: Expired
          originalAmount:
            currency: EUR
            value: -2500
          paymentInstrument:
            description: S.Hopper - card
            id: PI32272223222B5CZW7BQ2V3T
          processingType: ecommerce
          relayedAuthorisationData:
            metadata:
              key1: value1
              key2: value2
              key3: value3
          status: Expired
          transactionRulesResult:
            allRulesPassed: 'true'
          validationResult:
          - result: valid
            type: AccountLookup
          - result: valid
            type: PaymentInstrumentExpirationCheck
          - result: valid
            type: Screening
          - result: valid
            type: TransactionValidation
          - result: valid
            type: RelayedAuthorisation
          - result: valid
            type: BalanceCheck
          - result: valid
            type: CVC2
          - result: valid
            type: MaxAuthAmount
          - result: valid
            type: TransactionRules
        environment: test
        type: balancePlatform.payment.updated
    post-balancePlatform.payment.updated-balancePlatform-payment-updated-partially-cancelled:
      summary: Part of payment authorization cancelled
      description: Example webhook when a part of the authorization was cancelled
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          creationDate: '2021-03-25T11:42:05+01:00'
          id: 2L470J5QAVHDDZTW
          accountHolder:
            description: S.Hopper - Staff 123
            id: AH32272223222B5CZW6QZ2V34
          amount:
            currency: EUR
            value: -2500
          authCode: '995167'
          balanceAccount:
            description: My Balance Account
            id: BA3227C223222B5B9SCR82TMV
          merchantData:
            mcc: '7999'
            merchantId: '526567789012346'
            nameLocation:
              city: Amsterdam
              country: NLD
              name: Store-ecom
              rawData: Store-ecom        Amsterdam     NLD
          modification:
            amount:
              currency: EUR
              value: 1200
            type: Expired
          originalAmount:
            currency: EUR
            value: -2500
          paymentInstrument:
            description: S.Hopper - card
            id: PI32272223222B5CZW7BQ2V3T
          processingType: ecommerce
          relayedAuthorisationData:
            metadata:
              key1: value1
              key2: value2
              key3: value3
          status: Expired
          transactionRulesResult:
            allRulesPassed: 'true'
          validationResult:
          - result: valid
            type: AccountLookup
          - result: valid
            type: PaymentInstrumentExpirationCheck
          - result: valid
            type: Screening
          - result: valid
            type: TransactionValidation
          - result: valid
            type: RelayedAuthorisation
          - result: valid
            type: BalanceCheck
          - result: valid
            type: CVC2
          - result: valid
            type: MaxAuthAmount
          - result: valid
            type: TransactionRules
        environment: test
        type: balancePlatform.payment.updated
    post-balancePlatform.payment.updated-balancePlatform-payment-updated-partially-expired:
      summary: Part of payment authorization expired
      description: Example webhook when a part of the authorization expired
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          creationDate: '2021-03-25T11:42:05+01:00'
          id: 2L470J5QAVHDDZTW
          accountHolder:
            description: S.Hopper - Staff 123
            id: AH32272223222B5CZW6QZ2V34
          amount:
            currency: EUR
            value: -2500
          authCode: '995167'
          balanceAccount:
            description: My Balance Account
            id: BA3227C223222B5B9SCR82TMV
          merchantData:
            mcc: '7999'
            merchantId: '526567789012346'
            nameLocation:
              city: Amsterdam
              country: NLD
              name: Store-ecom
              rawData: Store-ecom        Amsterdam     NLD
          modification:
            amount:
              currency: EUR
              value: 1200
            type: Expired
          originalAmount:
            currency: EUR
            value: -2500
          paymentInstrument:
            description: S.Hopper - card
            id: PI32272223222B5CZW7BQ2V3T
          processingType: ecommerce
          relayedAuthorisationData:
            metadata:
              key1: value1
              key2: value2
              key3: value3
          status: Expired
          transactionRulesResult:
            allRulesPassed: 'true'
          validationResult:
          - result: valid
            type: AccountLookup
          - result: valid
            type: PaymentInstrumentExpirationCheck
          - result: valid
            type: Screening
          - result: valid
            type: TransactionValidation
          - result: valid
            type: RelayedAuthorisation
          - result: valid
            type: BalanceCheck
          - result: valid
            type: CVC2
          - result: valid
            type: MaxAuthAmount
          - result: valid
            type: TransactionRules
        environment: test
        type: balancePlatform.payment.updated
    post-balancePlatform.paymentInstrument.created-balancePlatform-paymentInstrument-created:
      summary: Card updated
      description: Example webhook when a card was updated
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          paymentInstrument:
            balanceAccountId: BA3227C223222B5CZW72VCC75
            description: S.Hopper - card
            issuingCountryCode: GB
            status: Suspended
            type: card
            card:
              cardholderName: Sam Hopper
              formFactor: virtual
              bin: '555544'
              expiration:
                month: '04'
                year: '2024'
              lastFour: '2732'
            id: PI32272223222B5CZW7BQ2V3T
        environment: test
        type: balancePlatform.paymentInstrument.updated
    post-balancePlatform.paymentInstrument.updated-balancePlatform-paymentInstrument-updated:
      summary: Card created
      description: Example webhook when a card was created
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          paymentInstrument:
            balanceAccountId: BA3227C223222B5CZW72VCC75
            description: S.Hopper - card
            issuingCountryCode: GB
            status: Active
            type: card
            card:
              cardholderName: Sam Hopper
              formFactor: virtual
              bin: '555544'
              expiration:
                month: '04'
                year: '2024'
              lastFour: '2732'
            id: PI32272223222B5CZW7BQ2V3T
        environment: test
        type: balancePlatform.paymentInstrument.created
    post-balancePlatform.report.created-balancePlatform.report.created:
      summary: Report created
      description: Example webhook when a report was generated and is ready to be
        downloaded
      value:
        data:
          balancePlatform: YOUR_BALANCE_PLATFORM
          accountHolder:
            id: AH32272223222B59MTF7458DP
          balanceAccount:
            id: BA3227C223222B5B9SCR82TMV
          creationDate: '2021-07-02T02:01:08+02:00'
          fileName: balanceplatform_payments_accounting_report_2021_07_01.csv
          reportType: balanceplatform_payments_accounting_report
          downloadUrl: https://balanceplatform-test.adyen.com/balanceplatform/.../.../.../balanceplatform_payments_accounting_report_2021_07_01.csv
        environment: test
        type: balancePlatform.report.created
