Retentativas de Recebimento
Caso o recebimento não tenha ocorrido com sucesso na data de vencimento, é possível efetuar 3 retentativas nos 7 dias corridos seguintes a data de vencimento.
Nestes casos, a empresa recebedora enviará sempre o mesmo valor do vencimento, mas poderá escolher em quais 3 dias tentará efetuar as cobranças do cliente.
Por exemplo, é possível realizar tentativas em D+1, D+2 e D+7 ou então D+1, D+4 e D+7.
Essa é uma liberdade que o recebedor possui.
Importante reforçar que mesmo que o pagamento não ocorra, a adesão ao Pix Automático do cliente pagador continuará ativa para os próximos ciclos de cobrança recorrente.
Para os casos onde será necessário realizar retentativas de recebimento, o fluxo será o seguinte:
- Primeiramente, como não será realizado a liquidação, não será enviado nenhum webhook de recebimento. Invés disso, será enviado um webhook informando que a instrução de agendamento está expirada.
- Após receber esse webhook, fica 100% a critério do recebedor realizar as novas tentativas. A Celcoin não realizará automaticamente nenhuma retentativa. A empresa recebedora deverá definir conforme os seus próprios critérios em quais datas (entre D+1 e D+7) gostará de realizar as novas tentativas. Reforçando que não é obrigatório realizar 3 retentativas, fica a critério da empresa recebedora se não irá realizar retentativas, se realizará somente 1 retentativa, 2 ou todas 3, se necessário.
- Celcoin receberá a solicitação da empresa recebedora e enviará ao banco pagador a solicitação de retentativa.
- Celcoin enviará a empresa recebedora o webhook com o resultado da retentativa.
Webhook de instrução de pagamento expirada
{
"entity": "pix-automatic-payment-instruction-cashin",
"context": "PIX",
"cliente": {
"nome": "",
"clienteId": 1,
"localId": 1,
"usuarioId": 2
},
"body": {
"endToEndId": string,
"recurrencyId": "RRxxxxxxxxyyyyMMddkkkkkkkkkkk",
"amount": decimal,
"liquidationDate": datetime,
"expirationDate": datetime,
"isWorkingDay": bool,
"nextWorkingDay": datetime,
"status": integer (enum PaymentInstructionStatus),
"creditParty": {
"ispb": string,
"taxId": string,
"personType": string,
"bank": string | null,
"account": string,
"accountType": int,
},
"debitParty": {
"ispb": string,
"personType": string,
"taxId": string,
"personName": string,
"bank": string | null,
"account": string,
"accountType": string,
"stateCode": string
},
"debtor": {
"personType": string,
"taxId": string,
"name": string
},
"createDate": datetime,
"updateDate": datetime,
"clientRequestId": string | null
}
}
Recebedor comanda nova tentativa
Endpoint POST /recurrencies/{id}/payment-instruction/new-attempt/{clientRequestId}
Atenção: é obrigatório que a retentativa seja no mesmo valor do pagamento original, por isso, não é possível informar nenhum outro dado a não ser a nova data de tentativa.
Request:
{
"newExpirationDate: datetime,
Response: OK (não há body neste response)
Por fim, a Celcoin enviará o webhook de completed.
Caso o pagamento não seja realizado, o recebedor poderá realizar novamente o fluxo acima de "newAttempt".
Webhook completed
{
"body": {
"endToEndId": string,
"recurrencyId": "RRxxxxxxxxyyyyMMddkkkkkkkkkkk",
"amount": decimal,
"expirationDate": datetime,
"status": integer (enum PaymentInstructionStatus),
"creditParty": {
"ispb": string,
"taxId": string,
"personType": string,
"bank": string | null,
"account": string,
"accountType": int,
},
"debitParty": {
"ispb": string,
"personType": string,
"taxId": string,
"personName": string,
"bank": string | null,
"account": string,
"accountType": string,
"stateCode": string
},
"debtor": {
"personType": string,
"taxId": string,
"name": string
},
"createDate": datetime,
"updateDate": datetime,
"clientRequestId": string | null
}
}
Esta documentação ainda está sujeita a atualizações. Quando tivermos a versão final publicada, este aviso será removido de todas as páginas.
Updated 1 day ago