> ## Documentation Index
> Fetch the complete documentation index at: https://docs.acedata.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# Verificação de Dois Elementos do Cartão Bancário API Integração

> Identity Authentication API guide - Ace Data Cloud

Este documento irá apresentar uma descrição da integração da API de verificação de dois elementos do cartão bancário, que pode ser utilizada para validar a autenticidade e a consistência do nome e do número do cartão bancário.

## Processo de Solicitação

Para usar a API, é necessário primeiro acessar a página correspondente da [API de Verificação de Dois Elementos do Cartão Bancário](https://platform.acedata.cloud/documents/identity-bankcard-check-2e) para solicitar o serviço correspondente. Após entrar na página, clique no botão "Acquire", conforme mostrado na imagem:

![](https://cdn.acedata.cloud/q6ytrc.png)

Se você ainda não estiver logado ou registrado, será redirecionado automaticamente para a página de login, convidando-o a se registrar e fazer login. Após o registro e login, você será redirecionado de volta para a página atual.

Na primeira solicitação, haverá um limite gratuito disponível, permitindo o uso gratuito da API.

## Uso Básico

Primeiro, entenda a forma básica de uso, que é inserir as informações do número do cartão bancário para obter a imagem do resultado processado. Primeiro, é necessário passar um campo `bank_card`. Em seguida, podemos preencher o conteúdo correspondente na interface, conforme mostrado na imagem:

<p>
  <img src="https://cdn.acedata.cloud/u9bugq.png" width="500" className="m-auto" />
</p>

Podemos ver que aqui configuramos os Request Headers, incluindo:

* `accept`: o formato de resposta desejado, aqui preenchido como `application/json`, ou seja, formato JSON.
* `authorization`: a chave para chamar a API, que pode ser selecionada diretamente após a solicitação.

Além disso, configuramos o Request Body, incluindo:

* `bank_card`: as informações do número do cartão bancário a serem processadas, é um parâmetro obrigatório.
* `name`: o nome do usuário, é um parâmetro obrigatório.
* `encryption`: opcional, parâmetro de criptografia de campos sensíveis (caso precise enviar dados criptografados).

Após a seleção, podemos notar que o código correspondente também foi gerado à direita, conforme mostrado na imagem:

<p>
  <img src="https://cdn.acedata.cloud/yn8yxf.png" width="500" className="m-auto" />
</p>

Clique no botão "Try" para realizar o teste, como mostrado na imagem acima, e aqui obtivemos o seguinte resultado:

```json theme={null}
{
  "result": "0",
  "description": "Autenticação aprovada"
}
```

O resultado retornado possui vários campos, descritos a seguir:

* `result`, código do resultado da autenticação, a situação de cobrança é a seguinte.
  * Códigos de resultado com cobrança:
    * 0: Autenticação aprovada
    * -1: Autenticação não aprovada
    * -4: Informações do titular do cartão incorretas
    * -5: Pagamento sem cartão não ativado
    * -6: Este cartão foi confiscado
    * -7: Número do cartão inválido
    * -8: Este cartão não possui banco emissor correspondente
    * -9: Este cartão não foi inicializado ou é um cartão inativo
    * -10: Cartão fraudulento, cartão retido
    * -11: Este cartão foi perdido
    * -12: Este cartão está expirado
    * -13: Cartão restrito
    * -14: Número de tentativas de senha excedido
    * -15: O banco emissor não suporta esta transação
  * Códigos de resultado sem cobrança:
    * -2: Verificação de nome não aprovada
    * -3: Número do cartão bancário incorreto
    * -16: Serviço do centro de verificação ocupado
    * -17: Número de tentativas de verificação excedido, por favor, tente novamente no dia seguinte
* `description`, descrição do resultado do negócio.

Pode-se ver que a autenticidade e a consistência do nome e do número do cartão bancário foram aprovadas.

Além disso, se você quiser gerar o código de integração correspondente, pode copiá-lo diretamente, por exemplo, o código CURL é o seguinte:

```shell theme={null}
curl -X POST 'https://api.acedata.cloud/identity/bankcard/check-2e' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "name": "***",
  "bank_card": "***"
}'
```

O código de integração em Python é o seguinte:

```python theme={null}
curl -X POST 'https://api.acedata.cloud/identity/bankcard/check-2e' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "name": "***",
  "bank_card": "***"
}'
```

## Tratamento de Erros

Ao chamar a API, se ocorrer um erro, a API retornará o código de erro e a informação correspondente. Por exemplo:

* `400 token_mismatched`: Solicitação inválida, possivelmente devido a parâmetros ausentes ou inválidos.
* `400 api_not_implemented`: Solicitação inválida, possivelmente devido a parâmetros ausentes ou inválidos.
* `401 invalid_token`: Não autorizado, token de autorização inválido ou ausente.
* `429 too_many_requests`: Muitas solicitações, você excedeu o limite de taxa.
* `500 api_error`: Erro interno do servidor, algo deu errado no servidor.

### Exemplo de Resposta de Erro

```json theme={null}
{
  "success": false,
  "error": {
    "code": "api_error",
    "message": "falha na busca"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}
```

## Conclusão

Através deste documento, você já entendeu como usar a API de Verificação de Dois Elementos do Cartão Bancário para validar a autenticidade e a consistência do nome e do número do cartão bancário. Esperamos que este documento possa ajudá-lo a integrar e usar melhor esta API. Se tiver alguma dúvida, entre em contato com nossa equipe de suporte técnico.
