Pular para o conteúdo principal

TED

Realizar TED

O recebimento de uma transação TED não é instantânea no sistema financeiro nacional. Ao realizar uma transação TED no sistema QI uma resposta imediata será retornada informando erro, rejeição ou aceite da transferencia. Mesmo que uma transferência tenha sido colocada em sent, a Instituição Financeira recebedora pode recusar a entrada de recurso e realizar a devolução do valor. Neste caso um novo webhook com status de rejected será enviado e o motivo da rejeição retornado no campo refusal_reason.

Débitos na conta fonte da transação serão realizados imediatamente. Isso não significa que o valor foi creditado na conta destino devido aos princípios de transações TED descritos acima. Caso ocorra a rejeição da transação enviada, o valor da transação será creditado novamente à conta fonte.

Request

ENDPOINT
/account/ACCOUNT_KEY/ted
MÉTODO
POST
Request Body
{
"target_account": {
"account_branch": "0001",
"account_number": "92796",
"account_digit": "1",
"owner_document_number": "23599885000192",
"owner_name": "Titular da Conta",
"ispb": "12345678",
"account_type": "checking_account"
},
"transaction_amount": 8.86,
"request_control_key": "048c8ee5-1c91-46a6-952e-7e5c27c21f20"
}

BODY PARAMS

CampoTipoDescriçãoCaracteres
request_control_key *stringChave única de identificação da request utilizada pelo cliente no formato uuid v4.36
target_account *objectConta de destinoObjeto target_account
transaction_amount *floatValor da transferência10

Objeto target_account

CampoTipoDescriçãoCaracteres
account_branch *stringAgência.4
account_digit *stringDígito da conta1
account_number *stringNúmero da conta.20
owner_document_number *stringCPF ou CNPJ (apenas números) do titular da conta.14
owner_name *stringNome do titular da conta.50
account_type*stringTipo da conta.Enumerador account_type
ispb *stringBase no CNPJ da instituição financeira (8 dígitos).8

Enumerador account_type

EnumeradorTradução
checking_accountconta corrente
deposit_accountconta depósito
guaranteed_accountconta de garantia
investment_accountconta de investimento
payment_accountconta de pagamento
saving_accountconta poupança

Response

STATUS
201
Response Body
{
"request_control_key": "6e290347-330d-4b3a-8ebb-2ac217ad6eb3",
"ted_key": "8cb70dea-9fb0-4a68-9572-99a72849c8d6",
"created_at": "2021-10-22T20:30:23.459Z",
"ted_status": "sent",
"transaction_amount": 126.97,
"fee_amount": 0.0,
"transaction_key": "8ea90347-330d-4b3a-8ebb-2ac217ad6eb3"
}
STATUS
4xx
Response Body: Error
{
"title": "titulo",
"description": "description in English",
"translation": "descrição em portugues",
"code": "codigo",
"extra_fields": {}
}
Código HTTP
status
Código QI
code
Título
title
Descrição (eng)
description
Descrição (ptbr)
translation
400QIT000001Bad RequestSchema ErrorErro de Schema
400TED000XXXrequest_control_key must be a valid uuid v4 stringrequest_control_key was not accepted for not being a valid uuid v4 stringrequest_control_key não foi aceito por não ser uma palavra uuid v4 válida
400TED000XXXInvalid Transaction AmountTransaction amount of {transaction_amount} is not valid. It must be a positive value with at maximum 2 decimal placesO valor de transação {transaction_amount} não é válido. Deve ser um valor positivo com no máximo duas casas decimais
404TED000XXXAccount not foundAccount not found for: {account_datum}Conta não encontrada para: {account_datum}
400TED000XXXAccount is ClosedAccount {account_key} is closed.Conta {account_key} está fechada.
400TED000XXXAccount is BlockedAccount {account_key} is blocked.Conta {account_key} está bloqueada.
403TED000XXXUser is not allowed to do this transactionUsuário não tem autorização para fazer essa transação
400TED000XXXTarget Account may not receive resourcesTarget account is currently unavailable o receive resorsesConta destino está impedida de receber recursos
400TED000XXXBad RequestInsufficient account balance for transfer and fee amount.Saldo de conta insuficiente para a transferência e a taxa.
400TED000XXXBad RequestBilling account closed or blockedConta de cobrança encerrada ou bloqueada
400TED000XXXBad RequestInsufficient billing account balance for fee.Saldo de conta de cobrança insuficiente para a taxa.
400TED000XXXBad RequestTransaction amount is over limit.O total da transferência é superior ao limite.
400TED000XXXBad RequestInsufficient account balance for transfer and fee amount.Saldo de conta insuficiente para a transferência e a taxa
400TED000XXXBad Requestrequest_control_key {request_control_key} already in userequest_control_key {request_control_key} já utilizada
400TED000XXXInvalid Target Account NumberTarget account number is invalidNúmero da conta de destino é inexistente ou inválido
400TED000XXXInvalid Target Account Document NumberTarget account document is invalidNúmero de documento enviado é inválido
400TED000XXXUnrelated Beneficiary Document NumberTarget account document is not the same as sentNúmero de documento da conta de destino diferente do enviado
400TED000XXXBlocked Target AccountTarget account is blocked.A conta de destino encontra-se bloqueada.
400TED000XXXClosed Target AccountTarget account is closed.A conta de destino encontra-se encerrada.
400TED000XXXRejected Payment OrderTransaction refused by targetTransação rejeitada por recebedor.

