Pagar um Boleto
Pagamento de contas (títulos/convênios/impostos)
O Pagamento de Contas na plataforma Bit Capital possui provedor próprio e exclusivo para execução das API's. Essa funcionalidade permite realizar pagamentos das mais diversas modalidades, incluindo contas de água, luz, gás, telefone, internet, multas, tributos e boletos.
Como realizar um pagamento de conta
ENDPOINT: https://kaizen.bt-staging.app/boletos-payment/pay
Esse endpoint utiliza o método POST.
Modelo de requisição:
{
"source": "be527a4b-cadb-4c63-9a09-965ddfaa7972",
"digitableLine": "83680000000 9 59420111000 6 00101020211 5 93596672787 4",
"amount": "59.42",
"asset": "BRLP",
"extra": {
"dueDate": "2022-02-15"
}
}
curl --location --request POST 'https://{{APIURL}}/boletos/payment/pay' \
--header 'x-idempotence-key: ALGUMASTRINGS' \
--header 'Content-Type: application/json' \
--data-raw '{
"source": "be527a4b-cadb-4c63-9a09-965ddfaa7972",
"digitableLine": "83680000000 9 59420111000 6 00101020211 5 93596672787 4",
"amount": "59.42",
"asset": "BRLP",
"extra": {
"dueDate": "2022-02-15"
}
}'
Descrição dos campos:
Campo | Descrição |
---|---|
source | número da conta(wallet/account ID) da origem do pagamento |
digitableline | Linha digitavel do boleto a ser pago |
amount | Valor do pagamento |
asset | moeda (BRLP/Real) |
extra | Campo livre |
dueDate | Vencimento do boleto/documento |
Modelo de Resposta
{
"id": "bcc6dd6e-ee79-4d47-8a1c-7e6c8e258ad7",
"type": "payment",
"status": "executed",
"createdAt": "2022-11-03T19:04:25.692Z",
"updatedAt": "2022-11-03T19:04:28.668Z",
"banking": null,
"paymentInfo": {
"payer": "PAGADOR AMBIENTE HOMOLOGACAO",
"maxValue": 191.96,
"minValue": 0.1,
"recipient": "BENEFICIARIO AMBIENTE HOMOLOGACAO",
"payDueDate": "2022-12-22T00:00:00",
"totalUpdated": 96.03,
"discountValue": 2.97,
"documentPayer": "96.906.497/0001-00",
"originalValue": 99,
"dueDateRegister": "2022-11-23T00:00:00",
"nextBusinessDay": null,
"allowChangeValue": true,
"documentRecipient": "21.568.259/0001-00",
"totalWithDiscount": 2.97,
"fineValueCalculated": 0,
"totalWithAdditional": 0,
"interestValueCalculated": 0
},
"payments": [
{
"amount": "99",
"type": "payment",
"status": "executed",
"asset": {
"name": "BRL Parati",
"code": "BRLP",
"root": true,
"provider": "parati-provider",
"required": true
}
}
],
"payer": {
"name": "PAGADOR AMBIENTE HOMOLOGACAO",
"taxId": "96.906.497/0001-00"
},
"beneficiary": {
"name": "BENEFICIARIO AMBIENTE HOMOLOGACAO",
"taxId": "21.568.259/0001-00"
},
"additionalData": {}
}
curl --location --request POST 'https://kaizen.bt-staging.app/boletos-payment/pay' \
--header 'x-idempotence-key: 80095ac1-3df9-46b3-8df6-d5191c95caf6' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJtRE1HODVUSjc4YXk0amRKbEJreFpDd3pINF9vV3cwV0FxWjF1ODR3MUVjIn0.eyJleHAiOjE2Njc1MzY2MzgsImlhdCI6MTY2NzUwMDYzOCwianRpIjoiODM3MDk2Y2UtZjk4MC00ZWFmLWI0YWQtNjI1YWQ5MDExM2RkIiwiaXNzIjoiaHR0cDovL2tleWNsb2FrLmtleWNsb2FrOjgxODAvYXV0aC9yZWFsbXMvZGlnaXRhbC1hY2NvdW50IiwiYXVkIjoiYWNjb3VudCIsInN1YiI6IjIzYTUzNTllLWZkMTUtNGM2NS1iMjEyLTlkZDlkMGU1NjViNyIsInR5cCI6IkJlYXJlciIsImF6cCI6IjM0OWQzNWNhLWQ2MjMtMTFlYy05ZDY0LTAyNDJhYzEyMDAwMiIsImFjciI6IjEiLCJhbGxvd2VkLW9yaWdpbnMiOlsiIl0sInJlYWxtX2FjY2VzcyI6eyJyb2xlcyI6WyJvZmZsaW5lX2FjY2VzcyIsInVtYV9hdXRob3JpemF0aW9uIiwiZGVmYXVsdC1yb2xlcy1kaWdpdGFsLWFjY291bnQiXX0sInJlc291cmNlX2FjY2VzcyI6eyJhY2NvdW50Ijp7InJvbGVzIjpbIm1hbmFnZS1hY2NvdW50IiwibWFuYWdlLWFjY291bnQtbGlua3MiLCJ2aWV3LXByb2ZpbGUiXX19LCJzY29wZSI6ImVtYWlsIHByb2ZpbGUiLCJjbGllbnRIb3N0IjoiMTAuMTk3LjcuMTI2IiwiZW1haWxfdmVyaWZpZWQiOmZhbHNlLCJjbGllbnRJZCI6IjM0OWQzNWNhLWQ2MjMtMTFlYy05ZDY0LTAyNDJhYzEyMDAwMiIsInByZWZlcnJlZF91c2VybmFtZSI6InNlcnZpY2UtYWNjb3VudC0zNDlkMzVjYS1kNjIzLTExZWMtOWQ2NC0wMjQyYWMxMjAwMDIiLCJjbGllbnRBZGRyZXNzIjoiMTAuMTk3LjcuMTI2In0.ZIkegxSiiizbXbACGCap1BbtktbzLcDxZuxoyhnroh0qCO9s_MK2vOy4Y0gXfDDIGDy-UdfeyjSAfSwYte4rKQbW31pRWjLjRS4bW21g14X3XPdB6GPtwJcb6vlJ0GlK0HRgQfUhTTkWZTylqgiXus1zgTqLKr5xaqRlKaMxHE6LEQ7MmIH3QD1nh4E-Xh_oHSuuuY0sgn5XMLgDpGIC1eGK_aNzF6Zx0qu7JTpHGgwGDmTT7Pm-LMzycjI_CVD4vaMuww5LW1CDpGRTeQY8rvP3B9q4f8tMugx466E4YrPTbK0QDkfrQkpbYqhwz0_r3SNbNY4a2_xoWnKngcMiIw' \
--header 'Content-Type: application/json' \
--data-raw ' {
"source": "a410c3de-9997-4138-a22e-62cf2737efcb",
"digitableLine": "00190000090283633605305416182177190730000009900",
"amount": "99.00",
"asset": "BRLP",
"extra": {
"dueDate": "2022-11-03"
}
}'
Descrição dos campos:
Campo | Descrição |
---|---|
id | Identificador único da transação (Transaction ID) |
type | Tipo de transação |
status | Status da transação de pagamento |
createdAt | Data e Hora da transação de pagamento |
updatedAt | Data e Hora da última atualização na transação |
banking | Campo não utilizado |
paymentinfo.payer | Nome do pagador do boleto |
paymentinfo.maxValue | Valor máximo do boleto/ Valor máximo aceito para pagamento |
paymentinfo.minValue | Valor mínimo do boleto/ Valor mínimo aceito para pagamento |
paymentinfo.recipient | Beneficiário / Emissor da cobrança |
paymentinfo.payDueDate | Data de vencimento do boleto/documento |
paymentinfo.totalUpdated | Valor do pagamento |
paymentinfo.discountValue | Valor do desconto (se houver) |
paymentinfo.documentPayer | CPF/CNPJ do pagador |
paymentinfo.originalValue | Valor original do boleto (sem o desconto) |
paymentinfo.dueDateRegister | Data de registro do boleto na CIP |
paymentinfo.nextBusinessDay | Próximo dia útil |
paymentinfo.allowChangeValue | Permissão de alteração do valor do boleto |
paymentinfo.documentRecipient | CPF/CNPJ do recebedor |
paymentinfo.totalWithDiscount | Valor total do desconto |
paymentinfo.fineValueCalculated | Valor multa já calculado |
paymentinfo.totalWithAdditional | Desconto adicional |
paymentinfo.interestValueCalculated | Valor juros já calculado |
payments.amount | Valor do boleto/documento |
payments.type | Tipo de operação |
payments.status | Status da transação |
payments.asset | Informações de Moeda |
payer.name | Nome do pagador |
payer.taxID | CPF/CNPJ do pagador |
beneficiary.name | Nome do beneficiário/recebedor/emissor da cobrança |
beneficiary.taxID | CPF/CNPJ do beneficiário/recebedor/emissor da cobrança |
additionalData | Campo livre |
Informação Importante
Antes de enviar uma solicitação de pagamento de um Boleto ou Conta, uma validação de registro de Boleto na CIP se faz necessário, isso irá reduzir muito o número de erros possíveis. No link "Validar um Boleto" você encontra mais informações sobre.
Lista de Convênio de Pagamento de Boletos
Massa para teste de Pagamento de Contas
Para utilizar o ambiente de homologação (staging) para testar o pagamento de contas, é necessário utilizar boletos padrões, disponibilizados abaixo:
Caso base, sem multa, sem juros, sem desconto
Ação
Apresentar ao usuário o valor retornado no campo “registerData.totalUpdated”, o qual representa o valor atualizado para pagamento.
Linha Digitavel | Código de Barras |
---|---|
23793381286008301352856000063307789840000150000 | 23797898400001500003381260083013525600006330 |
12190000050000001111442325241141800000000000000 | 12198000000000000000000000000011114232524114 |
33690000090000001004126514423149400000000000000 | 33694000000000000000000000000010042651442314 |
36490000190001508760400000706457500000000009990 | 36495000000000099900000100015087600000070645 |
34191090080025732445903616490003691150000020000 | 34196911500000200001090000257324450361649000 |
Caso com Desconto
Ação
Apresentar ao usuário os valores retornados nos campos “registerData.totalUpdated” (o qual representa o valor atualizado do pagamento), "registerData.originalValue" (valor original da cobrança) e o “registerData.totalWithDiscount” (representando o valor do desconto).
Linha Digitavel | Codigo de Barras |
---|---|
34198862666531252277792218900006890430000039322 | 34198904300000393228862665312522779221890000 |
75691432790103690040392423350013791150000006294 | 75697911500000062941432701036900409242335001 |
34191094877074700086011078940001191240000028635 | 34191912400000286351094870747000861107894000 |
75691432790103690040390176190016590840000006294 | 75695908400000062941432701036900409017619001 |
12190000050000001111445887751142300000000000000 | 12193000000000000000000000000011114588775114 |
Caso com Multa e Juros
Ação
Apresentar ao usuário os valores retornados nos campos “registerData.totalUpdated” (o qual representa o valor atualizado do pagamento), "registerData.originalValue" (valor original da cobrança) e os campos de multa (registerData.fineValueCalculated) e juros (registerData.interestValueCalculated).
Linha Digitavel | Codigo de Barras |
---|---|
00190000090100159000700117369173390420000098888 | 00193904200000988880000001001590000011736917 |
34198830080122357204906290120002191100000042373 | 34191911000000423738830001223572040629012000 |
34191753556547413204300173090002900000000000000 | 34199000000000000001753565474132040017309000 |
23793381286008589535160000063309791150000100200 | 23797911500001002003381260085895356000006330 |
74891122223232600700501001110079190550000000000 | 74891905500000000001122232326007000100111007 |
Caso de Multa e Vencido
Ação
Apresentar ao usuário o valor retornado no campo “registerData.totalUpdated” (o qual representa o valor atualizado do pagamento), "registerData.originalValue" (valor original da cobrança) e o campo de multa (registerData.fineValueCalculated) além de indicar o vencimento da conta.
Linha Digitavel | Codigo de Barras |
---|---|
23790124009217400000702005449802190400000191577 | 23791904000001915770124092174000000200544980 |
00190000090337338422510221525172991220000034108 | 00191000000000341080000003373384221022152517 |
23792374039171817501021008360006190550000480990 | 23791905500004809902374091718175012100836000 |
23793381286008590027671000063306991150000200000 | 23799911500002000003381260085900277100006330 |
23790402039000000008402001150602390600000454576 | 23793906000004545760402090000000080200115060 |
Caso de Juros e Vencimento
Ação
Apresentar ao usuário o valor retornado no campo “registerData.totalUpdated” (o qual representa o valor atualizado do pagamento), "registerData.originalValue" (valor original da cobrança) e o campo de juros (registerData.interestValueCalculated) além de indicar o vencimento da conta.
Linha Digitavel | Codigo de Barras |
---|---|
23790280009224200000504010356006191140000080300 | 23791911400000803000280092242000000401035600 |
74593180492312302800500085972784490850000025145 | 74594908500000251453180423123028000008597278 |
60490001171200559520701993996949490600000454576 | 60494906000004545760001112005595200199399694 |
23793391002915154220545000251707891140000010203 | 23797000000000000003391029151542204500025170 |
34191090082768751036567684970006690340000076200 | 34196903400000762001090027687510366768497000 |
Caso de Valor Máximo e Mínimo
Ação
Apresentar ao usuário um range o qual retornamos nos campos "registerData.minValue" e "registerData.maxValue", permitindo-o alterar o valor que será pago, desde que esteja dentro do intervalo apresentado.
Linha Digitavel | Codigo de Barras |
---|---|
34191570070404695481642042200008290440000032202 | 34192904400000322021570004046954814204220000 |
23790402039000000005087001150603490620000454576 | 23794906200004545760402090000000058700115060 |
23792374039002278911043000334003990730000220000 | 23799907300002200002374090022789114300033400 |
34191090733609320293983337430009291140000013353 | 34192911400000133531090736093202938333743000 |
23793130066010307677832006098407791140000031573 | 23797911400000315733130060103076773200609840 |
03399555103310000059638192201010691150000107380 | 03396911500001073809555133100000593819220101 |
Caso de Valor Máximo e Mínimo com Juros
Ação
Apresentar ao usuário o valor original do pagamento (registerData.originalValue) e o de juros (registerData.interestValueCalculated), além de permitir o usuário final alterar o valor do pagamento, respeitando o intervalo apresentado nos campos "registerData.minValue" e "registerData.maxValue".
Linha Digitavel | Codigo de Barras |
---|---|
34191760070778639037250800740008190570000013900 | 34191905700000139001760007786390375080074000 |
23793381286008589921357000063305891150000045000 | 23798911500000450003381260085899215700006330 |
23792374039181817501921008360006690860000480990 | 23796908600004809902374091818175012100836000 |
23796499206000007177334000179308490870000001500 | 23794908700000015006499260000071773400017930 |
74891122223337110700501001110038990860000000000 | 74899908600000000001122233371107000100111003 |
Caso de Valor Máximo e Mínimo com Desconto
Ação
Apresentar ao usuário o valor original do pagamento (registerData.originalValue) e o de desconto (registerData.totalWithDiscount), além de permitir o usuário final alterar o valor do pagamento, respeitando o intervalo apresentado nos campos "registerData.minValue" e "registerData.maxValue".
Linha Digitavel | Codigo de Barras |
---|---|
00190000090283633605305416182177190730000009900 | 00191907300000099000000002836336050541618217 |
23793381286008590088866000063306191160000004000 | 23791911600000040003381260085900886600006330 |
23792374035960813509786006248008390870000036773 | 23793908700000367732374059608135098600624800 |
42297115040000175653500610668725991200000050100 | 42299912000000501007115000001756530061066872 |
12190000050000001111449668751149100000000000000 | 12191000000000000000000000000011114966875114 |
Caso de Valor Máximo e Mínimo com Juros e Multa
Ação
Apresentar ao usuário os valores original do pagamento (registerData.originalValue), de multa (registerData.fineValueCalculated) e juros (registerData.interestValueCalculated), além de permitir o usuário final alterar o valor do pagamento, respeitando o intervalo apresentado nos campos "registerData.minValue" e "registerData.maxValue".
Linha Digitavel | Codigo de Barras |
---|---|
21890010070215182080683769954187691250000025000 | 21896912500000250000010002151820808376995418 |
21290001190110002290200392940904600000000000000 | 21296000000000000000001101100022900039294090 |
62390001170100009000901677757385600000000000000 | 62396000000000000000001101000090000167775738 |
65497020060100933759100009337692100000000000000 | 65491000000000000007020001009337590000933769 |
10499678032600010004503836361604190380000006030 | 10491903800000060309678026000100040383636160 |
Caso de Valor Máximo e Mínimo com Juros e Desconto
Ação
Apresentar ao usuário os valores original do pagamento (registerData.originalValue), de desconto (registerData.fineValueCalculated) e juros (registerData.interestValueCalculated), além de permitir o usuário final alterar o valor do pagamento, respeitando o intervalo apresentado nos campos "registerData.minValue" e "registerData.maxValue".
Linha Digitavel | Codigo de Barras |
---|---|
23790665059000021565891000200005290400000174838 | 23792904000001748380665090000215659100020000 |
34191757100176850252650434570003900000000000000 | 34199000000000000001757101768502525043457000 |
23792374039090339398289000444904491060000632641 | 23794910600006326412374090903393988900044490 |
33690000090000001008216106172436791150000049950 | 33697911500000499500000000000010081610617243 |
03399051503610001645400760701011991150000001790 | 03399911500000017909051536100016450076070101 |
Caso de Valor Máximo e Mínimo com Multa e Desconto
Ação
Apresentar ao usuário os valores original do pagamento (registerData.originalValue), de multa (registerData.fineValueCalculated) e juros (registerData.interestValueCalculated), além de permitir o usuário final alterar o valor do pagamento, respeitando o intervalo apresentado nos campos "registerData.minValue" e "registerData.maxValue".
Linha Digitavel | Codigo de Barras |
---|---|
00190000090320577681233003403178190420000025500 | 00191904200000255000000003205776813300340317 |
23792374039002305067862000334003191040000440000 | 23791910400004400002374090023050676200033400 |
07790001160100130520887843123305100000000000000 | 07791000000000000000001101001305208784312330 |
03399543492037925812015354601013191160000018058 | 03391911600000180589543420379258121535460101 |
33690000090000001005802854273147800000000000000 | 33698000000000000000000000000010050285427314 |
Caso de Valor Máximo e Mínimo com Multa, Desconto e Juros
Ação
Apresentar ao usuário os valores original do pagamento (registerData.originalValue), de multa (registerData.fineValueCalculated), de desconto (registerData.fineValueCalculated) e juros (registerData.interestValueCalculated), além de permitir o usuário final alterar o valor do pagamento, respeitando o intervalo apresentado nos campos "registerData.minValue" e "registerData.maxValue".
Linha Digitavel | Codigo de Barras |
---|---|
34191570070000470094409966970007690370000020376 | 34196903700000203761570000004700940996697000 |
23793395069000007832011000275500190110000100000 | 23791901100001000003395090000078321100027550 |
23793395069000007832012000275508190110000099999 | 23791901100000999993395090000078321200027550 |
23793395069000008172088000275508490570000001000 | 23794905700000010003395090000081728800027550 |
23792943059223500108535000003406891090000011600 | 23795911400000116002943092235001083500000340 |
Caso de Valor Máximo e Mínimo com Vencimento
Ação
Apresentar ao usuário um range o qual retornamos nos campos "registerData.minValue" e "registerData.maxValue", permitindo-o alterar o valor que será pago, desde que esteja dentro do intervalo apresentado e sinalizar o vencimento da conta em questão.
Linha Digitavel | Codigo de Barras |
---|---|
34191090080256821101111088400004590450000107500 | 34195904500001075001090002568211011108840000 |
23794150094040718517829000050004891180000150975 | 23798911800001509754150040407185172900005000 |
07790001160100130520805223546580900000000000000 | 07799000000000000000001101001305200522354658 |
00190000090306332800300131592172990680000200002 | 00199906800002000020000003063328000013159217 |
23792372059000030263913003681700991180000010271 | 23799911800000102712372090000302631300368170 |
Caso de Valor Máximo e Mínimo com Juros e Vencimento
Ação
Apresentar ao usuário o valor original do pagamento (registerData.originalValue) e o de juros (registerData.interestValueCalculated), além de permitir o usuário final alterar o valor do pagamento, respeitando o intervalo apresentado nos campos "registerData.minValue" e "registerData.maxValue", sinalizando também o vencimento da conta em questão.
Linha Digitavel | Codigo de Barras |
---|---|
34191150218582646969590840010004790600000100040 | 34197906000001000401150285826469699084001000 |
00190000090306332800300131581175490680000211113 | 00194906800002111130000003063328000013158117 |
00190000090339179122908597733172590780000009990 | 00195907800000099900000003391791220859773317 |
36890001019350063506016002000202100000000000000 | 36891000000000000000001093500635061600200020 |
23793129256900165754825015810804191150000048541 | 23791911500000485413129269001657542501581080 |
Caso de Valor Máximo e Mínimo com Multa e Vencimento
Ação
Apresentar ao usuário o valor original do pagamento (registerData.originalValue) e o de multa (registerData.fineValueCalculated), além de permitir o usuário final alterar o valor do pagamento, respeitando o intervalo apresentado nos campos "registerData.minValue" e "registerData.maxValue", sinalizando também o vencimento da conta em questão.
Linha Digitavel | Codigo de Barras |
---|---|
34191090577610363923352150280007890440000023636 | 34198904400000236361090576103639235215028000 |
34191090991427035037520023860008990880000007759 | 34199908800000077591090914270350372002386000 |
23793391002917147731752000251703191190000013066 | 23799000000000000003391029171477315200025170 |
75691307890102413852940290820014791140000009990 | 75697911400000099901307801024138524029082001 |
33690000090000001008216106222439291150000022580 | 33692911500000225800000000000010081610622243 |
Caso de Valor Máximo e Mínimo com Desconto e Vencimento
Ação
Apresentar ao usuário o valor original do pagamento (registerData.originalValue) e o de desconto (registerData.totalWithDiscount), além de permitir o usuário final alterar o valor do pagamento, respeitando o intervalo apresentado nos campos "registerData.minValue" e "registerData.maxValue", sinalizando também o vencimento da conta em questão.
Linha Digitavel | |
---|---|
34191090080418693100432786010002890570000057500 | 34198905700000575001090004186931003278601000 |
00190000090343850805781256930173691190000005000 | 00196911900000050000000003438508058125693017 |
73990000040000122700850064640340400000000000000 | 73994000000000000000000000001227005006464034 |
00190000090326892600755468462175190890000078937 | 00191908900000789370000003268926005546846217 |
23796499206000007508924000179309791200000045000 | 23797912000000450006499260000075082400017930 |
Caso com valor máximo de 999999999999.99
Ação
Apresentar o valor nominal ao usuário, permitindo-o alterar o valor e realizando uma verificação se o valor inserido comporta o intervalo apresentado nos campos "registerData.maxValue" e "registerData.minValue".
Linha Digitavel | Codigo de Barras |
---|---|
34191755388857494252550451630003800000000000000 | 34198000000000000001755388574942525045163000 |
36490000270001696900800000838441800000000005999 | 36498000000000059990000200016969000000083844 |
00190000090281722809764682232174290930000010517 | 00192909300000105170000002817228096468223217 |
10495497675500010004400002643831890990000008980 | 10498909900000089805497655000100040000264383 |
03399392330020000001636119801011191140000009990 | 03391911400000099909392300200000013611980101 |
Erros de pagamento:
A tabela abaixo lista alguns possíveis erros que podem acontecer no fluxo de pagamento de contas:
Mensagem de erro | Código do erro | Tipo da transação | Resolução |
---|---|---|---|
TRANSACAO NAO ENCONTRADA | 24 | Todas | Deve ser retornado para o usuário que o código de barras ou linha digitável é inválido. |
FALHA NA COMUNIC JUNTO AO NOSSO PARCEIRO. FAVOR TENTE NOVAMENTE. | 658 | Todas | Nesse caso, como a BIT Capital não teve sucesso ao tentar realizar a tentativa do pagamento, o recomendado é pedir ao usuário que tente efetuar o pagamento novamente. |
FALHA NA COMUNIC COM A INSTITUICAO. FAVOR TENTE NOVAMENTE. | 620 | Todas | Nesse caso, como a BIT Capital não teve sucesso ao tentar realizar a tentativa do pagamento, o recomendado é pedir ao usuário que tente efetuar o pagamento novamente. |
SPTRANS INDISPONIVEL. POR FAVOR, TENTE NOVAMENTE. | 714 | Todas | Informar que ocorreu uma intermitência e pedir para tentar novamente. |
Updated over 1 year ago