Pular para o conteúdo

Conceder Abatimento no Boleto

Concede um abatimento (desconto incondicional) sobre o valor original do boleto. O abatimento reduz o valor a ser pago pelo cliente de forma permanente e é comunicado ao banco para atualização do registro.

O abatimento é uma redução no valor do boleto concedida após a emissão. Diferente do desconto (condicional, vinculado a prazo), o abatimento é um valor fixo que será deduzido do total, independentemente da data de pagamento.

Característica Desconto Abatimento
Momento da definição Na criação do boleto Após criação/registro
Condicionalidade Condicional (vinculado a prazo) Incondicional
Aplicação Automática se pago no prazo Sempre aplicado
Uso típico Incentivo a pagamento antecipado Correção de valor, bonificação, acordo comercial

Cenário Exemplo
Acordo comercial Cliente negociou redução após a emissão
Devolução parcial Parte do pedido foi devolvida/cancelada
Bonificação Conceder crédito por fidelidade ou compensação
Correção de valor Erro no valor original que precisa ser ajustado para menor
Renegociação Ajuste de valor em processo de cobrança

Antes de conceder abatimento, verifique:

  • O boleto já está registrado no banco
  • O boleto não foi baixado/cancelado
  • O boleto não possui abatimento já concedido
  • O valor do abatimento é menor que o valor do boleto

O abatimento pode ser concedido apenas em boletos no estado REGISTRADO/ATIVO:

┌─────────────┐ ┌─────────────┐ ┌─────────────────────┐
│ CRIADO │────▶│ REGISTRADO │────▶│ COM ABATIMENTO │
└─────────────┘ │ ATIVO │ │ (valor reduzido) │
└──────┬──────┘ └──────────┬──────────┘
│ │
│ PUT /abatimento │
│◀──────────────────────┘
┌────────────┼────────────┐
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌───────────┐
│ PAGO │ │ VENCIDO │ │ BAIXADO │
└──────────┘ └──────────┘ └───────────┘

PUT https://sandbox.boletocloud.com/api/v1/boletos/{token_do_boleto}/abatimento
Parâmetro Tipo Obrigatório Descrição
token_do_boleto string Sim Token do boleto retornado na criação
Header Valor
Content-Type application/json; charset=utf-8
Authorization Basic {credenciais}

{
"boleto": {
"abatimento": {
"valor": 10.00
}
}
}
Campo Tipo Obrigatório Tamanho/Limite Exemplo Descrição
boleto.abatimento.valor decimal Sim 0.00 a 99.999.999,99 10.00 Valor do abatimento em reais (8 inteiros + 2 decimais)
Validação Regra Mensagem de Erro
Obrigatório Campo não pode ser nulo Valor do abatimento é obrigatório
Valor mínimo Mínimo 0.00 Valor do abatimento deve ser maior ou igual a zero
Valor máximo Máximo 99999999.99 Valor do abatimento deve ser menor ou igual a 99.999.999,99
Casas decimais Máximo 2 casas decimais Valor do abatimento deve ter no máximo 2 casas decimais
Menor que o boleto Abatimento menor que valor do boleto Abatimento não pode ser maior ou igual ao valor do boleto

Código Descrição Causa
200 OK Abatimento concedido com sucesso -
400 Bad Request Requisição inválida Valor inválido, boleto já tem abatimento, ou boleto baixado
401 Unauthorized Não autorizado API Key inválida ou ausente
404 Not Found Boleto não encontrado Token do boleto inválido
500 Internal Server Error Erro interno Erro no servidor
{
"erro": {
"status": 400,
"mensagem": "Boleto já possui abatimento concedido"
}
}

Tipo de Comunicação O que acontece
API/Webservice (automático) Abatimento enviado automaticamente ao banco
Arquivo CNAB (manual) Instrução de abatimento incluída no próximo arquivo de remessa

Terminal window
curl -v "https://sandbox.boletocloud.com/api/v1/boletos/{token_do_boleto}/abatimento" \
-H "Content-Type: application/json; charset=utf-8" \
-X "PUT" \
-u "api-key_SUA-API-KEY:token" \
-d '{"boleto":{"abatimento":{"valor":10.00}}}'

Um cliente comprou R$ 500,00 em produtos, mas devolveu R$ 50,00. O boleto já foi emitido e registrado.

Antes do abatimento:

  • Valor do boleto: R$ 500,00

Requisição:

{
"boleto": {
"abatimento": {
"valor": 50.00
}
}
}

Depois do abatimento:

  • Valor original: R$ 500,00
  • Abatimento: R$ 50,00
  • Valor a pagar: R$ 450,00