# Cancels or refunds a payment. **POST /cancelOrRefund** Cancels a payment if it has not been captured yet, or refunds it if it has already been captured. This is useful when it is not certain if the payment has been captured or not (for example, when using auto-capture). > Do not use this request for payments that involve (multiple) partial captures. For more information, refer to [Cancel or refund](https://docs.adyen.com/developers/payment-modifications/cancel-or-refund). ## Servers ## Parameters ### Body: (object) - **additionalData** (object) This field contains additional data, which may be required for a particular modification request. The additionalData object consists of entries, each of which includes the key and value. For more information on possible key-value pairs, refer to the [ModificationRequest.additionalData](https://docs.adyen.com/developers/api-reference/payments-api/modificationrequest/modificationrequest-additionaldata) section. - **merchantAccount** (string) The merchant account that is used to process the payment. - **modificationAmount** (object) The amount that needs to be captured/refunded. Required for `/capture` and `/refund`, not allowed for `/cancel`. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. - **originalMerchantReference** (string) The original merchant reference to cancel. - **originalReference** (string) The original pspReference of the payment to modify. This reference is returned in: * authorisation response * authorisation notification - **reference** (string) Optionally, you can specify your reference for the payment modification. This reference is visible in Customer Area and in reports. Maximum length: 80 characters. - **splits** (array[object]) The details of how the payment should be split when distributing a payment to a Marketpay Marketplace and its Accounts. - **tenderReference** (string) The transaction reference provided by the PED. For Point-of-sale integrations only. - **uniqueTerminalId** (string) Unique terminal ID for the PED that originally processed the request. For Point-of-sale integrations only. ## Responses ### 500 Internal Server Error - the server could not process the request. ### 401 Unauthorized - authentication required. ### 403 Forbidden - insufficient permissions to process the request. ### 422 Unprocessable Entity - a request validation error. ### 200 OK - the request has succeeded. #### Body: (object) - **additionalData** (object) This field contains additional data, which may be returned in a particular modification response. - **pspReference** (string) Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request. - **response** (string) Indicates if the modification request has been received for processing. [Powered by Bump.sh](https://bump.sh)