# Validation structure IBAN

Valide localement la structure et la clé mod-97 d’un IBAN et extrait les composants banque/guichet/compte français lorsqu’ils existent.

## Endpoint

- Méthode: `POST`
- URL: `https://api.helpmyagent.com/v1/iban/validate`
- Prix: `0.002 USD` / call

## Découverte machine

- llms.txt: https://helpmyagent.com/llms.txt
- OpenAPI 3.1: https://api.helpmyagent.com/openapi.json
- capabilities.json: https://helpmyagent.com/capabilities.json
- MCP: https://helpmyagent.com/mcp
- RFC 9727: https://helpmyagent.com/.well-known/api-catalog
- pricing.json: https://helpmyagent.com/pricing.json
- x402: https://helpmyagent.com/.well-known/x402
- x402-service.json: https://helpmyagent.com/.well-known/x402-service.json
- Health status: https://helpmyagent.com/health

## x402 payment methods

- USDC on `eip155:8453`
- RLUSD on `xrpl:0`

## Couverture

EU, GB, CH, NO, IS, LI, MC, AD

## À utiliser quand

- Valider la clé d’un IBAN avant de l’utiliser dans un workflow.

## À éviter quand

- Utilisez une API plus spécialisée si vous n’avez besoin que d’une donnée élémentaire déjà disponible.

## Limites

- Les résultats dépendent de la disponibilité et du périmètre des sources publiques citées.

## Exemples de demandes

- Valider la clé d’un IBAN avant de l’utiliser dans un workflow.

## Fraîcheur

```json
{
    "mode": "source_dependent"
}
```

## Sources

- [ISO 13616 checksum validation](https://www.iso.org/standard/81090.html)

## Schéma d’entrée

```json
{
    "type": "object",
    "properties": {
        "iban": {
            "type": "string",
            "minLength": 15,
            "maxLength": 34,
            "description": "IBAN à normaliser et à valider structurellement, y compris le contrôle mod-97 ISO 13616. (longueur minimale 15; longueur maximale 34)."
        }
    },
    "additionalProperties": false,
    "required": [
        "iban"
    ],
    "description": "Paramètres structurés de l’API iban/validate."
}
```

## Schéma de sortie

```json
{
    "type": "object",
    "properties": {
        "iban": {
            "type": "string",
            "description": "Valeur structurée retournée pour « iban » selon le contrat de cette API."
        },
        "country_code": {
            "type": "string",
            "description": "Valeur structurée retournée pour « country code » selon le contrat de cette API."
        },
        "structure_valid": {
            "type": "boolean",
            "description": "Valeur structurée retournée pour « structure valid » selon le contrat de cette API."
        },
        "checksum_valid": {
            "type": "boolean",
            "description": "Valeur structurée retournée pour « checksum valid » selon le contrat de cette API."
        },
        "valid": {
            "type": "boolean",
            "description": "Indique si l’identifiant fourni respecte les règles de validation de l’API."
        },
        "expected_length": {
            "type": [
                "integer",
                "null"
            ],
            "description": "Valeur structurée retournée pour « expected length » selon le contrat de cette API."
        },
        "bank_code": {
            "type": [
                "string",
                "null"
            ],
            "description": "Valeur structurée retournée pour « bank code » selon le contrat de cette API."
        },
        "branch_code": {
            "type": [
                "string",
                "null"
            ],
            "description": "Valeur structurée retournée pour « branch code » selon le contrat de cette API."
        },
        "account_number": {
            "type": [
                "string",
                "null"
            ],
            "description": "Valeur structurée retournée pour « account number » selon le contrat de cette API."
        },
        "rib_key": {
            "type": [
                "string",
                "null"
            ],
            "description": "Valeur structurée retournée pour « rib key » selon le contrat de cette API."
        },
        "bic": {
            "type": [
                "string",
                "null"
            ],
            "description": "Valeur structurée retournée pour « bic » selon le contrat de cette API."
        },
        "bank_name": {
            "type": [
                "string",
                "null"
            ],
            "description": "Valeur structurée retournée pour « bank name » selon le contrat de cette API."
        },
        "checked_at": {
            "type": "string",
            "description": "Horodatage UTC du contrôle effectué par HelpMyAgent."
        },
        "limitations": {
            "type": "array",
            "items": {
                "type": "string"
            },
            "description": "Limites connues d’interprétation, de couverture ou de fraîcheur de ce résultat."
        }
    },
    "additionalProperties": false,
    "required": [
        "iban",
        "country_code",
        "structure_valid",
        "checksum_valid",
        "valid",
        "expected_length",
        "bank_code",
        "branch_code",
        "account_number",
        "rib_key",
        "bic",
        "bank_name",
        "checked_at"
    ],
    "description": "Résultat structuré retourné par l’API iban/validate."
}
```

## Instantané de démonstration

Cet exemple est un instantané stocké en base de données et ne déclenche aucun appel API en direct.
- URL: https://api.helpmyagent.com/demo/iban/validate
- Généré le: 2026-09-07T14:50:13+00:00

## Exemple de requête

```json
{
    "iban": "FR1420041010050500013M02606"
}
```

## Exemple de réponse stocké

```json
{
    "iban": "FR1420041010050500013M02606",
    "country_code": "FR",
    "structure_valid": true,
    "checksum_valid": true,
    "valid": true,
    "expected_length": 27,
    "bank_code": "20041",
    "branch_code": "01005",
    "account_number": "0500013M026",
    "rib_key": "06",
    "bic": null,
    "bank_name": null,
    "checked_at": "2026-09-07T16:50:13+02:00",
    "limitations": [
        "La validation confirme la structure et la clé de contrôle ; elle ne prouve pas que le compte existe ou appartient au bénéficiaire.",
        "L’identification publique gratuite de la banque n’est pas garantie pour tous les pays ; bank_name et bic peuvent être nuls."
    ]
}
```

## Règles de facturation

```json
{
    "charge_on": "valid_result",
    "no_charge_on_empty_result": true,
    "no_charge_on_error": true
}
```
