Skip to main content

Boleto issuance via JSON

Request

ENDPOINT
/multibank_instruction
METHOD
POST
Request Body
{
"occurrences": [
{
"amount": 1000,
"automatic_bankruptcy_protest": false,
"bank_teller_instructions": "Não pagar após vencimento.",
"beneficiary_account_key": "8a35e639-8420-4f6c-9647-c2515e5381ef",
"beneficiary_key": "3c866e34-23fe-46c2-a8b0-e39ca4348923",
"days_to_bankruptcy_protest": 0,
"document_number": "123456/01",
"expiration": "2020-06-01",
"fine_percentage": "3",
"interest_daily_value": "0.34",
"occurrence_type": "registration",
"payer_address": "Rua Carlos Sampaio, 123",
"payer_document": "41184562067",
"payer_name": "João Ninguem",
"payer_person_type": "natural",
"payer_postal_code_root": "15800",
"payer_postal_code_suffix": "020",
"printing_policy": "no_printing",
"registration_institution_enumerator": "qi_scd",
"requester_profile": "09",
"requester_profile_code": "329-09-0001-0000002"
}
]
}
Attention!

If the address details of the boleto payer are not provided, it will not be possible to protest the slip in case of non-payment.

Query params

FieldTypeDescriptionCharacters
use_multi_processbooleanIndicates if the registration occurrence processing will be sent to the queue or processed sequentially. If this parameter is set to true, it is mandatory to send our banking number our_number in the registration occurrence payload.-

Body params

FieldTypeDescriptionCharacters
occurrences *array of objectsList of occurrences to be processed.Object occurrences

Object occurrences

FieldTypeDescriptionCharacters
amount *doubleBoleto amount.-
automatic_bankruptcy_protestbooleanAutomatic protest configuration.-
bank_teller_instructionsstringInstructions to the cashier (Slip notes/comments).-
beneficiary_account_keystringBeneficiary account key.-
beneficiary_keystringBeneficiary key.-
days_to_bankruptcy_protestintNumber of days for automatic bankruptcy protest.-
document_numberstringDocument number.-
expiration *stringDue date.-
fine_percentagestringFine percentage.-
interest_daily_valuestringDaily interest in reais.-
occurrence_type *stringType of occurrence.-
payer_addressstringPayer address.-
payer_document *stringPayer document (CPF or CNPJ).-
payer_name *stringPayer name.-
payer_person_type *stringPayer person type.-
payer_postal_code_rootstringFirst five digits of the postal code.-
payer_postal_code_suffixstringLast three digits of the postal code.-
printing_policystringSlip printing policy.-
registration_institution_enumerator *stringIt will always be qi_scd.qi_scd
requester_profile *stringWallet number.02
requester_profile_code *stringWallet code composed as follows: "329-wallet-agency-7_digit_account". NOTE: The default QI Tech billing wallet is number "09".-
notificationobjectWallet number.Object notification
discountsobjectList of discount information objects.Object discounts
guarantor_namestringGuarantor name.-
guarantor_document_rootstringBase of the guarantor's CNPJ.-
guarantor_document_subsidiarystringHead office or branch information of the guarantor's CNPJ.-
guarantor_document_digitstringVerification digit of the guarantor's CNPJ.-

Object notification

FieldTypeDescriptionCharacters
document_number *stringDocument number of the user who will receive the notification.-
email *stringEmail of the user who will receive the notification.-
name *stringName of the user who will receive the notification.-
phone *objectObject containing information about the user's phone who will receive the notification.Object phone
send_2_way *booleanSend issuance notifications of the second copy.true/false
send_after_due_date *booleanSend notifications after the Boleto's due date.true/false
send_before_due_date *booleanSend notifications before the Boleto's due date.true/false
send_on_protest *booleanSend protest notifications.true/false

Object phone

FieldTypeDescriptionCharacters
country_codestringPhone's country code (https://ddi.guiamais.com.br/)3
area_codestringPhone's area code (https://ddd.guiamais.com.br/)2
numberstringPhone number (numbers only)10

Object discounts

FieldTypeDescriptionCharacters
discount_valuefloatDiscount value.-
discount_numberintOrder in which the discount should be applied.-
discount_limit_datedateLimit date for applying the discount.10

Response