Consultar Transação TED

Request

ENDPOINT
/account/ACCOUNT_KEY/ted/TED_KEY/TED_DIRECTION
MÉTODO
GET

Request Path Params

CampoTipoDescriçãoCaracteres
ted_direction *stringFiltro para indicar se uma transação é de entrada ou saída.Enumerador ted_direction
account_key *uuidv4Chave única de identificação da conta QI36
ted_key *uuidv4Chave única de identificação da transferência TED36

Enumeradores ted_direction

EnumeradorTradução
incomingentrada
outgoingsaída
Atenção

Será apenas permitida a visualização de uma transferência caso o requisitante tenha permissões na conta de saída da transação para o caso da ted_direction de outgoing ou tenha permissões na conta de entrada da transação para o caso da ted_direction de incoming. Caso o contrário um erro de não encontrado será retornado.

Response

STATUS
200
Response Body: Transferência Rejeitada (outgoing)
{
"request_control_key": "6e290347-330d-4b3a-8ebb-2ac217ad6eb3",
"ted_key": "8cb70dea-9fb0-4a68-9572-99a72849c8d6",
"account_key": "fc6862c4-2b20-4057-8063-b8809866e494",
"created_at": "2021-10-22T20:30:23.459Z",
"ted_status": "rejected",
"transaction_amount": 126.97,
"fee_amount": 0.0,
"target_account": {
"account_branch": "0001",
"account_digit": "6",
"account_number": "78340",
"ispb": "12345678",
"owner_document_number": "32402502000135",
"owner_name": "QI Tech"
},
"refusal_reason": {
"refusal_code": 1,
"enumerator": "conta_destinatario_encerrada",
"description": "Conta Destinatária do Crédito Encerrada"
}
}
Response Body: Transferência Enviada (outgoing)
{
"request_control_key": "6e290347-330d-4b3a-8ebb-2ac217ad6eb3",
"ted_key": "8cb70dea-9fb0-4a68-9572-99a72849c8d6",
"account_key": "fc6862c4-2b20-4057-8063-b8809866e494",
"created_at": "2021-10-22T20:30:23.459Z",
"ted_status": "sent",
"transaction_amount": 126.97,
"fee_amount": 0.0,
"target_account": {
"account_branch": "0001",
"account_digit": "6",
"account_number": "78340",
"ispb": "12345678",
"owner_document_number": "32402502000135",
"owner_name": "QI Tech"
},
"refusal_reason": {}
}
Response Body: Transferência Recebida (incoming)
{
"request_control_key": "6e290347-330d-4b3a-8ebb-2ac217ad6eb3",
"ted_key": "8cb70dea-9fb0-4a68-9572-99a72849c8d6",
"account_key": "fc6862c4-2b20-4057-8063-b8809866e494",
"created_at": "2021-10-22T20:30:23.459Z",
"ted_status": "received",
"transaction_amount": 126.97,
"fee_amount": 0.0,
"source_account": {
"account_branch": "0001",
"account_digit": "6",
"account_number": "78340",
"ispb": "12345678",
"owner_document_number": "32402502000135",
"owner_name": "QI Tech"
},
"refusal_reason": {}
}
STATUS
4xx
Response Body: Error
{
"title": "titulo",
"description": "description in English",
"translation": "descrição em portugues",
"code": "codigo",
"extra_fields": {}
}
Código HTTP
status
Código QI
code
Título
title
Descrição (eng)
description
Descrição (ptbr)
translation
404TED000XXXOutgoing TED Not FoundTed key {ted_key} was not foundTransferência Ted de saída com chave {ted_key} não foi encontrada.
404TED000XXXIncoming TED Not FoundTed key {ted_key} was not foundTransferência Ted de entrada com chave {ted_key} não foi encontrada.

