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

# Validation BIC

> L'endpoint `bic` valide les codes d'identification bancaire, fournissant une ventilation détaillée des codes bancaires, des informations sur le pays et des types d'institution pour les opérations bancaires internationales.

## Premiers pas

### URL de base

```
https://bankvalidation.cleariflow.com/v1/bic/
```

### Endpoint de validation

L'endpoint `bic` requiert votre clé API et un paramètre BIC pour effectuer une validation complète des codes d'identification bancaire.

```
https://bankvalidation.cleariflow.com/v1/bic/
? api_key = YOUR_UNIQUE_API_KEY
& bic = DEUTDEFF500
```

Cette requête réussie valide un BIC allemand et renvoie des informations détaillées :

<ResponseExample>
  ```json theme={"system"}
  {
    "bic": "DEUTDEFF500",
    "is_valid": true,
    "country_code": "DE",
    "country_name": "Germany",
    "bank_code": "DEUT",
    "bank_name": "Bank information not available",
    "location_code": "F",
    "branch_code": "500",
    "details": {
      "type": "BIC",
      "active": true,
      "institution_type": "Bank"
    }
  }
  ```
</ResponseExample>

### Paramètres de requête

<ParamField query="api_key" type="String" required>
  Votre clé API unique. Notez que chaque utilisateur possède des clés API uniques *pour chacune des
  API Cleariflow* ; votre clé de l'API de validation bancaire ne fonctionnera pas pour votre API de
  taux de change, par exemple.
</ParamField>

<ParamField query="bic" type="String" required>
  Le code d'identification bancaire à valider. Les espaces sont autorisés et seront automatiquement supprimés lors du traitement. Le BIC doit suivre le format standard ISO 9362.
</ParamField>

### Paramètres de réponse

La réponse de l'API est renvoyée dans un [format JSON](https://www.json.org/json-en.html) universel et léger.

<ResponseField name="bic" type="String">
  Le BIC normalisé sans espaces, renvoyé en majuscules.
</ResponseField>

<ResponseField name="is_valid" type="Boolean">
  Résultat global de validation indiquant si le BIC est valide selon toutes les règles de validation.
</ResponseField>