STATUS
200
Response Body
{
"bank_slips": [
{
"amount": "649.73",
"bank_slip_key": "4bc636d0-1e41-4ce6-801c-475814bf4dcf",
"bank_slip_status": "accepted",
"barcode": "32991916500000649730001090000699935200347340",
"beneficiary_account_key": "1c977186-9167-4ef1-b27d-08483429f74c",
"beneficiary_key": "f01d4877-b1cc-4f4a-a8f9-952c2cef9ca8",
"digitable_line": "32990001039000069993552003473403191650000064973",
"expiration": "2022-11-10",
"nfe_key": null,
"nfe_url": null,
"our_number": 6999352,
"participant_control_number": null,
"payer_postal_code": "38050000",
"protest_status": "not_protested"
}
],
"file_info": {
"beneficiary_code": null,
"beneficiary_name": null,
"file_sequence_id": null,
"file_type_identifier": null,
"file_type_literal": null,
"service_code": null,
"service_literal": null,
"wrote_at": null
},
"occurrence_stats": {
"bank_slip_edit": 0,
"bankruptcy_protest_request": 0,
"cancel_rebate": 0,
"extension": 0,
"notary_office_entry": 0,
"notary_office_exit": 0,
"notary_office_payment": 0,
"notification": 0,
"payment": 0,
"payment_notice": 0,
"payment_write_off": 0,
"protest_cancel_and_write_off_request": 0,
"protest_cancel_request": 0,
"protest_remove_request": 0,
"protest_request": 0,
"rebate": 0,
"registration": 1,
"write_off": 0
},
"semantic_errors": []
}

STATUS
400
Response Body
{
"data": "{\"title\": \"Bad Request\", \"description\": \"Invalid request body.\", \"translation\": \"Corpo da requisição inválido.\", \"extra_fields\": {}, \"code\": \"LEG000069\"}",
"title": "Bad Request",
"description": "Invalid request body.",
"translation": "Corpo da requisição inválido.",
"extra_fields": {},
"code": "LEG000069"
}

Response Params

FieldTypeDescriptionCharacters
bank_slipslistList with information of the registered boletos if the use_multi_process parameter is set to false.Object Bank Slip
file_infolistInformation about the file.Object File Info
occurrence_statsobjectInformation about the file.Object File Info
semantic_errorslistList of errors in processing each boleto. It will be returned if there is any processing error and if the use_multi_process parameter is set to false.Object Semantic Error

Object bank_slip

FieldTypeDescriptionCharacters
amountfloatBoleto amount.-
bank_slip_keyuuidUnique identification key of the boleto in QI Tech.36
bank_slip_statusenumUnique identification key of the boleto in QI Tech.Bank Slip Status Enumerators
barcodestringBarcode of the boleto.44
beneficiary_account_keyuuidUnique identification key of the account in which the boleto was registered.36
beneficiary_keyuuidUnique identification key of the account holder in which the boleto was registered.36
digitable_lineuuidDigitable line of the boleto.47
expirationstringBoleto due date.10
nfe_keystringUnique identification key of the electronic invoice.-
nfe_urlstringURL of the electronic invoice.-
our_numberintOur banking number. It is a sequential identification number of this boleto in relation to the account (billing wallet) in which it was registered. Its value can be provided in the boleto registration request. If not provided, QI Tech will generate a value for this field (incremental value, e.g., the 1st boleto registered on the account will have our_number with a value of 1, the 16th boleto registered on the account will have our_number with a value of 16).-
participant_control_numberstringParticipant control number.10
payer_postal_codestringPayer's postal code.8
protest_statusstringProtest status of the boleto, if the protest was requested.Protest Status Enumerators

Enumerators bank_slip_status

EnumeratorDescription
acceptedBoleto accepted for processing
registeredBoleto registration was completed in the boleto registration chamber
paidBoleto payment amount was credited to the beneficiary's account
written_offBoleto written off (boleto is no longer payable)
rejectedBoleto registration rejected by the boleto registration chamber
payment_noticeNotice that the boleto payment has been processed at the paying bank (but settlement in the beneficiary's account has not yet occurred)
notary_office_payment_noticeNotice that the payment of a protested boleto has been processed at the paying bank (but the notary office has not yet transferred the payment, and settlement in the beneficiary's account has not yet occurred)

Enumerators protest_status

EnumeratorDescription
not_protestedBoleto does not have a protest request.
protest_requestedBoleto with a protest request being processed by QI Tech.
notary_office_entryBoleto protest request was accepted by the notary office.
protest_cancel_requestedProtest cancellation request being processed by QI Tech.
notary_office_exitBoleto protest was removed from the notary office.
protestedProtest was confirmed by the notary office, and the Boleto is currently protested.
paid_at_notary_officeNotary office identified the payment of the protested Boleto and is processing the payment transfer to QI Tech.
judicially_suspendedJudicially suspended protest.
protest_remove_requestedProtest removal request was accepted by the notary office.