Consultar Transações TED

Request

ENDPOINT
/account/ACCOUNT_KEY/teds
MÉTODO
GET

Path Params

CampoTipoDescriçãoCaracteres
account_key *uuidv4Chave única de identificação da conta QI36

Query Params

CampoTipoDescriçãoCaracteres
ted_directionenumeratorIndicador do sentido da transação (entrada ou saída). Caso não seja enviado, outgoing será consideradoEnumeradores ted_transfer_direction
request_control_keyuuidv4Chave única de identificação da request utilizada pelo cliente.36
date_fromstringData inicial. Formato "YYYY-MM-DD"
date_tostringData final. Formato "YYYY-MM-DD"
pageintegerNúmero da página requisitada. 1 por padrão
page_sizeintegerTamanho da página requisitada na consulta. 30 por padrão e valor máximoValor máximo de 30

Enumeradores ted_transfer_direction

EnumeradorDescrição
incomingTransferência TED de entrada
outgoingTransferência TED de saída

Response

STATUS
201
Response Body
{
"data": [
{
"request_control_key": "6e290347-330d-4b3a-8ebb-2ac217ad6eb3",
"ted_key": "8cb70dea-9fb0-4a68-9572-99a72849c8d6",
"account_key": "fc6862c4-2b20-4057-8063-b8809866e494",
"created_at": "2021-10-22T20:30:23.459Z",
"ted_status": "sent",
"transaction_amount": 126.97,
"fee_amount": 0.0,
"target_account": {
"account_branch": "0001",
"account_digit": "6",
"account_number": "78340",
"ispb": "12345678",
"owner_document_number": "32402502000135",
"owner_name": "QI Tech"
},
"refusal_reason": {}
}
],
"pagination": {
"current_page": 1,
"rows_per_page": 30
}
}

Webhook após finalização de envio de TED

Webhook informará caso uma transação TED tenha sido devolvida.

Webhook Request Body

Webhook Body: TED Rejeitada
{
"webhook_type": "baas.ted.outgoing_ted",
"webhook_datetime": "2021-10-22T20:30:23.459Z",
"data": {
"request_control_key": "6e290347-330d-4b3a-8ebb-2ac217ad6eb3",
"ted_key": "8cb70dea-9fb0-4a68-9572-99a72849c8d6",
"account_key": "fc6862c4-2b20-4057-8063-b8809866e494",
"created_at": "2021-10-22T20:30:23.459Z",
"ted_status": "sent",
"transaction_amount": 126.97,
"fee_amount": 0.0,
"target_account": {
"account_branch": "0001",
"account_digit": "6",
"account_number": "78340",
"ispb": "12345678",
"owner_document_number": "32402502000135",
"owner_name": "QI Tech"
},
"refusal_reason": {
"refusal_code": 1,
"enumerator": "conta_destinatario_encerrada",
"description": "Conta Destinatária do Crédito Encerrada"
}
}
}

Webhook Body Param

CampoTipoDescriçãoMax. Caracteres
webhook_typestringUm enumerador que define o tipo de evento sendo reportado23
webhook_datetimestringData e hora do envio do webhook20
request_control_keystringChave única de identificação da request utilizada pelo cliente no formato uuid v436
ted_keystringChave única de identificação da transferência TED36
created_atstringData e hora de criação da transação24
ted_statusstringStatus da transação TEDEnumerador ted_status
transaction_amountnumberValor da transferência10
fee_amountnumberValor da taxca cobrada pela transferencia35
target_accountObjectConta destino - Só deve ser enviada em transações do tipo "manual"Objeto target_account
refusal_reasonObjectMotivo da recusa de acordo com o padrão do Banco CentralObjeto refusal_reason

