Skip to main content

Webhooks

Since transfers occur asynchronously, it is highly important to correctly map and handle the webhooks sent.

Attention!

QI Tech webhooks should not be mapped restrictively. Additional fields may be included in the webhook payloads returned from our APIs.

Webhook for Pending Transactions

Webhook intended to update the status of transfers that remained pending (status 202) in the Pix transfer request.

Webhook Request Body

Request Body: Transaction Sent
{
"webhook_type": "baas.pix_transfer.outgoing_pix",
"webhook_datetime": "2021-10-22T20:30:23.459Z",
"data": {
"request_control_key": "b6804f32-101e-4702-8fbc-c2dbc4c2caec",
"pix_transfer_key": "8cb70dea-9fb0-4a68-9572-99a72849c8d6",
"pix_transfer_status": "sent",
"created_at": "2021-10-22T20:30:23.459Z"
}
}
Request Body: Transaction Rejected
{
"webhook_type": "baas.pix_transfer.outgoing_pix",
"webhook_datetime": "2021-10-22T20:30:23.459Z",
"data": {
"request_control_key": "b6804f32-101e-4702-8fbc-c2dbc4c2caec",
"pix_transfer_key": "8cb70dea-9fb0-4a68-9572-99a72849c8d6",
"pix_transfer_status": "rejected",
"created_at": "2021-10-22T20:30:23.459Z",
"error_code": "PXT000132",
"error_description": "Target account number is invalid.",
"error_translation": "Número da conta de destino é inexistente ou inválido.",
"error_short_description": null
}
}

Webhook Body Param

FieldTypeDescriptionMax. Characters
webhook_typestringAn enumerator that defines the type of event being reported23
webhook_datetimestringDate and time the webhook was sent20
request_control_keystringUUID4 for query purposes about the request made.36
pix_transfer_keystringIdentification key of the Pix transfer in the QI system36
pix_transfer_statusstringTransaction status200
created_atstringDate and time the transaction was created20

Webhook for incoming Pix

A webhook that will notify about Pix transactions that have arrived in an account.

Webhook Request Body

Request Body: Pix Received
{
"webhook_type": "baas.pix_transfer.incoming_pix",
"webhook_datetime": "2021-10-22T20:30:23.459Z",
"data": {
"pix_transfer_key": "8cb70dea-9fb0-4a68-9572-99a72849c8d6",
"end_to_end_id": "E18236120202308111235s14fddf2801",
"pix_transfer_status": "received",
"account_key": "7c5a1425-73eb-420e-b4fb-0ce3386c7d0c",
"receiver_conciliation_id": "745c28c780bc4822bbade86dd875d10b",
"transfer_amount": 126.97,
"fee_amount": 0.0,
"source_account": {
"account_branch": "0001",
"account_digit": "3",
"account_number": "12345678",
"owner_document_number": "***02502000***",
"owner_person_type": "legal",
"owner_name": "Qi Tech",
"account_type": "checking_account",
"ispb": "32402502"
},
"pix_transfer_type": "dynamic_qr_code",
"pix_message": "pix message received",
"created_at": "2021-10-22T20:30:23.459Z",
"reversals": []
}
}

Webhook Body Param

FieldTypeDescriptionMax. Characters
webhook_typestringAn enumerator that defines the type of event being reported23
webhook_datetimestringDate and time the webhook was sent20
pix_transfer_typeenumeratorType of pix performedEnumerator pix_transfer_type
target_pix_keystringPix key of the account to which the transaction will be sent100
source_accountObjectDestination account - Should only be sent in transactions of type "manual"Object source_account
transfer_amountnumberTransfer amount10
receiver_conciliation_idstringReceiver's conciliation identification35
end_to_end_idstringIdempotency key of a Pix transaction - should only be sent if the transfer type is "key"32
pix_messagestringMessage to be sent along with the Pix transfer140
fee_amountnumberTransfer amount10
pix_transfer_statusstringPix transaction status10
account_keystringUnique identification key of the QI account36
pix_transfer_keystringUnique identification key of the Pix transfer36

