> For the complete documentation index, see [llms.txt](https://docs.facephi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.facephi.com/docs.facephi-pt-br/api-rest/identity-api/identity-api-reference/onboarding/kyc/nigeria/banking-services/banks-list.md).

# Lista de bancos

Retorna a **lista completa** de bancos nigerianos com seus códigos **NIBSS/NIP** para uso na verificação de contas.

### Endpoint

```
GET /kyc/nga/banks
```

### Autenticação

| Tipo    | Localização | Nome          |
| ------- | ----------- | ------------- |
| API Key | Cabeçalho   | **x-api-key** |

### Respostas

#### `200` Sucesso

#### Parâmetros de resposta

| Parâmetro              | Tipo    | Descrição                                                                                                       |
| ---------------------- | ------- | --------------------------------------------------------------------------------------------------------------- |
| `serviceResultCode`    | integer | Código que indica o **resultado geral** da execução do serviço. Ver [Service Result Code](#service-result-code) |
| `serviceTime`          | string  | Tempo de processamento **(milissegundos)**.                                                                     |
| `serviceResultLog`     | string  | Campo descritivo do resultado da execução do serviço. Inclui detalhes quando há um erro ou exceção no módulo.   |
| `serviceTransactionId` | string  | Identificador de transação associado à solicitação processada pela API.                                         |
| `data`                 | object  | Objeto com a lista de bancos. Veja a tabela abaixo.                                                             |

#### Parâmetros de resposta — `data`

| Parâmetro    | Tipo    | Descrição                                         |
| ------------ | ------- | ------------------------------------------------- |
| `banks`      | array   | Lista de bancos nigerianos. Veja a tabela abaixo. |
| `totalBanks` | integer | **Número total** de bancos na lista.              |

#### Parâmetros de resposta — `data.banks[]`

| Parâmetro  | Tipo   | Descrição            |
| ---------- | ------ | -------------------- |
| `bankCode` | string | Código do banco.     |
| `bankName` | string | Nome do banco.       |
| `nipCode`  | string | Código NIP do banco. |

#### Service Result Code

O `serviceResultCode` indica o resultado geral da execução do serviço:

| serviceResultCode | Descrição                                                                              | Código HTTP |
| ----------------- | -------------------------------------------------------------------------------------- | ----------- |
| 200               | A execução do serviço foi bem-sucedida, o módulo processou a solicitação corretamente. | 200         |

#### Exemplo de resposta

```json
{
  "serviceResultCode": 200,
  "serviceTime": "500",
  "serviceResultLog": "Success",
  "serviceTransactionId": "e41h235i-34i2-1h3l-h86h-2i681hj22jk",
  "data": {
    "banks": [
      {
        "bankCode": "044",
        "bankName": "Access Bank",
        "nipCode": "044"
      },
      {
        "bankCode": "063",
        "bankName": "Access Bank (Diamond)",
        "nipCode": "063"
      },
      {
        "bankCode": "023",
        "bankName": "Citibank Nigeria",
        "nipCode": "023"
      },
      {
        "bankCode": "050",
        "bankName": "Ecobank Nigeria",
        "nipCode": "050"
      },
      {
        "bankCode": "011",
        "bankName": "First Bank of Nigeria",
        "nipCode": "011"
      },
      {
        "bankCode": "058",
        "bankName": "Guaranty Trust Bank",
        "nipCode": "058"
      },
      {
        "bankCode": "033",
        "bankName": "United Bank For Africa",
        "nipCode": "033"
      },
      {
        "bankCode": "057",
        "bankName": "Zenith Bank",
        "nipCode": "057"
      }
    ],
    "totalBanks": 22
  }
}
```

#### `400` Bad Request

Erro retornado com o envelope do serviço (`serviceResultCode` reflete o código HTTP da resposta):

```json
{
  "serviceResultCode": 400,
  "serviceResultLog": "Sorry, lookup failed. Please check the details and try again",
  "serviceTime": "151",
  "serviceTransactionId": "08ac9699-dc9e-4cdc-81d7-264f71838309"
}
```

#### `502` Bad Gateway

É retornado quando o serviço não está temporariamente disponível ou sua resposta não pôde ser interpretada. O corpo usa o envelope do serviço com `serviceResultCode: 500`:

```json
{
  "serviceResultCode": 500,
  "serviceResultLog": "Service temporarily unavailable. Please try again later",
  "serviceTime": "3000",
  "serviceTransactionId": "38de2932-0f2h-7gff-14g0-597h04161632"
}
```

#### `504` Gateway Timeout

Erro de **timeout**, retornado com o envelope do serviço:

```json
{
  "serviceResultCode": 504,
  "serviceResultLog": "Request timeout. Please try again",
  "serviceTime": "30000",
  "serviceTransactionId": "48ef3043-1g3i-8hgg-25h1-608i15272743"
}
```

{% hint style="info" %}
Os erros de autenticação (`401`/`403`) são rejeitados pelo **gateway antes de chegar ao serviço** e **não** usam o envelope `serviceResultCode`. Os erros de validação da plataforma usam o formato `application/problem+json`. Consulte [Tratamento de erros](/docs.facephi-pt-br/api-rest/identity-api/identity-api-reference/onboarding/kyc/nigeria.md#manejo-de-errores) para obter detalhes das três formas de resposta.
{% endhint %}
