Realizar uma Devolução de Recebimento Pix

Com essa chamada você realizará uma devolução de um Pix recebido.

Passos para Integrar

  1. Realizar autenticação na API - [API Reference]
  2. Realizar uma devolução Pix -[API Reference]

Devolução de recebimento

Essa funcionalidade pode ser utilizada após receber o gatilho de webhook "pix-payment-in". Com os dados do recebimento será possivel devolve-lo ao pagador.

📘

Importante

  • O valor da devolução pode ser total ou parcial
  • A devolução de um Pix ocorre de forma instantânea, como já é em seu próprio modelo de negócio.
  • O prazo máximo para criar a devolução de uma transação Pix, é de até 90 dias, sendo o valor menor ou igual ao que recebeu.

cURL da chamada

curl --location --request POST 'https://sandbox.openfinance.celcoin.dev/baas-wallet-transactions-webservice/v1/pix/reverse' \
--header 'accept: application/json' \
--header 'Authorization: Bearer {{token}}' \
--header 'Content-Type: application/json' \
--data-raw '{
  "id": "34fee7bc-4d40-4605-9af8-398ed7d0d6b5",
  "endToEndId": "E3030629420200808185300887639654",
  "clientCode": "1458854",
  "amount": 150.54,
  "reason": "MD06",
  "reversalDescription": "Devolução do churrasco"
}'

JSON da chamada

{
  "id": "34fee7bc-4d40-4605-9af8-398ed7d0d6b5",
  "endToEndId": "E3030629420200808185300887639654",
  "clientCode": "1458854",
  "amount": 150.54,
  "reason": "MD06",
  "reversalDescription": "Devolução do churrasco"
}

Descrição dos Campos

CampoDescriçãoTipo Campo
idIdentificador da transação do recebimento pix.
endToEndIdIdentificador ponta-a-ponta associado ao recebimento pix.
clientCodeIdentificador único gerado pelo cliente.
amountValor da transação.
reasonRazão da Devolução.BE08: Devolvido como resultado de um erro bancário.

FR01: Devolução por suspeita de fraude.

MD06: Devolução solicitada pelo cliente final.

SL02: Devolução do valor em dinheiro devido a um erro relacionado ao Pix Saque ou Pix Troco.
reversalDescriptionTexto opcional a ser apresentado ao pagador contendo informações sobre a devolução..

Exemplo de retorno

👍

Sucesso 200

{
  "status": "PROCESSING",
  "version": "1.0.0",
  "body": {
    "id": "34fee7bc-4d40-4605-9af8-398ed7d0d6b4",
    "amount": 25.55,
    "clientCode": "1458854",
    "originalPaymentId": "34fee7bc-4d40-4605-9af8-398ed7d0d6b5",
    "endToEndId": "E3030629420200808185300887639654",
    "returnIdentification": "D3030629420200808185300887639654",
    "reason": "MD06",
    "reversalDescription": "Devolução do churrasco"
  }
}

Error 400

{
  "version": "1.0.0",
  "status": "ERROR",
  "error": {
    "errorCode": "CBE001",
    "message": "ClientCode é obrigatório."
  }
}

Tabela de errorCode

CodeMessage
CBE001ClientCode é obrigatório.
CBE093ClientCode possui tamanho maximo de 200 caracteres.
CBE094amount é obrigatório.
CBE095amount invalido. Favor verificar a formatação do campo e deve ser maior que 0.
CBE100Existe um lançamento idêntico pendente. Favor aguarde para realizar esta operação para evitar duplicidade.
CBE101Já existe um lançamento com o mesmo clientCode. Favor realizar uma nova operação.
CBE102Lançamento de debito não permitido. Valor ultrapassa o limite maximo permitido por operação.
CBE123Transação não permitida. Conta com saldo insuficiente.
CBE154reason é obrigatório.
CBE155reason invalido.
CBE156reversalDescription possui tamanho máximo de 140 caracteres.
CBE157Devolução não permitida. Somatório de devoluções ou o valor da devolução ultrapassa o valor total do recebimento pix.
CBE158Devolução não permitida. Prazo limite para devolução foi expirado.
CBE159Lançamento não permitido. Sua conta esta bloqueada.
CBE160Lançamento não permitido. Sua conta esta encerrada.
CBE204É necessário informar pelo menos um dos campos: transactionId ou endToEndId.

Error 401 | Error 404 | Error 500 | Error 504

{
  "version": "1.0.0",
  "status": "ERROR",
  "error": {
    "errorCode": "CIE999",
    "message": "Ocorreu um erro interno durante a chamada da api."
  }
}