Boleto Citibank

Carat allows payment of boletos through Citibank.

In this page, the nomenclature "Citibank" will be used to reference the acquirer on Carat Portal.

Carat Portal Interfaces Supported for Integration#

The following interfaces for integration with Boleto Citibank are available:

  • REST payment
  • HTML Payment
  • Reprint of boletos

Required credentials#

The merchant must obtain with Citibank the credentials listed below, and pass them to Software Express.

FieldDescriptionFormatRequired
codigoBeneficiarioMerchant agreement code at Citibank.= 20 NYes
codigoAgenciaBeneficiarioMerchant bank agency at Citibank≤ 5 NYes
mensagemBeneficiarioAssignor's message. Do not use special character other than “/”, “-“ , “;” or "@".≤ 40 NYes

The store may also request the configuration of some parameters of default values ​​with Software Express.

FieldDescriptionFormatRequired
quantidadeDiasCalculoVencimentoNumber of days to calculate the standard expiration date.≤ 2 NNo
mensagemReciboPagadorDefault message displayed in boleto payment receipt. Note: up to two lines with a maximum of 40 characters.≤ 40 ANNo
mensagemFichaCompensacaoDefault message displayed in the boleto instructions. Note: up to two lines with a maximum of 40 characters.≤ 40 ANNo

Citibank payemnt flow#

  1. Successfully generated the boleto.
  2. The Payment Transaction will remain in 'Processed' status.
  3. The merchant will receive from Citibank a file with the data of the slips and situation, informing if they were paid.

Payment REST#

Boleto payment follows the normal payment flow

Transaction creation#

More details in topic Transaction creation

Ex:

{
"merchant_usn": "7112400307",
"order_id": "07112400307",
"amount": "2400",
"installments": "1",
"installment_type": "4",
"authorizer_id": "2601",
"additional_data": {
"payer": {
"name": "Steve",
"surname": "Harris",
"address": {
"zip_code": "01307001",
"street_number": "35",
"street_name": "Avenida Paulista",
"complement": "Ap 10",
"district": "bela vista",
"city": "São Paulo",
"state": "SP",
"country": "BR"
},
"documents": [
{
"type": "CPF",
"number": "60861648005"
}
]
},
"boleto": {
"assignor_code": "99999999999999999999",
"your_number": "1646940087",
"expiration_date": "20/03/2022",
"issue_date": "10/03/2022",
"specie_type": "01",
"company_identification": "identificacao_empresa",
"assignor": "XPTO COMPUTADORES DO BRASIL LTDA",
"assignor_document": {
"type": "CNPJ",
"number": "72381189000110"
},
"assignor_address": {
"zip_code": "01307001",
"street_number": "999",
"street_name": "Avenida YYZ",
"complement": "Ap 3000",
"district": "bela vista",
"city": "São Paulo",
"state": "SP",
"country": "BR"
},
"instructions": [
{
"message": "ficha_compensacao msg1"
},
{
"message": "ficha_compensacao msg2"
}
],
"receipt_messages": [
{
"message": "recibo msg1"
},
{
"message": "recibo msg2"
}
]
}
}
}

Payment Effectuation#

More details in topic Payment effectuation

The effectuation payment response delivers some unique data from the boleto payment

FieldDescription
payment.boletoBoleto's payment exclusive fields
digitable_lineDigitable line
urlBoleto's url

Ex request:

{
"authorizer_id": "2601"
}

Ex response:

{
"code": "0",
"message": "OK. Transaction successful.",
"payment": {
"authorizer_message": "OK",
"status": "PRO",
"nit": "9901701cc1631cf6fc71a38b0a6e8dba8b8130f2ad1c3109643753223dba312b",
"order_id": "07112400307",
"authorizer_id": "2601",
"acquirer_id": "2601",
"acquirer_name": "Boleto Citibank",
"merchant_usn": "7112400307",
"esitef_usn": "220310093364750",
"amount": "2400",
"payment_type": "B",
"payment_date": "10/03/2022T16:29",
"boleto": {
"digitable_line": "47720953885052730207262219741330432820197130661",
"url": "https://esitef-homologacao.softwareexpress.com.br/e-sitef/reissue.se?nit=9901701cc1631cf6fc71a38b0a6e8dba8b8130f2ad1c3109643753223dba312b"
}
}
}

Web Checkout#

Transaction creation#

More details in topic Transaction creation

Ex:

