Cancelamento total
No cancelamento de um transação do tipo card
uma solicitação de estorno é feita ao emissor do cartão, sendo gerado um crédito na fatura do comprador referente ao valor estornado.
Uma vez aprovado o cancelamento a transação é atualizada para o status de canceled
, sendo emitido um evento do tipo transaction.canceled
, sendo canceladas também as parcelas de recebimento associadas a transação não compensadas. Um lançamento de débito no extrato financeiro do lojista para as parcelas de recebimento já liquidadas também é realizado.
Estorno de venda liquidada
Para realizar o estorno de vendas já liquidadas deve ser feita uma solicitação especial de liberação em nome do marketplace ou do estabelecimento comercial, não sendo possível realizar este tipo de estorno sem uma liberação prévia.
Cancelamento parcial
O cancelamento parcial é o ato de cancelar um valor menor que o valor total autorizado ou capturado. Esse modelo de cancelamento pode ocorrer inumeras vezes, até que o valor total da transação seja cancelado.
Cancelamento parcial disponível apenas para transações de crédito capturadas.
Ao cancelar parcialmente uma transação, o amount
estornado é reduzido do valor atual da venda, ficando o valor original_amount
preservado com o valor original da venda, sendo regerado os recebíveis associados a esta venda, retornando erro caso uma regra de split ultrapasse o valor restante da venda após cancelamento.
No cancelamento parcial, o estado da venda permanece como succeeded
enquanto restar valor amount
a ser creditado ao EC. A venda passa para o estado de canceled
quando o valor amount
for zero.
No cancelamento parcial é também disparado o evento de transaction.canceled
, porém mantendo o objeto da venda no estado de succeeded
.
Para cada operação de cancelamento é registrado um histórico que pode ser visualizado nas apis de transactions
.
Na API de cancelamento de cobrança deve ser enviado o valor a ser estornado, podendo ser o valor total ou parcial, enviando também novamente o identificador do vendedor no atributo on_behalf_of
.