O boleto de cobrança é uma forma de pagamento utilizada no Brasil, muito comum em transações comerciais e financeiras. Ele é um documento que contém as informações necessárias para realizar o pagamento de um serviço ou produto, e pode ser pago em diversos canais, como bancos, casas lotéricas, ou via internet banking.


O boleto de cobrança é composto por vários elementos, incluindo:


- Cedente: A pessoa ou empresa que emite o boleto e vai receber o pagamento;

- Sacado: A pessoa ou empresa que deve pagar o boleto;.

- Valor a ser pago: O valor do produto ou serviço a ser pago;

- Vencimento: A data até a qual o boleto deve ser pago. Após essa data, pode haver acréscimos, como juros e multas;

- Código de barras: Um código numérico e gráfico que contém as informações necessárias para efetuar o pagamento;

- Instruções de pagamento: Detalhes adicionais, como descontos, multas por atraso, ou orientações para o pagamento.


Aplicação de juros, multa e desconto


A configuração deve ser realizada na API através dos campos interestRate (percentual de juros ao mês), finePercentage (percentual de multa sobre o valor do boleto) e discountPercentage (percentual de desconto aplicado para pagamento antes do vencimento).


Exemplo:


"interestRate": 1

Será cobrado juros de 1% ao mês


"finePercentage": 2

Será cobrado multa de 2% sobre o valor do boleto


"discountPercentage": 5

Desconto de 5% para pagamento antes da data de vencimento


Importante:


Para evitar um erro no registro do boleto é importante se atentar ao valor do juros informado de forma que o valor diário não seja inferior a 1 centavo.


Exemplo:


Caso um boleto seja gerado com o valor de R$10,00 e informado um valor de juros como: "interestRate": 1 teríamos um cenário de problema no registro do boleto pois o juros seria inferior a R$0,01.


Conseguimos chegar nesse valor fazendo o seguinte calculo:


Como foi definido 1% mensal, chegamos ao valor de 1/30 = 0,033333% ao dia. 


Aplicando essa porcentagem ao valor do boleto (10,00) é retornado o valor de 0,003 (menor que 1 centavo), nesse caso deve ser aplicado um percentual de juros menor ou um valor maior para o boleto, como por exemplo R$34,00 onde aplicado o juros teríamos o valor >= a 0,01.


Data de vencimento e Instruções de pagamento


Para informar a data de vencimento do boleto, deve-se utilizar o parâmetro dueDate, por exemplo:


"dueDate": "2025-01-09"


Além disso, é possível informar instruções de pagamento que serão exibidos no boleto gerado através do parâmetro shopperStatement.


Os parâmetros devem ser informados dentro da estrutura paymentInfo.boleto{}.


Baixa do boleto


- Em caso de não pagamento, a baixa do boleto ocorre automaticamente após 60 dias;


- Ao realizar o pagamento com sucesso, após 1 dia útil o mesmo é identificado e baixado.