{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/adyen/main/json-schema/adyen-donation-request-schema.json", "title": "DonationRequest", "x-generated": "2026-10-12", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/adyen-donate-api-openapi.yml#/components/schemas/DonationRequest", "properties": { "donationAccount": { "description": "The Adyen account name of the charity.", "type": "string" }, "merchantAccount": { "description": "The merchant account that is used to process the payment.", "type": "string" }, "modificationAmount": { "description": "The amount to be donated.The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount.", "$ref": "#/$defs/Amount" }, "originalReference": { "description": "The original pspReference of the payment to modify.\nThis reference is returned in:\n* authorisation response\n* authorisation notification\n\n", "type": "string" }, "platformChargebackLogic": { "x-addedInVersion": "68", "description": "Defines how to book chargebacks when using [Adyen for Platforms](https://docs.adyen.com/marketplaces-and-platforms/processing-payments#chargebacks-and-disputes).", "$ref": "#/$defs/PlatformChargebackLogic" }, "reference": { "description": "Your reference for the payment modification. This reference is visible in Customer Area and in reports.\nMaximum length: 80 characters.", "type": "string" } }, "required": [ "merchantAccount", "donationAccount", "modificationAmount" ], "type": "object", "$defs": { "Amount": { "properties": { "currency": { "description": "The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).", "maxLength": 3, "minLength": 3, "type": "string" }, "value": { "description": "The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).", "format": "int64", "type": "integer" } }, "required": [ "value", "currency" ], "type": "object" }, "PlatformChargebackLogic": { "properties": { "behavior": { "x-addedInVersion": "68", "description": "The method of handling the chargeback.\n\nPossible values: **deductFromLiableAccount**, **deductFromOneBalanceAccount**, **deductAccordingToSplitRatio**.", "enum": [ "deductAccordingToSplitRatio", "deductFromLiableAccount", "deductFromOneBalanceAccount" ], "type": "string" }, "costAllocationAccount": { "x-addedInVersion": "68", "description": "The unique identifier of the balance account to which the chargeback fees are booked. By default, the chargeback fees are booked to your liable balance account.", "type": "string" }, "targetAccount": { "x-addedInVersion": "68", "description": "The unique identifier of the balance account against which the disputed amount is booked.\n\nRequired if `behavior` is **deductFromOneBalanceAccount**.", "type": "string" } }, "type": "object" } } }