Skip to main content

Bill Payment

When a user performs a bill payment, the payment details must be sent to QI Tech. This enables a risk analysis of the operation using the provided data.

Bill Payment Object Definition

Request Body
{
"id": "082373263",
"amount": 12979,
"bill_payment_date": "2020-10-07T15:06:25-03:00",
"bill_due_date": "2020-10-07",
"bill_issuing_date": "2020-10-07",
"service_description": "CONTA DE ELETRICIDADE ENEL",
"face_recognition_key": "ef39e206-13d5-48de-b368-6c3bbc6f0222",
"validation_key": "69a59de3-0198-4a26-933a-c1de624c147d",
"company": {
"id": "451673263",
"provided_service": "eletricity",
"name" : "Enel",
"legal_name": "Eletropaulo Metropolitana Eletricidade de São Paulo S.A.",
"document_number": "61.695.227/0001-93",
"address": {
"street": "Av. Dr. Marcos Penteado de Ulhôa Rodrigues",
"number": "939",
"neighbourhood": "Sítio Tamboré",
"city": "Barueri",
"uf": "SP",
"complement": "Loja 1 e 2",
"postal_code": "06460-040"
}
},
"payer": {
"id": "182373263",
"type": "legal_person",
"document_number": "07.487.735/0001-69",
"name": "Gioconda Pizzaria e Rotisseria LTDA.",
"email": "gioconda_pizza@bol.com.br",
"address": {
"street": "Avenida 13",
"number": "704",
"neighbourhood": "Centro",
"city": "Ituiutaba",
"uf": "MG",
"complement": "Apt 1101",
"postal_code": "38300-140"
},
"phone": {
"international_dial_code": "55",
"area_code": "16",
"number": "981610077",
"type": "mobile"
},
"account": {
"participant": "60701190",
"branch": "3675",
"account_number": "13212",
"account_digit": "5",
"account_type": "CACC"
},
"sales_channel": "inbound_sales",
"segment": "Personalité"
},
"source": {
"channel": "internet_banking",
"platform": "android",
"ip": "198.185.105.098",
"session_id": "7839jdqd9a8wd9"
}
}

A bill payment must be submitted to the API for preliminary fraud validation before being forwarded to the processing system.

The payment status represents the decision returned by the model regarding that bill. The following statuses are used in the analysis_status flag:

  • automatically_approved
  • automatically_reproved
  • in_manual_analysis
  • pending

Below are the meanings of each decision returned in the analysis_status flag:

statusdescription
automatically_approvedIt is recommended that this bill payment be approved.
automatically_reprovedIt is recommended that this bill payment be reproved.
in_manual_analysisIt is recommended that this bill payment be analyzed manually.
pendingThe bill payment is being processed.
nametypedescription
idstringTransaction identifier in the client's system.
It is essential that this number is unique for each bill payment
document_amountintegerDocument amount in cents - as described in the "Standards" section.
other_deduction_amountintegerValue of other deductions applied to the document value in cents - as described in the "Standards" section.
interest_amountintegerValue of fines, late fees, or interest applied to the document value in cents - as described in the "Standards" section.
amountintegerFinal amount paid on the bill - as described in the "Standards" section.
bill_payment_datedatetimeThe date and time of the bill payment, with time zone.
bill_due_datedateBill due date according to standardization.
descriptionstringDescription or remarks field of the bill.
face_recognition_keystringFacial recognition key, if facial recognition was performed by our facial recognition API.
validation_keystringValidation key, if any client validation test was performed in our validation API.
clientclientObject representing the client's data, whether they are paying or receiving the payment.
companycompanyObject representing the utility company or service provider related to that bill.
payerbill_payerObject representing the individual (natural person) or legal entity that paid the bill.
recipientbill_clientObject representing the individual (natural person) or legal entity for whom the bill was issued.
sourcesourceSource type object describing information coming from the application used for the bill payment.

Send a Bill Payment

Request Body
  {
"id": "12345",
...
}
Response Body
  {
"bill_payment_key": "13d680ef-4b72-4cb2-a63d-cf3d790abaaf",
"status": "automatically_approved",
"reason": "rule_decision_enum"
}

To perform the evaluation of a bill payment, simply send a BillPayment object to the following endpoint:

POST https://api.caas.qitech.app/bill_payment/bill_payment

Retrieve a Bill Payment

Response Body
  {
"id": "082373263",
"amount": 12979,
...
}

To retrieve data from a bill payment, simply send a request to the following endpoint:

GET https://api.caas.qitech.app/bill_payment/bill_payment/{bill_payment_id}

Where bill_payment_id is the transaction identifier in the client's system used when sending the bill payment.

Update a Bill Payment

Request Body
  {
"bill_payment_status": "completed",
"event_date": "2020-10-07T15:06:25-03:00"
}
Response Body
  {
"bill_payment_key": "13d680ef-4b72-4cb2-a63d-cf3d790abaaf",
"bill_payment_status": "completed"
}

After a bill payment is created and analyzed, it is sent to the clearing house for processing. Therefore, you must report payment status updates via the endpoint:

PUT https://api.caas.qitech.app/bill_payment/bill_payment/{bill_payment_id}

This ensures that our database remains updated, allowing us to accurately identify payments that are genuinely susceptible to fraud.