<ResponseField name="country_code" type="String">
  Le code pays ISO à deux lettres (par ex., DE pour l'Allemagne, US pour les États-Unis).
</ResponseField>

<ResponseField name="country_name" type="String">
  Le nom complet du pays associé au BIC.
</ResponseField>

<ResponseField name="bank_code" type="String">
  Le code d'identification bancaire à 4 caractères (par ex., DEUT pour Deutsche Bank).
</ResponseField>

<ResponseField name="bank_name" type="String">
  Le nom de la banque (affiche actuellement « Bank information not available »).
</ResponseField>

<ResponseField name="location_code" type="String">
  Le code de localisation à 2 caractères indiquant la ville ou la région (par ex., FF pour Francfort).
</ResponseField>

<ResponseField name="branch_code" type="String">
  Le code d'agence à 3 caractères (optionnel, peut être vide pour les BIC à 8 caractères).
</ResponseField>

<ResponseField name="details" type="Object">
  Informations détaillées supplémentaires sur le type et le statut du BIC.
</ResponseField>

<ResponseField name="details.type" type="String">
  Le type d'identifiant (généralement « BIC »).
</ResponseField>

<ResponseField name="details.active" type="Boolean">
  Indique si le BIC est actuellement actif et en usage.
</ResponseField>

<ResponseField name="details.institution_type" type="String">
  Le type d'institution financière (par ex., « Bank », « Credit Union »).
</ResponseField>

## Exemples

### BIC allemand valide (8 caractères)

**Requête :**

```
GET https://bankvalidation.cleariflow.com/v1/bic/?api_key=YOUR_API_KEY&bic=DEUTDEFF
```

**Réponse :**

```json theme={"system"}
{
  "bic": "DEUTDEFF",
  "is_valid": true,
  "country_code": "DE",
  "country_name": "Germany",
  "bank_code": "DEUT",
  "bank_name": "Bank information not available",
  "location_code": "FF",
  "branch_code": "",
  "details": {
    "type": "BIC",
    "active": true,
    "institution_type": "Bank"
  }
}
```

### BIC allemand valide (11 caractères avec agence)

**Requête :**

```
GET https://bankvalidation.cleariflow.com/v1/bic/?api_key=YOUR_API_KEY&bic=DEUTDEFF500
```

**Réponse :**

```json theme={"system"}
{
  "bic": "DEUTDEFF500",
  "is_valid": true,
  "country_code": "DE",
  "country_name": "Germany",
  "bank_code": "DEUT",
  "bank_name": "Bank information not available",
  "location_code": "FF",
  "branch_code": "500",
  "details": {
    "type": "BIC",
    "active": true,
    "institution_type": "Bank"
  }
}
```

### BIC américain valide

**Requête :**

```
GET https://bankvalidation.cleariflow.com/v1/bic/?api_key=YOUR_API_KEY&bic=CHASUS33
```

**Réponse :**

```json theme={"system"}
{
  "bic": "CHASUS33",
  "is_valid": true,
  "country_code": "US",
  "country_name": "United States",
  "bank_code": "CHAS",
  "bank_name": "Bank information not available",
  "location_code": "33",
  "branch_code": "",
  "details": {
    "type": "BIC",
    "active": true,
    "institution_type": "Bank"
  }
}
```

### BIC britannique valide

**Requête :**

```
GET https://bankvalidation.cleariflow.com/v1/bic/?api_key=YOUR_API_KEY&bic=NWBKGB2L
```

**Réponse :**

```json theme={"system"}
{
  "bic": "NWBKGB2L",
  "is_valid": true,
  "country_code": "GB",
  "country_name": "United Kingdom",
  "bank_code": "NWBK",
  "bank_name": "Bank information not available",
  "location_code": "2L",
  "branch_code": "",
  "details": {
    "type": "BIC",
    "active": true,
    "institution_type": "Bank"
  }
}
```

### BIC invalide

**Requête :**

```
GET https://bankvalidation.cleariflow.com/v1/bic/?api_key=YOUR_API_KEY&bic=INVALID
```

**Réponse :**

```json theme={"system"}
{
  "bic": "INVALID",
  "is_valid": false,
  "country_code": "",
  "country_name": "",
  "bank_code": "",
  "bank_name": "Bank information not available",
  "location_code": "",
  "branch_code": "",
  "details": {
    "type": "BIC",
    "active": true
  }
}
```

## Gestion des erreurs

### Paramètre BIC manquant

**Requête :**

```
GET https://bankvalidation.cleariflow.com/v1/bic/?api_key=YOUR_API_KEY
```

**Réponse :**

```json theme={"system"}
{
  "error": {
    "message": "Missing bic",
    "code": "missing_bic"
  }
}
```

### Clé API manquante

**Requête :**

```
GET https://bankvalidation.cleariflow.com/v1/bic/?bic=DEUTDEFF500
```

**Réponse :**

```json theme={"system"}
{
  "error": {
    "message": "API key is required",
    "code": "missing_api_key"
  }
}
```

## Structure BIC

Le BIC se compose de plusieurs éléments :

1. **Code banque (4 caractères)** : identifiant unique de l'institution financière
2. **Code pays (2 caractères)** : code pays ISO 3166-1 alpha-2
3. **Code de localisation (2 caractères)** : identifiant de ville ou région
4. **Code d'agence (3 caractères)** : identifiant d'agence optionnel (XXX pour le siège)

### Exemples de format

* **BIC à 8 caractères** : `DEUTDEFF` (Deutsche Bank, Allemagne, Francfort)
* **BIC à 11 caractères** : `DEUTDEFF500` (Deutsche Bank, Allemagne, Francfort, Agence 500)

### Codes de localisation courants

* **FF** : Francfort, Allemagne
* **33** : New York, États-Unis
* **2L** : Londres, Royaume-Uni
* **PP** : Paris, France
* **MM** : Milan, Italie

## Règles de validation

L'API effectue une validation complète incluant :

1. **Validation de la longueur** : vérifie si le BIC comporte 8 ou 11 caractères
2. **Validation du format** : vérifie que le BIC suit la norme ISO 9362
3. **Validation des caractères** : s'assure que seuls des caractères alphanumériques sont utilisés
4. **Validation du code pays** : valide le format du code pays
5. **Validation du code banque** : vérifie le format de l'identifiant bancaire

### Exigences de format BIC

* **Code banque** : 4 caractères alphanumériques
* **Code pays** : 2 caractères alphabétiques (ISO 3166-1)
* **Code de localisation** : 2 caractères alphanumériques
* **Code d'agence** : 3 caractères alphanumériques (optionnel)

## BIC vs SWIFT

BIC (Business Identifier Code) et SWIFT sont souvent utilisés de manière interchangeable :

* **BIC** : le nom officiel de la norme ISO 9362
* **SWIFT** : le réseau de messagerie qui a popularisé le code
* **Code SWIFT** : nom alternatif pour BIC

Tous les BIC peuvent être utilisés pour la messagerie SWIFT, mais tous les codes SWIFT ne sont pas des BIC valides.

## Pays pris en charge

L'API prend en charge la validation BIC pour plus de 50 pays, notamment :

* **Europe** : Allemagne, France, Italie, Espagne, Pays-Bas, Belgique, Autriche, Suisse, Royaume-Uni, Pologne
* **Amériques** : États-Unis, Canada, Brésil, Mexique
* **Asie** : Japon, Singapour, Hong Kong, Australie
* **Afrique** : Afrique du Sud, Égypte, Nigeria

Pour une liste complète des pays pris en charge, consultez la page [Pays pris en charge](/bank-validation/countries).

## Cas d'utilisation

La validation BIC est essentielle pour :

1. **Virements internationaux** : garantir des informations de routage précises
2. **Paiements SEPA** : exigences du système de paiement européen
3. **Applications bancaires** : validation des comptes clients
4. **Conformité financière** : exigences de reporting réglementaire
5. **Traitement des paiements** : applications e-commerce et fintech
