Request batch Pix transaction scheduling
QI Tech offers the possibility to perform multiple scheduled pix transactions with a single call. In this system, schedules are made asynchronously. If a http status 4xx is returned on the initial call, none of the schedules will be executed. After the request, the integrator partner will receive a webhook for each pix_schedule rejected at the time of creation.
Request
ENDPOINT
/account/ACCOUNT_KEY/pix_schedule_batch
METHOD
POST{
"request_control_key": "6e4fc980-f8a1-4462-b6e2-d8a49f0ac055",
"pix_schedules": [
{
"request_control_key": "b6804f32-101e-4702-8fbc-c2dbc4c2caec",
"pix_transfer_type": "key",
"target_pix_key": "target_pix_key@email.com",
"transaction_amount": 500.65,
"end_to_end_id": "E73856642202309201429bZKfklNlbwu",
"pix_message": "Ola Mundo",
"schedule_date": "2024-12-01"
},
{
"request_control_key": "c6804f35-101e-4702-8fbc-c2dbc4c2caea",
"pix_transfer_type": "manual",
"target_account": {
"account_branch": "0001",
"account_digit": "3",
"account_number": "12345678",
"owner_document_number": "32402502000135",
"owner_name": "Qi Tech",
"account_type": "checking_account",
"ispb": "32402502"
},
"transaction_amount": 500.65,
"pix_message": "Ola Mundo",
"schedule_date": "2024-12-01"
},
{
"request_control_key": "a6804f42-101e-4702-8fbc-c2dbc4c2caed",
"pix_transfer_type": "static_qr_code",
"transaction_amount": 500.65,
"end_to_end_id": "E73856642202309201429bZKfklNlbwu",
"receiver_conciliation_id": "REC00000000000000000000009459463343",
"target_pix_key": "target_pix_key@email.com",
"pix_message": "Ola Mundo"
}
]
}
Path Params
Field | Type | Description | Characters |
---|---|---|---|
account_key | uuidv4 | Unique account identification key. | 36 |
Body Params
Field | Type | Description | Characters |
---|---|---|---|
request_control_key * | uuidv4 | Unique identification key for the request used by the client in uuid v4 format. | 36 |
pix_schedules * | array | List of pix_schedule objects linked to the batch. | list of Object pix_schedule |
Object pix_schedule
Field | Type | Description | Characters |
---|---|---|---|
request_control_key * | uuidv4 | Unique identification key for the request used by the client in uuid v4 format. | 36 |
pix_transfer_type * | enumerator | Type of Pix transfer. | Enumerator pix_transfer_type |
target_pix_key | string | Pix key of the account to which the transaction will be sent. | 100 |
receiver_conciliation_id | string | Reconciliation ID of the receiver. | 35 |
target_account * | Object | Destination account - Should only be sent for transfers with pix_transfer_type of type manual. | Object target_account |
transaction_amount * | number | Transfer amount. | 10 |
end_to_end_id | string | Idempotency key for a Pix transaction within the SPI (Instant Payment System). This key is returned in Pix key queries. Should only be sent if pix_transfer_type is key, static_qr_code, or dynamic_qr_code. | 32 |
pix_message | string | Message to be sent along with the Pix transfer. | 140 |
Object target_account
Field | Type | Description | Characters |
---|---|---|---|
account_branch * | string | Account branch. | 6 |
account_digit * | string | Account digit. | 1 |
account_number * | string | Account number. | 20 |
owner_document_number * | string | CPF or CNPJ (numbers only) of the account holder. | 14 |
owner_name * | string | Name of the account holder. | 150 |
account_type * | enumerator | Account type. | Enumerator account_type |
ispb * | string | Based on the CNPJ of the financial institution (8 digits). | 8 |
Enumerator account_type
Enumerator | Description |
---|---|
checking_account | Checking Account |
salary_account | Salary Account |
saving_account | Savings Account |
payment_account | Payment Account |
Enumerator pix_transfer_type
Enumerator | Description |
---|---|
manual | Pix using destination account details. Must send target_account . |
key | Pix using a pix key. Must send target_pix_key . Recommended to send end_to_end_id from the pix key query if previously performed |
static_qr_code | Pix using a static QR code. Must send the end_to_end_id returned in the QR code decode |
dynamic_qr_code | Pix using a dynamic QR code. Must send the end_to_end_id returned in the QR code decode |
Response
STATUS
201Response Body: Batch Schedule Approved
{
"request_control_key": "b6804f32-101e-4702-8fbc-c2dbc4c2caec",
"schedule_batch_key": "8cb70dea-9fb0-4a68-9572-99a72849c8d6",
"schedule_batch_status": "approved",
"created_at": "2021-10-22T20:30:23.459Z"
}
Enumerador schedule_batch_status
Enumerator | Description |
---|---|
created | Batch schedule created |
approved | Batch schedule approved |
rejected | Batch schedule rejected |
pending_2fa_approval | Batch schedule pending two-factor authentication approval |
STATUS
4xxResponse Body: Error
{
"title": "titulo",
"description": "description in English",
"translation": "description in portuguese",
"code": "codigo",
"extra_fields": {}
}
HTTP Codestatus | QI Codecode | Titletitle | Description (eng)description | Description (ptbr)translation |
---|---|---|---|---|
400 | QIT000001 | Bad Request | schema error description | Schema Inválido |
404 | PSC000001 | Account not Found | Account was not found | Conta não encontrada |
406 | PSC000002 | Invalid Uuid | key was not accepted for not being a valid uuid v4 string | key não foi aceito por não ser uma palavra uuid v4 válida |
400 | PSC000003 | Bad Request | pix_message can not be longer than 140 characters | pix_message não pode ser maior que 140 caracteres |
400 | PSC000004 | Bad Request | Emoji not allowed in pix message | Emoji não é permitido na mensagem pix |
406 | PSC000005 | Invalid Transaction Amount | Transaction amount of transaction_amount is not valid. It must be a positive value with at maximum 2 decimal places | O valor de transação transaction_amount não é válido. Deve ser um valor positivo com no máximo duas casas decimais |
406 | PSC000006 | Invalid end_to_end_id | The end_to_end_id sent end_to_end_id is not valid | O end_to_end_id enviado end_to_end_id não é válido |
400 | PSC000007 | Invalid date format | Dates must be sent using format YYYY-MM-DD | Datas devem ser enviadas no formato YYYY-MM-DD |
400 | PSC000008 | Invalid Schedule Date | Schedule date must be after current date for UTC-3 | Data de agendamento deve ser após a data atual em UTC-3 |
400 | PSC000009 | Account is Closed | Account is closed | Conta está fechada |
400 | PSC000010 | Account is Blocked | Account is blocked | Conta está bloqueada |
422 | PSC000011 | Invalid Account Type | Pix is not yet implemented for non-checking or non-escrow account types | Transações Pix não estão implementadas para conta que não sejam escrow ou livres |
403 | PSC000012 | User is not allowed to do this transaction | User is not allowed to do this transaction | Usuário não tem autorização para fazer essa transação |
400 | PSC000013 | Bad Request | For Manual Pix Transfer Type a target account must be provided | Para transação pix do tipo manual, uma conta destino deve ser fornecida |
404 | PSC000014 | Inquiry Not Found | Pix key inquiry was not found | Pesquisa de chave pix não encontrada |
400 | PSC000015 | Bad Request | Pix key sent does match inquiry pix key. Verify if end_to_end_id sent is correct | Chave Pix enviada não condiz com consulta. Verifique se end_to_end_id enviado está correto |
404 | PSC000016 | Account not found | Nonexistent account in destination financial institution | Conta inexistente na instituição financeira de destino |
400 | PSC000017 | Target Account and Source Account must be different | Target Account must not be the same as Source Account | A conta de destino não pode ser a mesma da conta de origem |
409 | PSC000018 | Bad Request | request_control_key request_control_key already in use | request_control_key request_control_key já utilizada |
400 | PSC000019 | Invalid Target | Account does not have permission to transfer to the given target account | A conta não possui permissão para realizar transferências para a conta enviada |
404 | PSC000020 | Decode Inquiry Not Found | QR Code decode inquiry not found | Pesquisa e decodificação de QR code não encontrada |
400 | PSC000021 | Bad Request | Receiver Conciliation Id sent does match decode inquiry receiver_conciliation_id. Verify if end_to_end_id sent is correct | Identificador de transação enviado não condiz com consulta. Verifique se end_to_end_id enviado está correto |
400 | PSC000022 | Bad Request | Dynamic Instant QR codes cannot be scheduled for payment | Pagamentos de vencimento instantâneo não podem ter pagamento agendado |
400 | PSC000023 | Bad Request | Schedule Date sent is after max payment date for target qr code | Data de agendamento enviada é após a data máxima de pagamento para o qr code enviado |
400 | PSC000024 | Bad Request | Pix transfer type sent does match decode inquiry qr code type. Verify if end_to_end_id sent is correct | Tipo de transação pix enviado enviado não condiz com tipo de qr code da consulta. Verifique se end_to_end_id enviado está correto |
400 | PSC000040 | Empty pix-schedule list received | A list of pix schedules must be provided | Uma lista de agendamentos pix deve ser fornecida |
409 | PSC000041 | Bad Request | One or more request_control_key already in use | Uma ou mais request_control_key já está sendo utilizada |
403 | PSC000045 | Requester not allowed to access this endpoint | Requester has no permission to perform pix transfers on this endpoint | Requester não possui permissão de realizar transações pix através deste endpoint |