Cancelamento Garantido
O cancelamento garantido é uma funcionalidade desenvolvida pensando na melhor experiência entre lojista e consumidor final. Para alguns modelos de negócio pode não ser viável esperar a resposta de uma transação com erro (em que não se sabe o status real: pago ou não autorizado). Muitas vezes, o lojista precisa mostrar uma resposta ao consumidor final na hora em que ele faz o pedido, já que o consumidor precisa da confirmação ou não do pedido de forma síncrona.
Com o cancelamento garantido, todas transações que sofreram algum tipo de erro no fluxo normal são automaticamente canceladas, e assim o consumidor terá uma resposta final (transação aprovada ou transação falha) no momento do pedido, em tempo real.
Para entender melhor o que pode causar um erro na transação, precisamos falar sobre alguns pontos:
A API Mundipagg tem os seguintes status mapeados para uma cobrança:
- Paid - quando uma cobrança está paga;
- Pending - quando uma cobrança ainda está pendente de alteração (como um boleto gerado e ainda não pago, uma transação de cartão de crédito autorizada e não capturada ou uma transferência bancária não realizada);
- Failed - quando a transação falhou, foi não autorizada ou não confirmada;
- Canceled - quando há o cancelamento ou estorno de uma cobrança;
- Processing - quando ocorreu algum fluxo inesperado, ou seja, quando a cobrança não seguiu o fluxo correto de processamento e retornou com erro do gateway ou quando a cobrança está pendente de retentativa offline.
Uma transação adquire o status processing em alguns casos, como os citados abaixo:
Problema | Explicação |
---|---|
Time out com a adquirente | Quando a adquirente não responde a tempo |
Operações com erro no retorno do gateway | Isso pode ocorrer pelos seguintes motivos: Loja com problemas ou bloqueio na adquirente Erro 500 no gateway Erro no cancelamento Erro no estorno |
Status "processing"
Transações que entram no fluxo de retentativa offline também recebem o status "processing". Para diferenciar as duas situações, enviamos uma flag de "pending_cancelation", mostrando que a transação está na fila de cancelamento.
Nos casos em que houve algum erro, a Mundipagg sonda a adquirente de tempos em tempos para entender qual o real status da transação (se existe e está paga, se existe e falhou ou se não existe na adquirente) e, ao concluir sobre esse status, notifica o lojista.
Essa funcionalidade garante que todas as transações que entrem no fluxo de status "processing" sejam canceladas automaticamente. Retornamos o status "processing", mas o lojista pode tratar como falha, permitindo que o consumidor tente de novo sem correr o risco de duplicar a compra.
Aplicações
Essa funcionalidade é muito utilizada, por exemplo, por apps de entrega. O consumidor não pode depender da verificação do gateway na adquirente porque já está esperando a entrega (comida, por exemplo). Assim, nós retornamos a transação como "falha" e possibilitamos uma nova tentativa, garantindo uma experiência mais rápida, confiável e eficiente!
Updated about 6 years ago