Enumerator pix_transfer_type

EnumeratorDescription
manualPix using the destination account details
keyPix using a pix key
static_qr_codePix using a static QR code
dynamic_qr_codePix using a dynamic QR code
reversalPix refund

Object source_account

FieldTypeDescriptionCharacters
account_branch *stringBranch of the account6
account_digit *stringAccount digit1
account_number *stringAccount number20
owner_document_number *stringCPF or CNPJ (numbers only) of the account holder14
owner_namestringName of the account holder150
account_type *enumeratorType of accountEnumerator account_type
ispb *stringEight-digit code that identifies banks in the Central Bank's reserve transfer system8

Enumerator account_type

EnumeratorDescription
checking_accountConta Corrente
salary_accountConta Salário
saving_accountConta Poupança
payment_accountConta de Pagamentos

Webhook for Pix Refunds

A webhook that will notify about Pix refunds that have arrived in an account.

Webhook Request Body

Request Body: Pix Received
{
"webhook_type": "baas.pix_transfer.incoming_pix",
"webhook_datetime": "2021-10-22T20:30:23.459Z",
"data": {
"pix_transfer_key": "8cb70dea-9fb0-4a68-9572-99a72849c8d6",
"end_to_end_id": "E18236120202308111235s14fddf2801",
"pix_transfer_status": "received",
"account_key": "7c5a1425-73eb-420e-b4fb-0ce3386c7d0c",
"receiver_conciliation_id": "745c28c780bc4822bbade86dd875d10b",
"transfer_amount": 126.97,
"fee_amount": 0.0,
"source_account": {
"account_branch": "0001",
"account_digit": "3",
"account_number": "12345678",
"owner_document_number": "***02502000***",
"owner_person_type": "legal",
"owner_name": "Qi Tech",
"account_type": "checking_account",
"ispb": "32402502"
},
"pix_transfer_type": "reversal",
"pix_message": "pix message received",
"created_at": "2021-10-22T20:30:23.459Z",
"reversals": [],
"original_outgoing_pix_transfer": "b56862c4-2b20-4057-8063-b8809866e494"
}
}

Webhook Body Param

FieldTypeDescriptionMax. Characters
webhook_typestringAn enumerator that defines the type of event being reported23
webhook_datetimestringDate and time the webhook was sent20
pix_transfer_typeenumeratorType of pix performedEnumerator pix_transfer_type
target_pix_keystringPix key of the account to which the transaction will be sent100
source_accountObjectDestination account - Should only be sent in transactions of type "manual"Object source_account
transfer_amountnumberTransfer amount10
receiver_conciliation_idstringReceiver's conciliation identification35
end_to_end_idstringIdempotency key of a Pix transaction - should only be sent if the transfer type is "key"32
pix_messagestringMessage to be sent along with the Pix transfer140
fee_amountnumberTransfer amount10
pix_transfer_statusstringPix transaction status10
account_keystringUnique identification key of the QI account36
pix_transfer_keystringUnique identification key of the Pix transfer36
original_outgoing_pix_transferstringUnique identification key of the original outbound Pix transfer36

Enumerator pix_transfer_type

EnumeratorDescription
manualPix using the destination account details
keyPix using a pix key
static_qr_codePix using a static QR code
dynamic_qr_codePix using a dynamic QR code
reversalPix refund

Object source_account

FieldTypeDescriptionCharacters
account_branchstringBranch of the account6
account_digitstringAccount digit1
account_numberstringAccount number20
owner_document_numberstringCPF or CNPJ (numbers only) of the account holder14
owner_namestringName of the account holder150
account_typeenumeratorType of accountEnumerator account_type
ispbstringEight-digit code that identifies banks in the Central Bank's reserve transfer system8

Enumerator account_type

EnumeratorDescription
checking_accountConta Corrente
salary_accountConta Salário
saving_accountConta Poupança
payment_accountConta de Pagamentos