Processos cadastrais e de autenticação de usuários são burocráticos e lentos e nós queremos te ajudar a criar fluxos com baixa fricção, onde os bons usuários são beneficiados e os fraudadores barrados. Nossa solução de documentoscopia irá te ajudar na automatização e segurança desse processo, analisando a autenticidade dos documentos neste processo e lhe fornecendo uma sugestão de decisão rápida juntamente com outros dados extraídos do documento para garantir melhor experiência para o seu cliente.
Todas as requisições submetidas à nossa API devem ser realizadas através de um token, gerado
por usuário e senha fornecidos pela ClearSale. Entre em contato com o seu consultor de vendas
para mais informações.
Na autenticação, além do token, retornamos seu tempo de expiração. É necessário que contemple
no seu desenvolvimento o gerenciamento da vida útil do token com base nesse tempo de expiração.
Só gere um novo token após a expiração do seu token atual.
POST https://documentoscopy.clearsale.com.br/api/v1/authentication HTTP/1.1
Content-Type: application/json
{
"username": "*******",
"password": "*******"
}
POST https://documentoscopy-hml.clearsale.com.br/api/v1/authentication HTTP/1.1
Content-Type: application/json
{
"username": "*******",
"password": "*******"
}
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"token": "string",
"expiresInSeconds": 18000
}
HTTP/1.1 400 Bad Request
Content-Type: application/json; charset=utf-8
{
"detail": "Invalid username and/or password. Check the field and try again",
"title": "Unauthorized access.",
"status": 401,
"instance": "/api/v1/authentication"
}
HTTP/1.1 404 NotFound
HTTP/1.1 500 InternalServerError
Através desse endpoint, será criada uma requisição de documentoscopia das imagens fornecidas. Esta requisição será executada conforme pacote contratado pela entidade junto a ClearSale, podendo conter extração de dados, análise automatizada e análise forense de mesa.
POST https://documentoscopy.clearsale.com.br/api/v1/documents HTTP/1.1
Content-Type: application/json
Authorization: Bearer {Token}
{
"identifierID": "string",
"imagesDocument": [
{
"base64": "string",
"url": "string",
"type": "string"
}
],
"services": [
0
],
"cpf": "string"
}
POST https://documentoscopy-hml.clearsale.com.br/api/v1/documents HTTP/1.1
Content-Type: application/json
Authorization: Bearer {Token}
{
"identifierID": "string",
"imagesDocument": [
{
"base64": "string",
"url": "string",
"type": "string"
}
],
"services": [
0
],
"cpf": "string"
}
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"identifierID": "7867",
"transactionID": "9d12912a-f44c-4dbf-b58b-ace31741b460",
"date": "2021-09-20T20:41:58.2317859Z"
}
HTTP/1.1 400 BadRequest
Content-Type: application/json; charset=utf-8
{
"title": "One or more validation errors occurred.",
"status": 400,
"instance": "/api/v1/documents",
"errors": {
"IdentifierId": [
"{\"code\":1,\"message\":\"The identifierID is a mandatory field.\"}"
],
"ImagesDocument": [
"{\"code\":6,\"message\":\"At least one image is required for processing.\"}"
]
}
}
HTTP/1.1 404 NotFound
HTTP/1.1 500 InternalServerError
Nome | Descrição | Tipo | Tamanho | Obrigatório |
---|---|---|---|---|
IdentifierID | ID do pedido controlado pela entidade | String | 100 | Sim |
ImagesDocument | Imagens do documento | Array | - | Sim |
Services | Serviços atribuídos à atividade | Array | - | Não * |
CPF | Cadastro de Pessoa Física | String | 11 | Não ** |
Nome | Descrição | Tipo | Tamanho | Obrigatório |
---|---|---|---|---|
Base64 | Imagem em formato BASE64 | String | - | Sim * |
Url | URL da imagem | String | - | Sim * |
Type | Tipo da imagem | String | - | Sim |
Nome | Descrição | Tipo | Tamanho |
---|---|---|---|
IdentifierID | O valor enviado na transação será retornado na resposta | String | - |
TransactionID | Identificador gerado pela ClearSale | String | 36 |
Date | Data da geração da transaction. | DateTime | 10 |
Errors | Objeto que apresenta mensagens de erro que indicam o motivo da não geração do score na requisição | String[] | - |
Sempre que ocorrer uma alteração de uma transação, o Webhook da Clearsale irá enviar uma notificação para uma URL que deverá ser implementada no lado do integrador.
Para cadastrar a URL do seu webhook, enviar um e-mail para documentoscopia@clear.sale, copiando o seu gerente de contas, informando os dados da tabela abaixo:
Nome | Descrição |
---|---|
Nome Cliente | Nome fantasia do cliente |
URL | URL que será chamada quando houver uma alteração na transação |
Token | O token informado deverá ser uma chave secreta enviada nas chamadas de Webhook, no Header "Authorization: Bearer {Token}" |
POST {URL cadastrada} HTTP/1.1
Content-Type: application/json; charset=utf-8
{
"type": 1,
"transactionId": "d5aac162-4c22-4514-9414-ebc5a8d84ef8",
"identifierId": "transaction-1",
"processStatusCode": 2,
"processStatus": "Concluído",
"statusCode": 1,
"status": "Não é possível analisar",
"subStatus": "Decisão de documentoscopia não contratada",
"receivedDate": "2022-02-22T10:57:02.56",
"endDate": "2022-02-22T10:57:02.56",
"ocr": [
{
"tag": "docNumber",
"value": "123"
},
{
"tag": "name",
"value": "João"
},
{
"tag": "fatherName",
"value": "Pedro"
},
{
"tag": "motherName",
"value": "Maria"
}
]
}
Importante: Se a URL do integrador retornar qualquer Status HTTP diferente de 200 (Ok), serão feitas outras 5 tentativas de notificar a transação em um período maximo de 10 minutos.
Nome | Descrição | Tipo | Tamanho |
---|---|---|---|
TransactionID | Identificador gerado pela ClearSale | String | 36 |
IdentifierID | Identificador enviado pela entidade | String | - |
ProcessStatusCode | Código da etapa atual do processamento da análise | Integer | - |
ProcessStatus | Descrição da etapa atual do processamento da análise | String | - |
StatusCode | Status code da análise forense do documento | Integer | - |
Status | Descrição do status da análise forense do documento | String | - |
Substatus | Descrição substus da análise forense do documento | String | - |
ReceivedDate | Data de recebimento da análise | DateTime | - |
EndDate | Da fim do processamento da análise | DateTime | - |
Ocr | Dados extraidos do documento. Retorno null quando não for possível obter os dados | Array | - |
Com o transactionID retornado na solicitação de análise do documento, você poderá consultar o resultado de uma análise de documentoscopia.
GET https://documentoscopy.clearsale.com.br/api/v1/documents/{"transactionID"} HTTP/1.1
Content-Type: application/json
Authorization: Bearer {Token}
GET https://documentoscopy-hml.clearsale.com.br/api/v1/documents/{"transactionID"} HTTP/1.1
Content-Type: application/json
Authorization: Bearer {Token}
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"type": 1,
"transactionId": "d5aac162-4c22-4514-9414-ebc5a8d84ef8",
"identifierId": "transaction-1",
"processStatusCode": 2,
"processStatus": "Concluído",
"statusCode": 1,
"status": "Não é possível analisar",
"subStatus": "Decisão de documentoscopia não contratada",
"receivedDate": "2022-02-22T10:57:02.56",
"endDate": "2022-02-22T10:57:02.56",
"ocr": [
{
"tag": "docNumber",
"value": "123"
},
{
"tag": "name",
"value": "João"
},
{
"tag": "fatherName",
"value": "Pedro"
},
{
"tag": "motherName",
"value": "Maria"
}
]
}
HTTP/1.1 404 NotFound
HTTP/1.1 500 InternalServerError
Nome | Descrição | Tipo | Tamanho | Obrigatório |
---|---|---|---|---|
TransactionID | Identificador gerado pela ClearSale | String | - | Sim |
Nome | Descrição | Tipo | Tamanho |
---|---|---|---|
TransactionID | Identificador gerado pela ClearSale | String | 36 |
IdentifierID | Identificador enviado pela entidade | String | - |
ProcessStatusCode | Código da etapa atual do processamento da análise | Integer | - |
ProcessStatus | Descrição da etapa atual do processamento da análise | String | - |
StatusCode | Status code da análise forense do documento | Integer | - |
Status | Descrição do status da análise forense do documento | String | - |
Substatus | Descrição substus da análise forense do documento | String | - |
ReceivedDate | Data de recebimento da análise | DateTime | - |
EndDate | Da fim do processamento da análise | DateTime | - |
Ocr | Dados extraidos do documento. Retorno null quando não for possível obter os dados | Array | - |
Valor | Descrição |
---|---|
0 | Em processamento |
1 | Não é possível analisar |
2 | Alto risco de fraude |
3 | Sem risco aparente |
4 | Análise não realizada |
Valor | Descrição |
---|---|
1 | Em processamento |
2 | Concluído |
3 | Erro |
Valor | Descrição |
---|---|
1 | RG |
2 | CNH |
Valor | Descrição |
---|---|
front | Frente do documento |
back | Verso do documento |
Valor | Descrição |
---|---|
1 | OCR |
2 | Análise forense |
Nome | Descrição | Tipo | Tamanho |
---|---|---|---|
Base64 | Imagem tratada em base 64 | String | - |
Type | Tipo da imagem | String | - |
Nome | Descrição | Tipo | Tamanho |
---|---|---|---|
Tag | Nome da tag | String | - |
Value | Valor da tag | String | - |
Nome | Descrição | Tipo | Tamanho |
---|---|---|---|
docNumber | Número do documento | String | - |
name | Nome no documento | String | - |
fatherName | Nome do pai | String | - |
motherName | Nome da mãe | String | - |
birthDay | Data de nascimento | String | - |
observation | Observação | String | - |
cpf | Cpf | String | - |
releaseDate | Data de emissão | String | - |
expirationDate | Data de validade | String | - |
rg | RG | String | - |
issuerAgency | Orgão emissor | String | - |
mirrorNumber | Número do espelho | String | - |
documentState | Estado de emissão | String | - |
local | Local onde o emissor vive / tirou o documento | String | - |
drivingCat | Categoria de habilitação | String | - |
firstLicense | Data da primeira habilitação | String | - |
acc | Autorização para conduzir ciclomotor | String | - |
securityCode | Código de segurança | String | - |
renachNumber | Renach | String | - |
origin | Origem do documento | String | - |
birthPlace | Naturalidade | String | - |