Pular para o conteúdo principal

Cancelar Transação

Disponível apenas em Sandbox

Este endpoint está disponível somente no ambiente Sandbox. Não há suporte para cancelamento de autorização em produção no momento.

Use esta rota para cancelar uma transação previamente autorizada com o endpoint POST v3/transactions/authorize. O cancelamento libera o valor reservado no cartão do cliente sem efetuar a cobrança, movendo o status da transação de authorized para canceled.

Cancelar vs. Estornar

O cancelamento (cancel) é aplicável apenas a transações com status authorized — ou seja, o valor foi reservado mas ainda não foi capturado. Nenhum valor é debitado do cliente.

O estorno (refund) é aplicável a transações com status paid — o valor já foi capturado e o estorno devolve o dinheiro ao cliente. Consulte Estornar Transação.

Atenção

Somente transações com status authorized podem ser canceladas. Tentar cancelar uma transação com qualquer outro status retornará um erro 403.

POSTv3/transactions/:transaction_id/cancel

Request Variable Path

AtributoTipoDescrição
transaction_idstringID Marlim da transação com status authorized.
cuidado

É necessário salvar o transaction_id que a Marlim retorna na solicitação de autorização na sua aplicação. Somente com este id será possível prosseguir com o cancelamento.

Este endpoint não requer body na requisição.

Response Object

PropriedadeTipoDescrição
statusstringRepresenta o estado atual da transação. Para este endpoint, o valor retornado será canceled.
amountint32Valor em centavos da transação.
net_valueint32Parâmetro opcional do valor líquido a ser recebido pela transação.
authorized_amountint32Valor em centavos que havia sido autorizado na transação.
paid_amountint32Valor em centavos capturado na transação. Retorna 0 pois a transação foi cancelada antes da captura.
refunded_amountint32Valor em centavos estornado na transação.
installmentsstringNúmero de parcelas em que o cliente pagou.
nsustringCódigo que identifica a transação na adquirente.
authorization_codestringCódigo de autorização retornado pelo banco emissor.
transaction_idstringNúmero identificador Marlim da transação.
item_idstringID da transação na sua plataforma.
payment_methodstringMétodo de pagamento utilizado na transação. Valores possíveis: credit_card.
date_createddateTimeData de criação da transação no formato ISODateTime.
date_updateddateTimeData de atualização do status da transação no formato ISODateTime.
card_holder_namestringNome do portador do cartão utilizado no pagamento.
card_brandstringBandeira do cartão utilizado no pagamento. Valores possíveis: visa, mastercard, amex, hipercard e elo.
card_first_digitsstringPrimeiros 6 dígitos do cartão utilizado no pagamento.
card_last_digitsstringÚltimos 4 dígitos do cartão utilizado no pagamento.
acquirer_status_codestringCódigo identificador da resposta do Banco Emissor.
acquirer_status_messagestringMensagem referente ao código da resposta do Banco Emissor.
Exemplo de Response
{
"status": "canceled",
"nsu": "98765432",
"authorization_code": "112233",
"date_created": "2025-01-01T00:00:00.000Z",
"date_updated": "2025-01-01T00:00:01.000Z",
"amount": 1000,
"authorized_amount": 1000,
"paid_amount": 0,
"refunded_amount": 0,
"installments": "1",
"transaction_id": "HcDscltTIVK3VMAAOj7J",
"item_id": "ABC123456789",
"payment_method": "credit_card",
"card_holder_name": "Luke Skywalker",
"card_brand": "visa",
"card_first_digits": "555544",
"card_last_digits": "2222",
"acquirer_status_code": "0000",
"acquirer_status_message": "The authorization has been canceled."
}

Error Object

AtributoTipoDescrição
api_referencestringUrl para a documentação.
errorsarrayArray com todos os erros encontrados ao processar a requisição.
errors[][type]stringTipo de erro ocorrido.
errors[][message]stringMensagem detalhada do erro ocorrido.
Exemplo de Response — Transação não autorizada
{
"api_reference": "https://docs.api.marlim.co/transactions/create/card",
"errors": [
{
"type": "status",
"message": "Only transactions with authorized status can be canceled."
}
]
}

Exemplos

Request
curl -X POST "https://api.marlim.co/v3/transactions/HcDscltTIVK3VMAAOj7J/cancel" \
-H "Content-Type: application/json" \
-H "api_key: api_key_value" \
-d '{}'
Response200
{
"status": "canceled",
"nsu": "98765432",
"authorization_code": "112233",
"date_created": "2026-05-04T19:16:28.349Z",
"date_updated": "2026-05-04T19:16:28.349Z",
"amount": 1000,
"authorized_amount": 1000,
"paid_amount": 0,
"refunded_amount": 0,
"installments": "1",
"transaction_id": "HcDscltTIVK3VMAAOj7J",
"item_id": "ABC123456789",
"payment_method": "credit_card",
"card_holder_name": "Luke Skywalker",
"card_brand": "visa",
"card_first_digits": "555544",
"card_last_digits": "2222",
"acquirer_status_code": "0000",
"acquirer_status_message": "The authorization has been canceled."
}