# Onboarding de cartão de crédito

### Antes de começar <a href="#antes-de-comecar" id="antes-de-comecar"></a>

Suas requisições de API são autenticadas utilizando um **access-token**. Qualquer requisição que não inclua um access-token válido retornará um erro.

Você pode ver mais sobre como gerar um access-token [<mark style="color:blue;">**aqui**</mark>](https://devcenter.unico.io/unico-idpay/integracao/autenticacao).

{% hint style="info" %}

#### **Base URL**: <a href="#endpoints" id="endpoints"></a>

* UAT: <mark style="color:blue;">`https://transactions.transactional.uat.unico.app/api/public/v1`</mark>;
* Produção: <mark style="color:blue;">`https://transactions.transactional.unico.app/api/public/v1`</mark>.
  {% endhint %}

## Validação do cartão de crédito&#x20;

{% hint style="warning" %}
**Importante**

* É possível realizar o "Onboarding do cartão de crédito" solicitando a selfie do usuário final e realizando todo o cadastro OU reutilizar as capturas biométricas dos processos de outros produtos da plataforma Unico IDCloud:
  * Para reutilizar os processos gerados pelos outros produtos da plataforma Unico IDCloud você deve informar o ID do processo de referencia no campo `additionalInfo.processID`;
  * Os processos de referência que serão utilizados devem ter sido concluídos em no máximo 1 hora.
    {% endhint %}

## Validar cartão de crédito

> Endpoint para validar cartão de crédito.

```json
{"openapi":"3.0.0","info":{"title":"Criar Transação de Crédito API","version":"1.0.0"},"servers":[{"url":"https://transactions.transactional.uat.unico.app/api/public/v1"}],"paths":{"/walletid/transaction":{"post":{"summary":"Validar cartão de crédito","description":"Endpoint para validar cartão de crédito.","parameters":[{"name":"Authorization","in":"header","required":true,"description":"Access-token válido. O valor deve ser enviado no formato Bearer {token}\".","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["identity","orderNumber","company","card"],"properties":{"identity":{"type":"object","description":"Dados de identificação do usuário.","required":["key","value"],"properties":{"key":{"type":"string","description":"Tipo de chave de identificação do usuário."},"value":{"type":"string","description":"Valor da chave de identificação do usuário."}}},"orderNumber":{"type":"string","description":"Número associado ao onboarding. É o dado que será utilizado como indexador no portal e você pode utilizar como forma de associação (foreign key) entre seu sistema e o IDPay."},"company":{"type":"string","description":"ID da empresa responsável pela transação. Este campo é fornecido pela Unico."},"redirectUrl":{"type":"string","description":"URL para onde o usuário será redirecionado após finalizar a transação. Valores possíveis são: Uma URL HTTPS para redirecionar páginas web ou uma URL Schema para redirecionamento em aplicações móveis nativas."},"card":{"type":"object","description":"Informações do cartão utilizado na transação.","required":["binDigits","lastDigits","name"],"properties":{"binDigits":{"type":"string","description":"8 primeiros dígitos do cartão."},"lastDigits":{"type":"string","description":"Últimos 4 dígitos do cartão."},"expirationDate":{"type":"string","description":"Data de validade do cartão."},"name":{"type":"string","description":"Nome do titular do cartão. 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."}}},"value":{"type":"number","format":"float","description":"Valor máximo assegurado."},"additionalInfo":{"type":"object","description":"Caso queira reutilizar as capturas biométricas realizadas nos outros produtos da plataforma Unico IDCloud, deve-se enviar este objeto com a propriedade: processID.","required":["processID"],"properties":{"processID":{"type":"string","description":"Processo de referência da plataforma IDCloud."}}}}}}}},"responses":{"200":{"description":"Transação criada com sucesso.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"ID da transação criada."},"status":{"type":"string","description":"Status atual da transação."},"link":{"type":"string","description":"Link relacionado à transação (este link só será retornado caso não envie o parâmetro additionalInfo.processID)."},"token":{"type":"string","description":"Token assinado que contém os parâmetros necessários para inicializar o SDK web do Unico IDPay (este token só será retornado caso não envie o parâmetro additionalInfo.processID)."}}}}}},"400":{"description":"Dados inválidos na requisição.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","description":"Código do erro."},"message":{"type":"string","description":"Detalhes do erro."}}}}}},"403":{"description":"Proibição de acesso (token inválido ou permissões insuficientes).","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","description":"Código do erro."},"message":{"type":"string","description":"Detalhes do erro."}}}}}},"404":{"description":"Recurso não encontrado.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","description":"Código do erro."},"message":{"type":"string","description":"Detalhes do erro."}}}}}},"500":{"description":"Erro interno do servidor.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","description":"Código do erro."},"message":{"type":"string","description":"Detalhes do erro."}}}}}}}}}}}
```

## Consultar status de validação

> Endpoint para consultar o status atual de uma transação específica.

```json
{"openapi":"3.0.0","info":{"title":"Consultar Transação de Wallet API","version":"1.0.0"},"servers":[{"url":"https://transactions.transactional.uat.unico.app/api/public/v1"}],"paths":{"/walletid/transactions/{transaction_id}":{"get":{"summary":"Consultar status de validação","description":"Endpoint para consultar o status atual de uma transação específica.","parameters":[{"name":"transaction_id","in":"path","required":true,"description":"ID da transação a ser consultada.","schema":{"type":"string"}},{"name":"Authorization","in":"header","required":true,"description":"Access-token válido. O valor deve ser enviado no formato Bearer {token}\".","schema":{"type":"string"}}],"responses":{"200":{"description":"Consulta realizada com sucesso.","content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"string","description":"Status atual da transação."},"hasIdentityChanged":{"type":"boolean","description":"Se houve troca de identidade na transação (opcional)."}}}}}},"400":{"description":"Dados inválidos na requisição.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","description":"Código do erro."},"message":{"type":"string","description":"Detalhes do erro."}}}}}},"403":{"description":"Proibição de acesso (token inválido ou permissões insuficientes).","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","description":"Código do erro."},"message":{"type":"string","description":"Detalhes do erro."}}}}}},"404":{"description":"Transação não encontrada.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","description":"Código do erro."},"message":{"type":"string","description":"Detalhes do erro."}}}}}},"500":{"description":"Erro interno do servidor.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","description":"Código do erro."},"message":{"type":"string","description":"Detalhes do erro."}}}}}}}}}}}
```

{% hint style="info" %}
Para ver todos os status possíveis, consulte a seção [<mark style="color:blue;">Enumerados</mark>](https://devcenter.unico.io/unico-idpay/integracao/apis/enumerados).
{% endhint %}

{% hint style="success" %}
Para otimizar a performance da sua aplicação, você também pode implementar nosso [<mark style="color:blue;">Webhook</mark>](https://devcenter.unico.io/unico-idpay/integracao/webhook) para saber quando realizar a consulta do status da transação.&#x20;
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://devcenter.unico.io/unico-idpay/integracao/apis/api-reference/onboarding-de-cartao-de-credito.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