{
"merchant_id": "BOLETOCITI",
"merchant_usn": "7112400307",
"order_id": "07112400307",
"amount": "2400",
"installments": "1",
"installment_type": "4",
"authorizer_id": "2601",
"additional_data": {
"payer": {
"name": "Steve",
"surname": "Harris",
"address": {
"zip_code": "01307001",
"street_number": "35",
"street_name": "Avenida Paulista",
"complement": "Ap 10",
"district": "bela vista",
"city": "São Paulo",
"state": "SP",
"country": "BR"
},
"documents": [
{
"type": "CPF",
"number": "60861648005"
}
]
},
"boleto": {
"assignor_code": "99999999999999999999",
"your_number": "1646940087",
"expiration_date": "17/08/2022",
"issue_date": "10/03/2022",
"specie_type": "01",
"company_identification": "identificacao_empresa",
"assignor": "XPTO COMPUTADORES DO BRASIL LTDA",
"assignor_document": {
"type": "CNPJ",
"number": "72381189000110"
},
"assignor_address": {
"zip_code": "01307001",
"street_number": "999",
"street_name": "Avenida YYZ",
"complement": "Ap 3000",
"district": "bela vista",
"city": "São Paulo",
"state": "SP",
"country": "BR"
},
"instructions": [
{
"message": "ficha_compensacao msg1"
},
{
"message": "ficha_compensacao msg2"
}
],
"receipt_messages": [
{
"message": "recibo msg1"
},
{
"message": "recibo msg2"
}
]
}
}
}

Optional data in Web Checkout#

If the buyer's Name, Document and Address data are not sent, a form will be displayed for the buyer to fill out.

Mandatory fields#

So that the customer can make a boleto bancário payment, it's necessary that the store submits to Carat Portal the following information:

FieldDescriptionFormatMandatory
additional_data.payer
namePayer's name.
Obs.: concatenation of first name with last name cannot exceed 255 characters.
< 200 ANYes
surnamePayer's surname.
Obs.: concatenation of first name with last name cannot exceed 255 characters.
< 200 ANYes
additional_data.payer.address
street_namePayer's adress.< 150 ANYes
street_numberPayer's adress number.< 20 ANYes
complementPayer's adress complement.< 100 ANNo
zip_codePayer's zip code.< 8 NYes
cityPayer's city.< 50 ANNão
statePayer's state.= 2 ANNão
countryPayer's country AN 3166-1 format. Ex.: BRA= 3 ANNo
additional_data.boleto
assignor_codeBank relationship number= 20 NNo
bank_issuer_codeBank branch relationship number< 7 ANNo
boleto_numberBoleto's identification number. In absent it will be generated< 14 NNo
your_numberNumber used and controlled by the merchant, to identify the boleto.< 11 ANNo
expiration_dateBoleto expiration date in the format dd/mm/aaaa.
Note: If not sent, it will be generated based on the authorizer's default configuration
< 10 ANNo
issue_dateDate of issue of the ticket in the format dd/mm/aaaa.
Note: If not sent, it will be generated based on the current date
< 10 ANNo
specie_typeCode adopted to identify the type of billing document:
01 - Cheque
02 - Trade Duplicate
03 - Trade Duplicate for Indication
= 02 NYes
fine_dateFine date= 10 ANNo
fine_amountAmount in cents of the penalty for late payment.< 12 ANNo
fine_percentagePercentage of fine to be applied on the value of the boleto, for late payment.< 12 NNo
company_identificationField intended for use by the Beneficiary Company to identify the boleto.< 25 ANNo
iof_amountIOF amount.< 12 NNo
assignorAssignor's Name< 40 ANNo
additional_data.payer.assignor_documentAssignor's document id. Note: If not sent, the merchant configured document will be used
typeAssignor's document typeCPF or CPNJNo
numberAssignor's document id< 14 NNo
additional_data.payer.assignor_addressAssignor's address. Note: If not sent, the merchant configured address will be used
street_nameAssignor's address.< 150 ANYes
street_numberAssignor's address number.< 20 ANYes
complementAssignor's address complement.< 100 ANNo
zip_codeAssignor's zip code< 8 NYes
cityAssignor's city< 50 ANNo
stateAssignor's state= 2 ANNo
additional_data.boleto.instructions[]
messageText of observations intended for sending free messages, to be printed in the instructions field of the compensation form
Note: If not sent, the default merchant configuration will be used
< 40 NNo
additional_data.boleto.receipt_messages[]
messageText of remarks intended for sending free messages, to be printed on the receipt of the payer's part of the ticket
Note: If not sent, the default merchant configuration will be used
< 40 NNo
additional_data.boleto.payment
allowed_quantityAllowed payment quantity< 2 NNo
typePayment type< 35 ANYes
minimum_amountMinimum admissible payment amount.< 12 NNo
maximum_amountMaximum admissible amount for payment.< 12 NNo
minimum_percentageValue of the minimum percentage admissible for payment.< 12 NNo
maximum_percentageValue of the maximum percentage admissible for payment.< 12 NNo

Reprint of boletos#

It is possible to make available to customers the reprint of Citibank boletos.

That functionality is available through the URL:

Production environment
https://esitef.softwareexpress.com.br/e-sitef/reissue.se?nit=XXX
UAT environment
https://esitef-homologacao.softwareexpress.com.br/e-sitef-hml/reissue.se?nit=XXX

The nit used in the original payment transaction, made via Citibank Boleto, must be informed as a GET parameter. Accessing this URL allows viewing the boleto.

If the payment transaction is not in the expected state, it is present an error message.

Attention

The IP address must never be used instead of the domain esitef.softwareexpress.com.br (or esitef-homologacao.softwareexpress.com.br for Certification and Test environment). The IP address can change at any moment without notice, so it is important to always use the domain to access Carat Portal.