Bank slip issuance via JSON
Request
ENDPOINT
/multibank_instructionMETHOD
POSTRequest 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"
}
]
}
Warning!
If the payer's address information for the bank slip is not provided, it will not be possible to protest the bank slip in case of non-payment.
Query params
| Field | Type | Description | Characters |
|---|---|---|---|
use_multi_process | boolean | Indicates whether the registration occurrence processing will be sent to queue processing or will be 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
| Field | Type | Description | Characters |
|---|---|---|---|
occurrences * | array of objects | List of occurrences to be processed. | Occurrences object |
Occurrences object
| Field | Type | Description | Characters |
|---|---|---|---|
amount * | double | Bank slip amount. | - |
automatic_bankruptcy_protest | boolean | Automatic protest configuration. | - |
bank_teller_instructions | string | Teller instructions (Bank slip message/observations). | - |
beneficiary_account_key | string | Beneficiary account key. | - |
beneficiary_key | string | Beneficiary key. | - |
days_to_bankruptcy_protest | int | Number of days for automatic bankruptcy protest submission. | - |
document_number | string | Document number. | - |
expiration * | string | Due date. | - |
fine_percentage | string | Fine percentage | - |
interest_daily_value | string | Daily interest value in reais | - |
occurrence_type * | string | Occurrence type. | - |
payer_address | string | Payer address. | - |
payer_document * | string | Payer document (CPF or CNPJ). | - |
payer_name * | string | Payer name. | - |
payer_person_type * | string | Payer person type. | - |
payer_postal_code_root | string | The first five digits of the postal code. | - |
payer_postal_code_suffix | string | The last three digits of the postal code. | - |
printing_policy | string | Bank slip printing policy | - |
registration_institution_enumerator * | string | Will always be qi_scd. | qi_scd |
requester_profile * | string | Portfolio number. | 02 |
requester_profile_code * | string | Portfolio code composed as follows: "329-portfolio-agency-account_with_7_digits". NOTE: QI Tech's default collection portfolio is number "09". | - |
notification | object | Portfolio number. | Notification object |
discounts | object | List of objects with discount information. | Discounts object |
guarantor_name | string | Guarantor name. | - |
guarantor_document_root | string | Guarantor CNPJ base. | - |
guarantor_document_subsidiary | string | Head office or branch CNPJ information. | - |
guarantor_document_digit | string | CNPJ check digit. | - |
Notification object
| Field | Type | Description | Characters |
|---|---|---|---|
document_number * | string | Document number of the user who will receive the notification. | - |
email * | string | Email of the user who will receive the notification. | - |
name * | string | Name of the user who will receive the notification. | - |
phone * | object | Object containing phone information of the user who will receive the notification. | Phone object |
send_2_way * | boolean | Send second copy issuance notifications. | true/false |
send_after_due_date * | boolean | Send notifications after bank slip due date. | true/false |
send_before_due_date * | boolean | Send notifications before bank slip due date. | true/false |
send_on_protest * | boolean | Send protest notifications. | true/false |
Phone object
| Field | Type | Description | Characters |
|---|---|---|---|
country_code | string | Phone country code (https://ddi.guiamais.com.br/) | 3 |
area_code | string | Phone area code (https://ddd.guiamais.com.br/) | 2 |
number | string | Phone number (numbers only) | 10 |
Discounts object
| Field | Type | Description | Characters |
|---|---|---|---|
discount_value | float | Discount value. | - |
discount_number | int | Order in which the discount should be applied. | - |
discount_limit_date | date | Discount application limit date. | 10 |
Response
STATUS
200Response 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
400Response 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
| Field | Type | Description | Characters |
|---|---|---|---|
bank_slips | list | List with information of registered bank slips when the use_multi_process parameter is set to false. | Bank Slip Object |
file_info | list | File information. | File Info Object |
occurrence_stats | object | File information. | File Info Object |
semantic_errors | list | List of errors in processing each bank slip. Will be returned if there are any processing errors and when the use_multi_process parameter is set to false. | Semantic Error Object |
bank_slip object
| Field | Type | Description | Characters |
|---|---|---|---|
amount | float | Bank slip amount. | - |
bank_slip_key | uuid | Unique identification key for the bank slip at QI Tech. | 36 |
bank_slip_status | enum | Unique identification key for the bank slip at QI Tech. | bank_slip_status enumerators |
barcode | string | Bank slip barcode. | 44 |
beneficiary_account_key | uuid | Unique identification key for the account where the bank slip was registered. | 36 |
beneficiary_key | uuid | Unique identification key for the account holder where the bank slip was registered. | 36 |
digitable_line | uuid | Bank slip digitable line. | 47 |
expiration | string | Bank slip due date. | 10 |
nfe_key | string | Electronic invoice unique identification key. | - |
nfe_url | string | Electronic invoice URL. | - |
our_number | int | Our banking number. It is a sequential identification number for this bank slip in relation to the account (collection portfolio) where it was registered. Its value can be provided in the bank slip registration request. If not provided, QI Tech will generate a value for this field (being an incremental value, e.g.: 1st bank slip registered in the account will have our_number value of 1, the 16th bank slip registered in the account will have our_number value of 16). | - |
participant_control_number | string | Participant control number. | 10 |
payer_postal_code | string | Bank slip payer postal code. | 8 |
protest_status | string | Bank slip protest status, if protest was requested. | protest_status enumerators |
bank_slip_status enumerators
| Enumerator | Description |
|---|---|
accepted | Bank slip accepted for processing |
registered | Bank slip registration was completed in the bank slip registration chamber |
paid | Bank slip payment amount was credited to the beneficiary's account |
written_off | Bank slip written off (bank slip is no longer payable) |
rejected | Bank slip registration rejected by the bank slip registration chamber |
payment_notice | Notice that bank slip payment was processed at the paying bank (but settlement to the beneficiary's account has not yet occurred) |
notary_office_payment_notice | Notice that payment of a protested bank slip was processed at the paying bank (but the notary office has not yet transferred the payment and settlement to the beneficiary's account has not yet occurred) |
protest_status enumerators
| Enumerator | Description |
|---|---|
not_protested | Bank slip has no protest request. |
protest_requested | Bank slip with protest request being processed by QI Tech. |
notary_office_entry | Bank slip protest request was accepted by the notary office. |
protest_cancel_requested | Protest cancellation request being processed by QI Tech. |
notary_office_exit | Bank slip protest was removed from the notary office. |
protested | Protest was confirmed by the notary office and the bank slip is protested. |
paid_at_notary_office | Notary office identified the protest payment and is processing the payment transfer to QI Tech. |
judicially_suspended | Judicially suspended protest. |
protest_remove_requested | Protest removal request was accepted by the notary office. |