openapi: 3.1.0 info: version: '3' x-publicVersion: true title: Accounting notifications description: 'Adyen sends notifications through webhooks to inform your system about incoming and outgoing transfers in your platform. You can use these 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: '2023-02-10T11:25:40Z' 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: - General tags: [] x-staticResponse: response.json webhooks: balancePlatform.transfer.created: post: tags: - General summary: Transfer created description: Adyen sends this webhook when there are fund movements on your platform. x-addedInVersion: '1' operationId: post-balancePlatform.transfer.created x-groupName: General x-sortIndex: 0 x-methodName: transferCreated security: - ApiKeyAuth: [] requestBody: content: application/json: examples: balancePlatform-transfer-created: $ref: '#/components/examples/post-balancePlatform.transfer.created-balancePlatform-transfer-created' schema: $ref: '#/components/schemas/TransferNotificationRequest' responses: '200': content: application/json: examples: balancePlatform-transfer-created: $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/BalancePlatformNotificationResponse' description: OK - the request has succeeded. balancePlatform.transfer.updated: post: tags: - General summary: Transfer updated description: "Adyen sends this webhook when the status of a transfer changes.\ \ Use the `data.id` to track the original transfer resource in the [balancePlatform.transfer.created](https://docs.adyen.com/api-explorer/accounting-webhooks/1/post/balancePlatform.transfer.created)\ \ webhook.\n\nThe `status` field indicates the event that triggered the webhook.\ \ \n\n" x-addedInVersion: '1' operationId: post-balancePlatform.transfer.updated x-groupName: General x-sortIndex: 0 x-methodName: transferUpdated security: - ApiKeyAuth: [] requestBody: content: application/json: examples: balancePlatform-transfer-updated: $ref: '#/components/examples/post-balancePlatform.transfer.updated-balancePlatform-transfer-updated' schema: $ref: '#/components/schemas/TransferNotificationRequest' responses: '200': content: application/json: examples: balancePlatform-transfer-updated: $ref: '#/components/examples/WebhookAck' schema: $ref: '#/components/schemas/BalancePlatformNotificationResponse' description: OK - the request has succeeded. components: schemas: AULocalAccountIdentification: additionalProperties: false properties: accountNumber: description: The bank account number, without separators or whitespace. maxLength: 9 minLength: 5 type: string bsbCode: description: The 6-digit [Bank State Branch (BSB) code](https://en.wikipedia.org/wiki/Bank_state_branch), without separators or whitespace. maxLength: 6 minLength: 6 type: string type: default: auLocal description: '**auLocal**' enum: - auLocal type: string required: - type - accountNumber - bsbCode AdditionalBankIdentification: properties: code: description: The value of the additional bank identification. type: string type: description: "The type of additional bank identification, depending on the\ \ country.\n\nPossible values:\n\n * **gbSortCode**: The 6-digit [UK sort\ \ code](https://en.wikipedia.org/wiki/Sort_code), without separators or\ \ spaces\n * **usRoutingNumber**: The 9-digit [routing number](https://en.wikipedia.org/wiki/ABA_routing_transit_number),\ \ without separators or spaces." enum: - gbSortCode - usRoutingNumber type: string Address-2: properties: city: description: The name of the city. 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 line1: description: First line of the street address. type: string line2: description: Second line of the street address. type: string postalCode: description: 'The postal code. Maximum length: * 5 digits for an address in the US. * 10 characters for an address in all other countries.' type: string stateOrProvince: description: 'The two-letter 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 required: - 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 AmountAdjustment: properties: amount: x-addedInVersion: '3' description: The adjustment amount. $ref: '#/components/schemas/Amount' amountAdjustmentType: x-addedInVersion: '3' description: 'The type of markup that is applied to an authorised payment. Possible values: **exchange**, **forexMarkup**, **authHoldReserve**, **atmMarkup**.' enum: - atmMarkup - authHoldReserve - exchange - forexMarkup type: string basepoints: x-addedInVersion: '3' description: The basepoints associated with the applied markup. format: int32 type: integer BRLocalAccountIdentification: additionalProperties: false properties: accountNumber: description: The bank account number (without separators or whitespace). maxLength: 10 minLength: 1 type: string bankCode: description: The 3-digit Brazilian bank code (with leading zeros). maxLength: 3 minLength: 3 type: string branchNumber: description: The bank account branch number (without separators or whitespace). maxLength: 4 minLength: 1 type: string type: default: brLocal description: '**brLocal**' enum: - brLocal type: string required: - type - branchNumber - accountNumber - bankCode BalanceMutation: properties: balance: x-addedInVersion: '3' description: The amount in the payment's currency that is debited or credited on the balance accounting register. format: int64 type: integer currency: x-addedInVersion: '3' description: The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). type: string received: x-addedInVersion: '3' description: The amount in the payment's currency that is debited or credited on the received accounting register. format: int64 type: integer reserved: x-addedInVersion: '3' description: The amount in the payment's currency that is debited or credited on the reserved accounting register. format: int64 type: integer 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 BankAccountV3: properties: accountHolder: description: Information about the owner of the bank account. $ref: '#/components/schemas/PartyIdentification-2' accountIdentification: description: Contains the bank account details. The fields required in this object depend on the country of the bank account and the currency of the transfer. oneOf: - $ref: '#/components/schemas/AULocalAccountIdentification' - $ref: '#/components/schemas/BRLocalAccountIdentification' - $ref: '#/components/schemas/CALocalAccountIdentification' - $ref: '#/components/schemas/CZLocalAccountIdentification' - $ref: '#/components/schemas/DKLocalAccountIdentification' - $ref: '#/components/schemas/HULocalAccountIdentification' - $ref: '#/components/schemas/IbanAccountIdentification' - $ref: '#/components/schemas/NOLocalAccountIdentification' - $ref: '#/components/schemas/NumberAndBicAccountIdentification' - $ref: '#/components/schemas/PLLocalAccountIdentification' - $ref: '#/components/schemas/SELocalAccountIdentification' - $ref: '#/components/schemas/SGLocalAccountIdentification' - $ref: '#/components/schemas/UKLocalAccountIdentification' - $ref: '#/components/schemas/USLocalAccountIdentification' required: - accountIdentification - accountHolder CALocalAccountIdentification: additionalProperties: false properties: accountNumber: description: The 5- to 12-digit bank account number, without separators or whitespace. maxLength: 12 minLength: 5 type: string institutionNumber: description: The 3-digit institution number, without separators or whitespace. maxLength: 3 minLength: 3 type: string transitNumber: description: The 5-digit transit number, without separators or whitespace. maxLength: 5 minLength: 5 type: string type: default: caLocal description: '**caLocal**' enum: - caLocal type: string required: - type - accountNumber - institutionNumber - transitNumber CZLocalAccountIdentification: additionalProperties: false properties: accountNumber: description: "The 2- to 16-digit bank account number (\u010C\xEDslo \xFA\ \u010Dtu) in the following format:\n\n- The optional prefix (p\u0159ed\u010D\ \xEDsl\xED).\n\n- The required second part (z\xE1kladn\xED \u010D\xE1\ st) which must be at least two non-zero digits.\n\nExamples:\n\n- **19-123457**\ \ (with prefix)\n\n- **123457** (without prefix)\n\n- **000019-0000123457**\ \ (with prefix, normalized)\n\n- **000000-0000123457** (without prefix,\ \ normalized)" maxLength: 17 minLength: 2 type: string bankCode: description: "The 4-digit bank code (K\xF3d banky), without separators or\ \ whitespace." maxLength: 4 minLength: 4 type: string type: default: czLocal description: '**czLocal**' enum: - czLocal type: string required: - type - accountNumber - bankCode CounterpartyV3: 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/BankAccountV3' 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/#/legalentity/latest/post/transferInstruments__resParam_id). type: string DKLocalAccountIdentification: additionalProperties: false properties: accountNumber: description: The 4-10 digits bank account number (Kontonummer) (without separators or whitespace). maxLength: 10 minLength: 4 type: string bankCode: description: The 4-digit bank code (Registreringsnummer) (without separators or whitespace). maxLength: 4 minLength: 4 type: string type: default: dkLocal description: '**dkLocal**' enum: - dkLocal type: string required: - type - accountNumber - bankCode HULocalAccountIdentification: additionalProperties: false properties: accountNumber: description: The 24-digit bank account number, without separators or whitespace. maxLength: 24 minLength: 24 type: string type: default: huLocal description: '**huLocal**' enum: - huLocal type: string required: - type - accountNumber IbanAccountIdentification: additionalProperties: false properties: iban: description: The international bank account number as defined in the [ISO-13616](https://www.iso.org/standard/81090.html) standard. type: string type: default: iban description: '**iban**' enum: - iban type: string required: - type - iban 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 NOLocalAccountIdentification: additionalProperties: false properties: accountNumber: description: The 11-digit bank account number, without separators or whitespace. maxLength: 11 minLength: 11 type: string type: default: noLocal description: '**noLocal**' enum: - noLocal type: string required: - type - accountNumber 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 NumberAndBicAccountIdentification: additionalProperties: false properties: accountNumber: description: The bank account number, without separators or whitespace. The length and format depends on the bank or country. maxLength: 34 type: string additionalBankIdentification: description: Additional identification codes of the bank. Some banks may require these identifiers for cross-border transfers. $ref: '#/components/schemas/AdditionalBankIdentification' bic: description: The bank's 8- or 11-character BIC or SWIFT code. maxLength: 11 minLength: 8 type: string type: default: numberAndBic description: '**numberAndBic**' enum: - numberAndBic type: string required: - type - accountNumber - bic PLLocalAccountIdentification: additionalProperties: false properties: accountNumber: description: The 26-digit bank account number ([Numer rachunku](https://pl.wikipedia.org/wiki/Numer_Rachunku_Bankowego)), without separators or whitespace. maxLength: 26 minLength: 26 type: string type: default: plLocal description: '**plLocal**' enum: - plLocal type: string required: - type - accountNumber PartyIdentification-2: properties: address: description: Address of the bank account owner. $ref: '#/components/schemas/Address-2' firstName: description: First name of the individual. Required when `type` is **individual**. type: string fullName: description: The name of the entity. type: string lastName: description: Last name of the individual. Required when `type` is **individual**. type: string type: default: unknown description: "The type of entity that owns the bank account.\n\n Possible\ \ values: **individual**, **organization**, or **unknown**." enum: - individual - organization - unknown type: string required: - fullName PaymentInstrument: properties: description: description: The description of the resource. type: string id: description: The unique identifier of the resource. type: string reference: description: The reference for the resource. type: string tokenType: x-addedInVersion: '3' description: The type of wallet the network token is associated with. type: string RelayedAuthorisationData-2: properties: metadata: x-addedInVersion: '3' additionalProperties: type: string description: Contains key-value pairs of your references and descriptions, for example, `customId`:`your-own-custom-field-12345`. type: object reference: x-addedInVersion: '3' description: Your reference for the relayed authorisation data. type: string Resource: properties: balancePlatform: description: The unique identifier of the balance platform. type: string creationDate: description: The 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 for the resource. type: string SELocalAccountIdentification: additionalProperties: false properties: accountNumber: description: The 7- to 10-digit bank account number ([Bankkontonummer](https://sv.wikipedia.org/wiki/Bankkonto)), without the clearing number, separators, or whitespace. maxLength: 10 minLength: 7 type: string clearingNumber: description: The 4- to 5-digit clearing number ([Clearingnummer](https://sv.wikipedia.org/wiki/Clearingnummer)), without separators or whitespace. maxLength: 5 minLength: 4 type: string type: default: seLocal description: '**seLocal**' enum: - seLocal type: string required: - type - accountNumber - clearingNumber SGLocalAccountIdentification: additionalProperties: false properties: accountNumber: description: The 4- to 19-digit bank account number, without separators or whitespace. maxLength: 19 minLength: 4 type: string bic: description: The bank's 8- or 11-character BIC or SWIFT code. maxLength: 11 minLength: 8 type: string type: default: sgLocal description: '**sgLocal**' enum: - sgLocal type: string required: - accountNumber - bic 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/TransactionRuleReference' transactionRuleSource: description: Contains the type and ID of the resource to which the transaction rule is linked. $ref: '#/components/schemas/TransactionRuleSource' TransactionRuleReference: properties: description: description: The description of the resource. type: string id: description: The unique identifier of the resource. type: string reference: description: The reference for the resource. type: string 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: advice: description: The advice given by the Risk analysis. type: string 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 score: description: The score of the Risk analysis. format: int32 type: integer TransferEvent: properties: amountAdjustments: x-addedInVersion: '3' description: The amount adjustments in this transfer. items: $ref: '#/components/schemas/AmountAdjustment' type: array bookingDate: x-addedInVersion: '3' description: The date when the transfer request was sent. format: date-time type: string id: x-addedInVersion: '3' description: The unique identifier of the transfer event. type: string mutations: x-addedInVersion: '3' description: The list of the balance mutation per event. items: $ref: '#/components/schemas/BalanceMutation' type: array originalAmount: x-addedInVersion: '3' description: The amount in the original currency. $ref: '#/components/schemas/Amount' reason: x-addedInVersion: '3' description: The reason for the transfer status. enum: - amountLimitExceded - approved - counterpartyAccountBlocked - counterpartyAccountClosed - counterpartyAccountNotFound - counterpartyAddressRequired - counterpartyBankTimedOut - counterpartyBankUnavailable - error - notEnoughBalance - refusedByCounterpartyBank - routeNotFound - unknown type: string status: x-addedInVersion: '3' description: The status of the transfer event. enum: - atmWithdrawal - atmWithdrawalReversalPending - atmWithdrawalReversed - authAdjustmentAuthorised - authAdjustmentError - authAdjustmentRefused - authorised - bankTransfer - bankTransferPending - booked - bookingPending - cancelled - capturePending - captureReversalPending - captureReversed - captured - chargeback - chargebackPending - chargebackReversalPending - chargebackReversed - credited - depositCorrection - depositCorrectionPending - dispute - disputeClosed - disputeExpired - disputeNeedsReview - error - expired - failed - fee - feePending - internalTransfer - internalTransferPending - invoiceDeduction - invoiceDeductionPending - manualCorrectionPending - manuallyCorrected - matchedStatement - matchedStatementPending - merchantPayin - merchantPayinPending - merchantPayinReversed - merchantPayinReversedPending - miscCost - miscCostPending - paymentCost - paymentCostPending - received - refundPending - refundReversalPending - refundReversed - refunded - refused - reserveAdjustment - reserveAdjustmentPending - returned - secondChargeback - secondChargebackPending - undefined type: string transactionId: x-addedInVersion: '3' description: The id of the transaction that is related to this accounting event. Only sent for events of type **accounting** where the balance changes. type: string type: x-addedInVersion: '3' description: 'The type of the transfer event. Possible values: **accounting**, **tracking**.' enum: - accounting - tracking type: string updateDate: x-addedInVersion: '3' description: The date when the tracking status was updated. format: date-time type: string valueDate: x-addedInVersion: '3' description: A future date, when the funds are expected to be deducted from or credited to the balance account. format: date-time type: string TransferNotificationData: properties: accountHolder: x-addedInVersion: '3' description: The account holder associated with the balance account used in the transfer. $ref: '#/components/schemas/ResourceReference' amount: x-addedInVersion: '1' description: The amount of the transfer. $ref: '#/components/schemas/Amount' balanceAccount: x-addedInVersion: '3' description: Contains information about the balance account involved in the transfer. $ref: '#/components/schemas/ResourceReference' balanceAccountId: x-addedInVersion: '3' deprecated: true x-deprecatedInVersion: '3' x-deprecatedMessage: Use the [id](https://docs.adyen.com/api-explorer/accounting-webhooks/latest/post/balancePlatform.transfer.created#request-data-balanceAccount-id) in the `balanceAccount` object instead. description: The unique identifier of the source [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id). type: string balances: x-addedInVersion: '3' description: The list of the latest balance statuses in the transfer. items: $ref: '#/components/schemas/BalanceMutation' type: array category: x-addedInVersion: '3' description: "The type of transfer.\n\nPossible values:\n\n - **bank**:\ \ Transfer to a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id)\ \ or a bank account.\n\n- **internal**: Transfer to another [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id)\ \ within your platform.\n\n- **issuedCard**: Transfer initiated by a Adyen-issued\ \ card.\n\n- **platformPayment**: Fund movements related to payments that\ \ are acquired for your users." enum: - bank - internal - issuedCard - platformPayment type: string counterparty: x-addedInVersion: '3' description: The other party in the transfer. $ref: '#/components/schemas/CounterpartyV3' description: x-addedInVersion: '1' description: A human-readable description for the transfer. You can use alphanumeric characters and hyphens. We recommend sending a maximum of 140 characters, otherwise the description may be truncated. type: string direction: x-addedInVersion: '2' description: 'The direction of the transfer. Possible values: **incoming**, **outgoing**.' enum: - incoming - outgoing type: string events: x-addedInVersion: '3' description: The list of events leading up to the current status of the transfer. items: $ref: '#/components/schemas/TransferEvent' type: array id: description: The ID of the resource. type: string modificationMerchantReference: x-addedInVersion: '3' description: The capture's merchant reference included in the transfer. type: string modificationPspReference: x-addedInVersion: '3' description: The capture reference included in the transfer. type: string panEntryMode: x-addedInVersion: '3' description: 'Indicates the method used for entering the PAN to initiate a transaction. Possible values: **manual**, **chip**, **magstripe**, **contactless**, **cof**, **ecommerce**, **token**.' enum: - chip - cof - contactless - ecommerce - magstripe - manual - token type: string paymentInstrument: x-addedInVersion: '3' description: Contains information about the payment instrument used in the transfer. $ref: '#/components/schemas/PaymentInstrument' paymentInstrumentId: description: The unique identifier of the source [payment instrument](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/paymentInstruments__resParam_id). type: string paymentMerchantReference: x-addedInVersion: '3' description: The payment's merchant reference included in the transfer. type: string priority: x-addedInVersion: '3' description: 'The priority for the bank transfer. This sets the speed at which the transfer is sent and the fees that you have to pay. Required for transfers with `category` **bank**. Possible values: * **regular**: For normal, low-value transactions. * **fast**: Faster way to transfer funds but has higher fees. Recommended for high-priority, low-value transactions. * **wire**: Fastest way to transfer funds but has the highest fees. Recommended for high-priority, high-value transactions. * **instant**: Instant way to transfer funds in [SEPA countries](https://www.ecb.europa.eu/paym/integration/retail/sepa/html/index.en.html) .* **crossBorder**: High value transfer to receipt in a different country. ' enum: - crossBorder - directDebit - fast - instant - regular - wire type: string processingType: x-addedInVersion: '3' description: Contains information about how the payment was processed. For example, **ecommerce** for online or **pos** for in-person payments. enum: - atmWithdraw - balanceInquiry - ecommerce - moto - pos - purchaseWithCashback - recurring - token type: string pspPaymentReference: x-addedInVersion: '3' description: The payment reference included in the transfer. type: string reason: x-addedInVersion: '2' description: Additional information about the status of the transfer. enum: - amountLimitExceded - approved - counterpartyAccountBlocked - counterpartyAccountClosed - counterpartyAccountNotFound - counterpartyAddressRequired - counterpartyBankTimedOut - counterpartyBankUnavailable - error - notEnoughBalance - refusedByCounterpartyBank - routeNotFound - unknown type: string reference: x-addedInVersion: '2' description: Your reference for the transfer, used internally within your platform. If you don't provide this in the request, Adyen generates a unique reference. maxLength: 80 type: string referenceForBeneficiary: x-addedInVersion: '2' description: " A reference that is sent to the recipient. This reference\ \ is also sent in all notification webhooks related to the transfer, so\ \ you can use it to track statuses for both the source and recipient of\ \ funds.\n\n Supported characters: **a-z**, **A-Z**, **0-9**. The maximum\ \ length depends on the `category`.\n\n- **internal**: 80 characters\n\ \n- **bank**: 35 characters when transferring to an IBAN, 15 characters\ \ for others." maxLength: 80 type: string relayedAuthorisationData: x-addedInVersion: '3' description: If you are using relayed authorisation, this object contains information from the relayed authorisation response from your server. $ref: '#/components/schemas/RelayedAuthorisationData-2' sequenceNumber: x-addedInVersion: '3' description: 'The sequence number of the transfer notification. The numbers start from 1 and increase with each new notification for a specific transfer. It can help you restore the correct sequence of events even if they arrive out of order.' format: int32 type: integer status: x-addedInVersion: '2' description: "The result of the transfer.\n\n For example, **authorised**,\ \ **refused**, or **error**." enum: - atmWithdrawal - atmWithdrawalReversalPending - atmWithdrawalReversed - authAdjustmentAuthorised - authAdjustmentError - authAdjustmentRefused - authorised - bankTransfer - bankTransferPending - booked - bookingPending - cancelled - capturePending - captureReversalPending - captureReversed - captured - chargeback - chargebackPending - chargebackReversalPending - chargebackReversed - credited - depositCorrection - depositCorrectionPending - dispute - disputeClosed - disputeExpired - disputeNeedsReview - error - expired - failed - fee - feePending - internalTransfer - internalTransferPending - invoiceDeduction - invoiceDeductionPending - manualCorrectionPending - manuallyCorrected - matchedStatement - matchedStatementPending - merchantPayin - merchantPayinPending - merchantPayinReversed - merchantPayinReversedPending - miscCost - miscCostPending - paymentCost - paymentCostPending - received - refundPending - refundReversalPending - refundReversed - refunded - refused - reserveAdjustment - reserveAdjustmentPending - returned - secondChargeback - secondChargebackPending - undefined type: string tracking: x-addedInVersion: '3' description: The tracking information for the transfer. $ref: '#/components/schemas/TransferNotificationTransferTracking' transactionId: x-addedInVersion: '3' deprecated: true x-deprecatedInVersion: '3' x-deprecatedMessage: Use the [transactionId](https://docs.adyen.com/api-explorer/accounting-webhooks/latest/post/balancePlatform.transfer.created#request-data-events-transactionId) in the `events` array instead. description: The ID of the transaction that is created based on the transfer. type: string transactionRulesResult: x-addedInVersion: '3' description: Contains the results of the evaluation of the transaction rules. $ref: '#/components/schemas/TransactionRulesResult' type: x-addedInVersion: '3' description: The type of transfer or transaction. For example, **refund**, **payment**, **internalTransfer**, **bankTransfer**. enum: - atmWithdrawal - atmWithdrawalReversal - balanceAdjustment - balanceRollover - bankTransfer - capture - captureReversal - chargeback - chargebackReversal - depositCorrection - fee - grant - installment - installmentReversal - internalTransfer - invoiceDeduction - leftover - manualCorrection - miscCost - payment - paymentCost - refund - refundReversal - repayment - reserveAdjustment - secondChargeback type: string validationFacts: x-addedInVersion: '3' description: The evaluation of the validation facts. See [validation checks](https://docs.adyen.com/issuing/validation-checks) for more information. items: $ref: '#/components/schemas/TransferNotificationValidationFact' type: array required: - category - amount - counterparty - status TransferNotificationRequest: properties: data: description: Contains details about the event. $ref: '#/components/schemas/TransferNotificationData' environment: description: 'The environment from which the webhook originated. Possible values: **test**, **live**.' type: string type: description: The type of the notification. enum: - balancePlatform.transfer.created - balancePlatform.transfer.updated type: string required: - environment - data TransferNotificationTransferTracking: properties: status: x-addedInVersion: '3' description: The tracking status of the transfer. enum: - credited type: string TransferNotificationValidationFact: properties: result: description: The evaluation result of the validation fact. type: string type: description: The type of the validation fact. type: string UKLocalAccountIdentification: additionalProperties: false properties: accountNumber: description: The 8-digit bank account number, without separators or whitespace. maxLength: 8 minLength: 8 type: string sortCode: description: The 6-digit [sort code](https://en.wikipedia.org/wiki/Sort_code), without separators or whitespace. maxLength: 6 minLength: 6 type: string type: default: ukLocal description: '**ukLocal**' enum: - ukLocal type: string required: - type - accountNumber - sortCode USLocalAccountIdentification: additionalProperties: false properties: accountNumber: description: The bank account number, without separators or whitespace. maxLength: 18 minLength: 2 type: string accountType: default: checking description: 'The bank account type. Possible values: **checking** or **savings**. Defaults to **checking**.' enum: - checking - savings type: string routingNumber: description: The 9-digit [routing number](https://en.wikipedia.org/wiki/ABA_routing_transit_number), without separators or whitespace. maxLength: 9 minLength: 9 type: string type: default: usLocal description: '**usLocal**' enum: - usLocal type: string required: - type - accountNumber - routingNumber 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.transfer.created-balancePlatform-transfer-created: summary: Incoming transfer description: Example webhook for an incoming transfer value: data: accountHolder: description: Your description for the account holder id: AH00000000000000000000001 reference: Your reference for the account holder amount: currency: EUR value: 9999 balanceAccount: id: BA00000000000000000000001 balanceAccountId: BA00000000000000000000001 balancePlatform: YOUR_BALANCE_PLATFORM category: platformPayment creationDate: '2022-08-15T13:30:05+02:00' description: Your description for the transfer direction: incoming events: - bookingDate: '2022-08-15T13:30:18+02:00' mutations: [] status: received id: 3JY1Y65VWIRGUETT modificationMerchantReference: modificationPspReference: '8026605630053940' paymentMerchantReference: Payment reference pspPaymentReference: CWBC43ZX2VTFWR82 reason: approved reference: Your reference for the transfer sequenceNumber: 1 status: received type: capture environment: test type: balancePlatform.transfer.created post-balancePlatform.transfer.updated-balancePlatform-transfer-updated: summary: Incoming transfer status changed description: Example webhook when an incoming transfer's status changes value: data: accountHolder: description: Your description for the account holder id: AH00000000000000000000001 reference: Your reference for the account holder amount: currency: EUR value: 9999 balanceAccount: id: BA00000000000000000000001 balanceAccountId: BA00000000000000000000001 balancePlatform: YOUR_BALANCE_PLATFORM balances: - currency: EUR reserved: 9999 category: platformPayment creationDate: '2022-08-15T13:30:05+02:00' description: Your description for the transfer direction: incoming events: - bookingDate: '2022-08-15T13:30:18+02:00' mutations: [] status: received - bookingDate: '2022-08-15T13:30:18+02:00' mutations: - currency: EUR reserved: 9999 status: authorised id: 3JY1Y65VWIRGUETT modificationMerchantReference: modificationPspReference: '8026605630053940' paymentMerchantReference: Payment reference pspPaymentReference: CWBC43ZX2VTFWR82 reason: approved reference: Your reference for the transfer sequenceNumber: 2 status: authorised type: capture environment: test type: balancePlatform.transfer.updated