# Cancel a Top-Up Cancels the Top-Up specified in the request URL. Specify the reason for the cancellation in the request body. Endpoint: POST /v1/persons/{person_id}/accounts/{account_id}/topups/{topup_id}/cancel Version: 1.0 ## Path parameters: - `person_id` (string, required) - `account_id` (string, required) - `topup_id` (string, required) ## Request fields (application/json): - `cancellation_reason` (string, required) The reason for cancellation. Enum: "duplicate", "fraudulent", "requested_by_customer", "abandoned" ## Response 200 fields (application/json): - `id` (string, required) Unique ID of the Top-Up. Example: "b76cdcc321d345618084feedc47bbb1d" - `amount` (object, required) The amount of the Top-Up. - `amount.value` (integer) The amount in Euro cents. Example: 10000 - `amount.currency` (string) The currency of the Top-Up. Enum: "EUR" - `status` (string, required) The current status of the Top-Up. Enum: "ACCEPTED", "CONFIRMED", "EXECUTED", "DECLINED", "CANCELLED" - `acquirer_error_code` (string,null) Error code forwarded by the Acquirer's API (in case there was an error on the Acquirer's end). - `acquirer_decline_code` (string,null) If the Acquirer declines the Top-Up, then this property will contain the decline code forwarded by the Acquirer's API. - `cancellation_reason` (string,null) The reason why the Top-Up was cancelled. Only present if the is 'CANCELLED'. Enum: "abandoned", "duplicate", "fraudulent", "requested_by_customer" - `decline_reason` (string,null) The reason why the Top-Up was declined. Usually present if the is 'DECLINED' due to a technical issue. - `client_secret` (string) The client secret key provided by the Acquirer's API for use in their frontend SDK. Example: "pi_1DrPlP2eZvKYlo2CSBQ7uqFH_secret_o1A7UsYFLWeGISUD1QYNkT8IU" - `instruction_id` (string,null) Instruction ID of the Solaris credit transfer transaction. Example: "3eba1ee2d8bc4d5883d350031a5fe9d8" ## Response 400 fields (application/json): - `id` (string) Example: "a95f2aaf-4e0c-4d49-8021-8a16a884ed86" - `code` (string) Example: "invalid_request" - `title` (string) Example: "Invalid Request" - `details` (string) Example: "Request is invalid" ## Response 403 fields (application/json): - `id` (string) Example: "a95f2aaf-4e0c-4d49-8021-8a16a884ed86" - `code` (string) Example: "unauthorized_action" - `title` (string) Example: "Unauthorized Action" - `details` (string) Example: "Unauthorized action is not allowed." ## Response 404 fields (application/json): - `id` (string) Example: "a95f2aaf-4e0c-4d49-8021-8a16a884ed86" - `code` (string) Example: "model_not_found" - `title` (string) Example: "Model Not Found" - `details` (string) Example: "Model was not found" ## Response 500 fields (application/json): - `id` (string) Example: "a95f2aaf-4e0c-4d49-8021-8a16a884ed86" - `code` (string) Example: "generic_error" - `title` (string) Example: "Internal Server Error" - `details` (string) Example: "Internal server error occurred"