Enumerador ted_status

EnumeradorDescrição
sentTransferência TED realizada com sucesso.
pendingTransferência TED pendente.
rejectedTransferência TED rejeitada.
returnedTransferência TED devolvida.

Objeto target_account

CampoTipoDescriçãoCaracteres
account_branch *stringAgência.4
account_digit *stringDígito da conta1
account_number *stringNúmero da conta.20
owner_document_number *stringCPF ou CNPJ (apenas números) do titular da conta.14
owner_name *stringNome do titular da conta.50
account_type*stringTipo da conta.Enumerador account_type
ispb *stringBase no CNPJ da instituição financeira (8 dígitos).8

Objeto refusal_reason

CampoTipoDescriçãoCaracteres
bacen_code *stringCódigo de recusa Bacen3
enumerator *stringEnumerador da recusa Bacen100
description *stringDescrição da recusa Bacen100

Enumerador account_type

EnumeradorTradução
checking_accountconta corrente
deposit_accountconta depósito
guaranteed_accountconta de garantia
investment_accountconta de investimento
payment_accountconta de pagamento
saving_accountconta poupança

Webhook após o recebimento de TED

Webhook informará sobre o status final da transação TED.

Webhook Request Body

Request Body: TED Recebida
{
"webhook_type": "baas.ted.incoming_ted",
"webhook_datetime": "2021-10-22T20:30:23.459Z",
"data": {
"request_control_key": "6e290347-330d-4b3a-8ebb-2ac217ad6eb3",
"ted_key": "8cb70dea-9fb0-4a68-9572-99a72849c8d6",
"account_key": "fc6862c4-2b20-4057-8063-b8809866e494",
"created_at": "2021-10-22T20:30:23.459Z",
"ted_status": "received",
"transaction_amount": 126.97,
"fee_amount": 0.0,
"source_account": {
"account_branch": "0001",
"account_digit": "6",
"account_number": "78340",
"ispb": "12345678",
"owner_document_number": "32402502000135",
"owner_name": "QI Tech"
},
"refusal_reason": {}
}
}

Webhook Body Param

CampoTipoDescriçãoMax. Caracteres
webhook_typestringUm enumerador que define o tipo de evento sendo reportado23
webhook_datetimestringData e hora do envio do webhook20
ted_keystringChave única de identificação da transferência TED36
created_atstringData e hora de criação da transação100
ted_statusstringStatus da transação TEDEnumerador ted_status
transaction_amountnumberValor da transferência10
fee_amountnumberValor da taxca cobrada pela transferencia35
target_accountObjectConta destino - Só deve ser enviada em transações do tipo "manual"Objeto target_account
refusal_reasonObjectMotivo da recusa de acordo com o padrão do Banco CentralObjeto refusal_reason

Enumerador ted_status

EnumeradorDescrição
receivedTransferência TED realizada com sucesso.
pendingTransferência TED pendente.
rejectedTransferência TED rejeitada.

Objeto target_account

CampoTipoDescriçãoCaracteres
account_branch *stringAgência.10
account_digit *stringDígito da conta10
account_number *stringNúmero da conta.10
owner_document_number *stringCPF ou CNPJ (apenas números) do titular da conta.14
owner_name *stringNome do titular da conta.50
account_type*stringTipo da conta.Enumerador account_type
ispb *stringBase no CNPJ da instituição financeira (8 dígitos).8

Objeto refusal_reason

CampoTipoDescriçãoCaracteres
bacen_code *stringCódigo de recusa Bacen3
enumerator *stringEnumerador da recusa Bacen100
description *stringDescrição da recusa Bacen100

Enumerador account_type

EnumeradorTradução
checking_accountconta corrente
deposit_accountconta depósito
guaranteed_accountconta de garantia
investment_accountconta de investimento
payment_accountconta de pagamento
saving_accountconta poupança