Transferências
No momento em que um usuário efetuar ou receber uma transferência, os dados da transferência deverão ser enviados para a QI Tech. Deste modo, será possível realizar uma análise do risco envolvido na transação, baseado naquele conjunto de dados.
Definição do Objeto de Transferência
Request Body
{
"id": "082373263",
"wire_transfer_direction": "received",
"wire_transfer_type": "ted",
"amount": 13725,
"wire_transfer_date": "2020-10-07T15:06:25-03:00",
"face_recognition_key": "ef39e206-13d5-48de-b368-6c3bbc6f0222",
"validation_key": "69a59de3-0198-4a26-933a-c1de624c147d",
"client": {
"type": "natural_person",
"id": "123456",
"document_number": "056.966.649-03",
"name": "Francisco Oliveira Benedetti",
"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"
},
"sales_channel": "inbound_sales",
"segment": "Personalité"
},
"source_account": {
"participant": "17315359",
"branch": "0000",
"account_number": "10442",
"account_digit": "6",
"owner": {
"type": "legal_person",
"document_number": "07.487.735/0001-69",
"name": "Gioconda Pizzaria e Rotisseria LTDA."
},
"account_type": "CACC",
"opening_date": "2020-01-15T18:00:00-03:00"
},
"destination_account": {
"participant": "60701190",
"branch": "3675",
"account_number": "10442",
"account_digit": "6",
"owner": {
"type": "natural_person",
"document_number": "056.966.649-03",
"name": "Francisco Oliveira Benedetti"
},
"account_type": "SLRY",
"opening_date": "2020-01-15T18:00:00-03:00"
},
"source": {
"channel": "internet_banking",
"platform": "android",
"ip": "198.185.065.098",
"session_id": "7839jdqd9a8wd9"
}
}
Uma transferência deve ser enviado para a API antes de ser encaminhada para o sistema de processamento, a fim de realizar uma validação prévia de fraude.
O status da transferência representa a decisão retornada pelo modelo sobre aquela transferência. Os seguintes status são utilizados na flag analysis_status:
automatically_approved
automatically_reproved
in_manual_analysis
pending
Abaixo estão listados os significados de cada uma das decisões, devolvida na flag analysis_status:
status | descrição |
---|---|
automatically_approved | Recomenda-se que esta transferência seja aprovada. |
automatically_reproved | Recomenda-se que esta transferência seja reprovada. |
in_manual_analysis | Recomenda-se que a transferência seja analisada manualmente por um analista. |
pending | A transferência está sendo processada. |
nome | tipo | descrição |
---|---|---|
id | string | Identificador da transação no sistema do cliente. É essencial que este número seja único para cada transferência |
wire_transfer_direction | enumerador | Modalidade da transferência cadastrada. Define se o cliente está recebendo ou enviando dinheiro. |
wire_transfer_type | enumerador | Tipo da transferência realizada, podendo ser uma TED, um DOC ou uma transferência interna entre contas da mesma instituição. |
amount | inteiro | O valor da transferência em centavos - conforme descrição da seção "Padrões". |
wire_transfer_date | datetime | A data e hora de início da transferência, com fuso horário. |
face_recognition_key | string | Chave de reconhecimento facial, caso tenha sido feito reconhecimento facial pela nossa API de reconhecimento facial. |
validation_key | string | Chave de validação, caso tenha sido feita algum teste de validação do cliente em nossa API de validações. |
client | client | Objeto que representa os dados do cliente, seja ele o cliente que está efetuando a transferência ou o recebedor. |
source_account | source_account | Objeto que representa os dados da conta debitada. |
destination_account | destination_account | Objeto que representa os dados da conta creditada. |
source | source | Objeto do tipo Source que descreve as informações provenientes da aplicação utilizada para envio da transferência |
Existem os seguintes enumeradores para wire_transfer_direction: sent
e received
.
Existem os seguintes enumeradores para wire_transfer_type: ted
, doc
, internal_transfer
.
Enviar uma Transferência
Request Body
{
"id": "12345",
...
}
Response Body
{
"wire_transfer_key": "13d680ef-4b72-4cb2-a63d-cf3d790abaaf",
"status": "automatically_approved",
"reason": "rule_decision_enum"
}
Para realizar a avaliação de uma transferência, basta enviar um objeto do tipo Wire Transfer ao seguinte endpoint:
POST https://api.caas.qitech.app/wire_transfer/wire_transfer
Recuperar uma Transferência
Response Body
{
"id": "082373263",
"wire_transfer_direction": "received",
...
}
Para recuperar os dados de uma transferência, basta enviar uma requisição ao seguinte endpoint:
GET https://api.caas.qitech.app/wire_transfer/wire_transfer/{wire_transfer_id}
Onde wire_transfer_id é o identificador da transação no sistema do cliente utilizado no envio da transferência.
Atualizar uma transferência
Request Body
{
"wire_transfer_status": "completed",
"event_date": "2020-10-07T15:06:25-03:00"
}
Response Body
{
"wire_transfer_key": "13d680ef-4b72-4cb2-a63d-cf3d790abaaf",
"wire_transfer_status": "completed"
}
Após uma transferência ser criada e analisada, ela será enviado à câmara de compensação para ser processada. Deste modo, é necessário que seja informada a atualizações de status da transferência quando esta for enviada, através do endpoint:
PUT https://api.caas.qitech.app/wire_transfer/wire_transfer/{wire_transfer_id}
Deste modo, garante-se que nossa base de dados seja atualizada e sejamos capazes de identificar as transferências que estejam realmente sucetíveis a fraude.