Validar cartão em carteira digital
Introdução
Este guia explica como validar uma cartão em carteira digitai através da API REST.
Como usar?
Faça uma requisição POST para o endpoint /wallet/transactions/pre-approved
Com o token de acesso válido, faça uma requisição para o endpoint (POST/wallet/transactions/pre-approved) enviando seguintes parâmetros:
{
"identity": {
"key": "cpf",
"value": "CPF_DO_TITULAR"
},
"company": "ID_DA_EMPRESA",
"redirectUrl": "URL",
"card": {
"binDigits": "6_OU_8_PRIMEIROS_DIGITOS_CARTAO",
"lastDigits": "4_ULTIMOS_DIGITOS_CARTAO",
"expirationDate": "DATA_VALIDADE_CARTAO",
"name": "NOME_DO_TITULAR"
}
}
O campo identity.value precisa ser do dono do cartão de crédito. O campo company é fornecido pela Unico. O campo redirectUrl é usado para que ao final do fluxo (webview) a pessoa seja redirecionada para o endereço desejado. Esse campo é opcional.
O campo name deve ser enviado o nome correto e tomar cuidado com problemas de encode, valores incorretos e/ou inválidos podem ocasionar problemas com aprovação no fluxo. Já que esse dado é utilizado na experiência e na comunicação com o usuário final.
O campo expirationDate também é opcional.
Os demais campos são de preenchimento obrigatório.
Com tudo certo na requisição, a resposta de retorno é um JSON contendo o o ID da transação, o status da transação, um token que pode ser usado no iFrame e o link da captura como a seguir:
{
"id": "6ab1771e-dfab-4e47-8316-2452268e5481",
"status": "waiting",
"link": "https://aces.so/teste",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"
}
Caso a pré-aprovação realizada decida que não é necessário realizar a captura da biometria, a resposta de retorno terá um status diferente e não será gerado um link para a captura, como a seguir:
{
"id": "6ab1771e-dfab-4e47-8316-2452268e5481",
"status": "fast-inconclusive"
}
Caso algum erro aconteça, a resposta de retorno é um JSON contendo o erro e o código do erro:
{
"error": {
"code": "40004",
"description": "transaction id is invalid"
}
}
A seguir uma lista dos possíveis erros retornados pelo serviço:
HTTP Code | Código | Descrição | Motivo |
---|---|---|---|
400 | 40001 | error decoding json | Os dados enviados não condizem com o contrato do serviço |
400 | 40002 | error validating json | Alguma informação está mal formatada ou não foi preenchida |
403 | 40301 | not allowed | O usuário não tem permissão para fazer tal ação |
404 | 40404 | company not found | A empresa informada não existe |
429 | 40001 | too many requests | Ratelimit atingido |
500 | 50001 | internal error | Falha interna no serviço |
Dúvidas?
Não encontrou algo ou ainda precisa de ajuda? Se já é um cliente ou parceiro, pode entrar em contato através da Central de Ajuda.