API para geração de cobranças híbridas
API GenerateCollection
GenerateCollectionA funcionalidade de Collection permite a geração de uma cobrança híbrida com boleto bancário e QR Code Pix em uma única requisição. Essa abordagem oferece flexibilidade ao cliente final, permitindo o pagamento via método de sua preferência — boleto tradicional ou pagamento instantâneo com Pix.
Fluxo de geração de cobrança
Exemplo prático de uso
Uma instituição deseja emitir, em 16/06/2025, uma cobrança referente à mensalidade no valor de R$ 1.550,00, com vencimento em 02/07/2025 e com expiração em 31/12/2025, com as seguintes condições:
Descontos:
- R$ 300,00 de desconto para pagamentos realizados até 22/06/2025 (10 dias de antecedência ao vencimento).
- R$ 250,00 de desconto para pagamentos realizados entre 23/06/2025 e 02/07/2025 (vencimento).
Encargos por atraso:
- Multa fixa de R$ 200,00, aplicada a partir do dia seguinte ao vencimento (03/07/2025).
- Juros de 1% por dia de atraso, também a partir de 03/07/2025 (um dia após o vencimento).
Importante!
- No cenário hipotético acima, a cobrança poderá ser paga até 31/12/2025 (expiração), mesmo após o vencimento. Após essa data, a cobrança será considerada expirada e o pagamento não será mais aceito.
- Os juros serão definidos por dias corridos. Além disso, os valores (tanto de juros quanto de multa) poderão ser definidos em porcentagem (%) ou valor fixo (R$);
Principais campos para cobrança
totalValue: **valor original da mensalidade (R$ 1.550,00).fineValue: multa aplicada após o vencimento (R$ 200,00).discount: múltiplas datas de desconto.dueDate: data de vencimento do boleto.interestValue: valor de juros diário por atraso.expirationDate: data de expiração da cobrança.collectionType: "Both": cobrança híbrida — boleto + Pix.
🧾 Requisição - GenerateCollectionRequest
GenerateCollectionRequest{
"clientid": 0,
"customerName": "string",
"customerTaxNumber": "string",
"customerMail": "string",
"customerPhone": "string",
"address": {
"addressLine1": "string",
"addressLine2": "string",
"zipCode": "string",
"neighborhood": "string",
"cityName": "string",
"state": "string",
"addressType": 0,
"country": "string",
"complement": "string"
},
"dueDate": "2025-06-24T17:59:30.147Z",
"comments": "string",
"fineDate": "2025-06-24T17:59:30.147Z",
"fineValue": 0,
"fineType": 0,
"finePercent": 0,
"interestDate": "2025-06-24T17:59:30.147Z",
"interestValue": 0,
"interestType": 0,
"interestPercent": 0,
"discount": {
"discountDate": "2025-06-24T17:59:30.147Z",
"discountDate2": "2025-06-24T17:59:30.147Z",
"discountDate3": "2025-06-24T17:59:30.147Z",
"discountValue": 0,
"discountValue2": 0,
"discountValue3": 0
},
"rebateValue": 0,
"rebateType": 0,
"rateValue": 0,
"rateSent": true,
"tags": [
"string"
],
"totalValue": 0,
"pixKey": "string",
"discountType": 0,
"additionalInformationName": "string",
"additionalInformationValue": 0,
"payerRequest": "string",
"expirationDate": "2025-06-24T17:59:30.147Z",
"collectionType": 0
}📤 Retorno Esperado
{
"success": true,
"data": {
"collectionId": 108,
"boletoUrl": "https://sandboxboletos.fitbank.com.br/pdf/2025-07-14/13gbyk4w.pdf",
"boleto": "{\"Demonstrativos\":[],\"Carteira\":\"\",\"Categoria\":\"0\",\"NossoNumero\":\"001050000000311\",\"DigitoNossoNumero\":\"\",\"DataVencimento\":\"2025-07-14T06:48:36.1898618-03:00\",\"DataDocumento\":\"2025-07-14T06:48:36.1898618-03:00\",\"DataProcessamento\":\"2025-07-14T06:48:36.1898618-03:00\",\"NumeroDocumento\":\"0124566\",\"ValorBoleto\":25.0,\"ValorCobrado\":0.0,\"Instrucoes\":[\"PAGAVEL PREFERENCIALMENTE EM CANAIS ELETRONICOS DA SUA INSTITUICAO FINANCEIRA\"],\"Aceite\":\"N\",\"EspecieDoc\":\"\",\"Banco\":{\"IsCustomHeaderNeeded\":0,\"Code\":450,\"Digit\":\"0\",\"Name\":\"FitBank\",\"Drawer\":null,\"ChaveASBACE\":null,\"Sigla\":\"\",\"Especie\":\"Outros\"},\"Cedente\":{\"AccounttoFile\":\"0\",\"AccountSupplement\":\"0\",\"DigitoCedente\":\"\",\"TaxNumber\":\"13203354000185\",\"ContributorTaxNumber\":\"\",\"Name\":\"Artur Carvalho\"},\"BankAccount\":{\"Bank\":\"450\",\"BankName\":\"FitBank\",\"Branch\":\"\",\"DigitBranch\":\"\",\"Account\":\"\",\"DigitAccount\":\"\",\"Convenio\":\"\",\"NumeroSequencial\":0,\"NumeroBordero\":0,\"Carteira\":null,\"Endereco\":null,\"Instrucoes\":null,\"AgreementParameters\":null,\"FullName\":null},\"CodigoBarra\":{\"Code\":\"450951156000000250000001024566000500041 450951156000000250000001024566000500041\",\"Image\":\"\",\"Typefullline\":\"4509 0112 5600 5000 0001 0124 5660 5000 041 5 11560000002500\",\"Key\":\"\"},\"BankCode\":null,\"Currency\":9,\"Freefield\":\"\",\"DueFactor\":\"\",\"DocumentValue\":\"25,00\",\"Banco\":{\"Code\":450,\"Digit\":\"0\",\"Name\":\"FitBank\"},\"IsCustomHeaderNeeded\":0,\"Drawer\":null,\"ChaveASBACE\":null,\"Produtos\":[],\"BankName\":null,\"Branch\":null,\"DigitBranch\":null,\"Account\":null,\"DigitAccount\":null,\"Address\":{\"AddressLine1\":\"Rua\",\"AddressLine2\":\"Sem Saida\",\"Neighborhood\":\"Centro\",\"City\":\"Monsenhor Tabosa\",\"State\":\"CE\",\"ZipCode\":\"63780000\",\"Mail\":null},\"DraweeInformations\":[],\"TaxNumber\":\"12345678909\",\"Name\":\"Fulano da Silva\",\"Instrucoes\":null,\"BankAccount\":null,\"PercMulta\":0.0,\"JurosMora\":0.0,\"ModoJurosMensal\":false,\"JurosPercentual\":0.0,\"IOF\":0.0,\"RebateValue\":0.0,\"PercMulta\":0.0,\"DataJurosMora\":\"0001-01-01T00:00:00\",\"DataMulta\":\"0001-01-01T00:00:00\",\"DataDesconto\":\"0001-01-01T00:00:00\",\"DataDesconto2\":\"0001-01-01T00:00:00\",\"DataDesconto3\":\"0001-01-01T00:00:00\"}",
"pixHashCode": "00020101021226930014br.gov.bcb.pix2571qrcode-h.fitbank.com.br/QR/v2/cobv/df5d8f7e-4999-4285-b6f7-d5f5d1ea74895204000053039865802BR5915Artur Carvalho6008Itapipina62070503***6304E517"
},
"message": null
}Campos do endpoint
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
clientid | integer | Sim | Identificador do cliente emissor da cobrança |
customer | object | Sim | Object (Dados do pagador) |
customerName | string | Sim | Nome do pagador |
customerTaxNumber | integer | Sim | CPF/CNPJ do pagador |
customerMail | string | Sim | E-mail do pagador |
customerPhone | integer | Sim | Telefone do pagador |
adressLine1 | string | Sim | Endereço do pagador (rua/avenida/número) |
zipCode | integer | Sim | CEP do pagador |
neighborhood | string | Sim | Bairro do pagador |
city | string | Sim | Cidade do pagador |
state | string | Sim | Estado do pagador |
addressType | integer | Sim | Tipo de Endereço: 0 - Comercial 1 - Residencial |
country | string | Sim | País do pagador |
complement | string | Não | Complemento do endereço (andar, apartamento etc.) |
dueDate | datetime | Sim | Data de vencimento da cobrança |
comments | string | Não | Descrição livre da cobrança |
fineDate | datetime | Não | Data para aplicação da multa |
fineValue | decimal | Não | Valor fixo de multa (R$) |
fineType | string | Não | Tipo de Multa: 0 - Não será cobrada nenhuma multa 1 - Valor Fixo 2 - Percentual |
finePercent | decimal | Não | Valor percentual de multa (%) |
interestDate | datetime | Não | Data a partir da qual serão aplicados juros |
interestValue | decimal | Não | Valor fixo de juros (R$) |
interestType | string | Não | Tipo de Juros: 0 - Não serão cobrados juros 1 - Valor (dias corridos) 2 - Percentual por dia (dias corridos) 3 - Percentual por mês (dias corridos) 5 - Valor (dias úteis) 6 - Percentual ao dia (dias úteis) 7 - Percentual por mês (dias úteis) |
interestPercent | decimal | Não | Valor percentual do juros (%) |
discount | object | Não | Objeto com até 3 datas e valores de desconto |
discountdate | datetime | Não | Data para aplicação de desconto |
discountvalue | decimal | Não | Valor fixo de desconto (R$) |
discountdate2 | datetime | Não | Data para aplicação de desconto |
discountvalue2 | decimal | Não | Valor fixo de desconto (R$) |
discountdate3 | datetime | Não | Data para aplicação de desconto |
discountvalue3 | decimal | Não | Valor fixo de desconto (R$) |
rebateValue | decimal | Não | Valor de abatimento adicional |
rebateType | string | Não | Tipo de abatimento |
rateValue | decimal | Não | Valor de taxa adicional (opcional) |
rateSent | boolean | Não | Indica se a taxa foi enviada separadamente |
tags | array | Não | Lista de palavras-chave para categorização |
totalValue | decimal | Sim | Valor total da cobrança original (sem descontos ou multas) |
pixKey | string | Sim | Chave Pix do recebedor |
discountType | integer | Não | Tipo de desconto: 0 - Não haverá desconto 1 - Preço fixo até a data especificada 2 - Saldo em porcentagem até a data informada |
additionalInformationName | string | Não | Nome do campo |
additionalInformationValue | string | Não | Dados do campo |
payerRequest | string | Não | Text to be submitted to the payer |
expirationDate | datetime | Sim | Data de expiração da Cobrança (data limite) |
collectionType | string | Sim | Tipo de cobrança: 0 - Boleto (somente boleto será gerado);1 - Pix (somente Pix com vencimento será gerado);2 - Both (cobrança hibrida será gerada). |
Atenção
- A aplicação de desconto, abatimento, multa e juros é OPCIONAL nesse tipo de cobrança. Ou seja, é possível gerar a cobrança híbrida SEM a aplicação de descontos e encargos.
Aplicações Práticas
- boleto.url pode ser enviado por e-mail, WhatsApp ou incorporado em PDF.
hashCodedo Pix pode ser usado para buscar ou renderizar o QR Code.- Cobrança flexível com descontos e prazo estendido via Boleto e Pix sem precisar reemitir.
Recomendado
- Validar se o pagador está utilizando desconto dentro do prazo.
- Utilizar webhooks da OWL para atualizar status do pagamento.
- Incluir identificadores únicos nos campos
tagsoucommentspara facilitar auditoria.