---
title: "Cancela uma cobrança pendente"
method: POST
path: "/v1/charges/{chargeId}/cancel"
tags: ["Charges"]
---

# Cancela uma cobrança pendente

`POST /v1/charges/{chargeId}/cancel`

## Request

- Base URL: `https://api.sandbox.mupag.com.br`
- URL: `https://api.sandbox.mupag.com.br/v1/charges/{chargeId}/cancel`
- Auth: HTTP bearer

Cancela somente cobranças no estado `pending`. Um `202` indica que o resultado ainda
não é autoritativo. Não há reconciliação em background: faça replay da mesma
`Idempotency-Key` e do mesmo payload para continuar a reconciliação segura. Antes do
envio mutável ao PSP, ausência no provedor mantém a intenção pendente; depois do fence
durável de envio, ausência em consulta confirma o cancelamento sem repetir o DELETE.

## Path parameters

- `chargeId` string, uuid, required

## Headers

- `Idempotency-Key` string, required

## Request body

- ChargeCancellationRequest
  - `reason` 'payment_attempt_cancelled'

## Response `200`

Cancelamento confirmado de forma autoritativa.

- ChargeCancellationResponse
  - `charge_id` string, uuid, required
  - `status` 'cancelled' | 'cancellation_pending', required
  - `reason` 'payment_attempt_cancelled', required
  - `cancelled_at` string, date-time, nullable, required

## Other responses

- `202`: Resultado pendente; faça replay da mesma Idempotency-Key e do mesmo payload.
- `401`: Falha de autenticação
- `403`: Permissão insuficiente
- `404`: Recurso não encontrado
- `409`: Conflito de idempotência ou estado
- `422`: Erro de validação
- `429`: Limite de requisições excedido
- `502`: Falha em integração externa

---

[API](https://skmtc.dev/mupag/apis/mupag-public-merchant-api.md) · [All operations](https://skmtc.dev/mupag/apis/mupag-public-merchant-api/llms.txt) · [OpenAPI document](https://skmtc.dev/mupag/apis/mupag-public-merchant-api/revisions/677904516d2d?raw)
