SEPA · Participation bancaire · Réponses de l’API

Vérifier la participation SEPA d’une banque avec l’API IBAN-Test

Utilisez une réponse de validation IBAN pour vérifier la participation d'une banque au prélèvement automatique de base SEPA, au prélèvement automatique d'entreprise, au virement bancaire et au virement bancaire en temps réel. Considérez chaque procédure séparément et faites la distinction entre la participation confirmée et inconnue.

Ce guide explique les champs de réponse et inclut un exemple Python pour évaluer une réponse en direct ou un fichier JSON enregistré. Ce qui est vérifié, c'est la participation bancaire et non la capacité d'un compte spécifique à effectuer un paiement.

Télécharger l'exemple de réponse SEPA

Le package comprend sepa_check.py, son assistant API, des données de test JSON illustratives et des tests hors ligne. Python version 3.10 ou supérieure est requis ; Il n'y a pas de dépendances tierces.

Télécharger le kit de démarrage (ZIP)

Python 3.10+ · Données de test JSON · Tests hors ligne

État des tests : L'évaluation a réussi sept tests locaux sur les procédures indépendantes, les données manquantes, les IBAN invalides, les erreurs techniques et les champs incorrects. La commande hors ligne a également été exécutée. Les données de test ne proviennent pas d’une véritable requête bancaire ; une vérification d'API en direct authentifiée n'a pas été effectuée pour cet exemple.

Que signifient les quatre champs

L'API IBAN-Test compare la participation avec les registres des participants du Conseil européen des paiements. Les procédures décrivent différents services de paiement ; La confirmation de l’un ne confirme pas la participation aux autres. Les listes sous-jacentes se trouvent dans le Inscriptions des participants à l'EPC.

Champ de réponseProcédureDistinction importante
details.sepa.sddCorePrélèvement SEPA CoreLa participation bancaire ne prouve pas un mandat valide ou la capacité de prélèvement automatique d'un compte spécifique.
details.sepa.sddB2bPrélèvement SEPA B2BUne confirmation pour Core ne confirme pas la participation à B2B.
details.sepa.sctVirement SEPALes transferts standards et les transferts en temps réel ont des résultats indépendants.
details.sepa.sctInstVirement instantané SEPALa participation ne prouve ni l'accessibilité actuelle via RT1/TIPS ni ne garantit l'exécution immédiate d'un compte.

1. Vérifiez l'IBAN

Utilisez le point de terminaison normal de vérification IBAN. Aucun appel SEPA supplémentaire n’est requis pour cette démarche :

POST https://www.iban-test.eu/api/v2/iban/validate
Authorization: Bearer YOUR_API_TOKEN
Content-Type: application/json

{"iban":"DE89 3704 0044 0532 0130 00"}

L'IBAN ci-dessus est un exemple et non une instruction de paiement. Vérifiez d’abord l’état HTTP et le résultat de la validation. Une réponse utilisable pour un IBAN valide inclut code: 2100 et error: false. Les champs SEPA sont alors disponibles sous details.sepa si l'API les fournit. Les points de terminaison distincts pour la vérification BIC et la vérification des comptes allemands ne fournissent pas ces champs SEPA.

2. Faites la distinction entre « confirmé » et « inconnu ».

Chaque procédure comprend status et reason :

  • confirmed: L’API a trouvé une correspondance actuelle et non ambiguë dans le registre de ce schéma.
  • unknown: L’API n’a pas pu confirmer la participation. Cela ne signifie pas que la banque ne prend pas en charge ce schéma.

L’extrait suivant est expressément destiné à des fins d’illustration. Il montre pourquoi quatre colonnes distinctes sont plus utiles qu’un seul indicateur « SEPA pris en charge » :

{
  "sddCore": {"status": "confirmed", "reason": "matched"},
  "sddB2b":  {"status": "unknown",   "reason": "no_match"},
  "sct":     {"status": "confirmed", "reason": "matched"},
  "sctInst": {"status": "unknown",   "reason": "stale_data"}
}

Core et SCT sont confirmés dans ces données de test. Le B2B n’est toujours pas confirmé et le résultat des transferts en temps réel est basé sur des données obsolètes. Aucune de ces valeurs inconnues ne modifie le résultat du contrôle IBAN d'origine.

3. Exécutez l'exemple hors ligne

Décompressez le téléchargement et exécutez :

python3 sepa_check.py --response example-response.json

Aucune requête réseau n'est envoyée et aucun jeton n'est requis. Le programme génère un résumé JSON contenant iban_status, des informations bancaires et quatre résultats de procédure distincts. source: "offline_file" indique la source d’entrée. Le fichier fourni nomme une banque fictive et ne peut être utilisé comme preuve d’une institution réelle.

Si les champs SEPA sont manquants dans une réponse enregistrée, l'assistant renvoie unknown avec missing_response_data. Cette raison est une marque locale de l'exemple et non un code raison de l'API IBAN-Test. Des valeurs d'état inattendues ou des objets de procédure défectueux arrêtent le programme au lieu d'être acceptés en silence.

4. Vérifiez une réponse en direct

python3 sepa_check.py --iban "DE89 3704 0044 0532 0130 00"

Le programme interrogera votre jeton sans l'afficher. Vous pouvez également déployer IBAN_TEST_API_TOKEN via la configuration secrète de votre environnement d'exécution. Une exécution en direct exécute une demande de vérification IBAN et facture votre quota API. L'assistant utilise un délai d'attente, vérifie TLS, ne suit pas les redirections et ne réessaye pas automatiquement les demandes.

Sous Windows, utilisez py -3 à la place de python3 si nécessaire. Le code de sortie est 0 pour un IBAN valide, même si un ou plusieurs schémas restent inconnus ; 2 pour un IBAN qui échoue à la validation ; et 1 pour une erreur opérationnelle ou de saisie. Examinez les schémas séparément : le code 0 ne signifie pas qu’ils sont tous confirmés.

Comprendre un résultat inconnu

Raison de l'APIImportance pour votre intégration
no_data, missing_bicLes données nécessaires à la confirmation n'étaient pas disponibles.
ambiguous_bank, ambiguous_participantLa banque ou le participant au registre n'a pas pu être clairement identifié.
no_matchAucune entrée de registre correspondante n’a été trouvée. N’en déduisez pas un non-support général.
not_current, stale_dataL’inscription au registre ou les données disponibles ne fournissent pas de preuve de la participation actuelle.
lookup_errorLa requête de participation n'a pas pu être complétée.

Enregistrez le statut et la raison ensemble. Pour les résultats inconnus, affichez « La participation n'a pas pu être confirmée » et traitez ces cas conformément au processus d'examen de votre candidature. Ne marquez pas automatiquement l'IBAN comme invalide et ne prétendez pas que la banque ne peut pas traiter ce mode de paiement.

Séparez les erreurs API des résultats de participation

Une erreur d'authentification HTTP, un quota épuisé ou une erreur de serveur ne constitue pas un résultat de participation bancaire unknown. L'exemple s'arrête avant l'évaluation de la procédure si la requête échoue déjà. De même, un IBAN avec une somme de contrôle invalide ne donne pas lieu à une décision procédurale. Cela signifie qu'un service indisponible ne constitue pas une déclaration trompeuse sur les capacités d'une banque.

Exécutez les tests hors ligne inclus à l’aide de python3 -m unittest -v. Pour des listes d'entrées plus volumineuses, commencez par le Instructions CSV et Python et conservez une paire état-raison distincte pour chaque procédure à mesure que vous développez la sortie.

Référence technique : documentation de l’API IBAN-Test et codes de motif SEPA. Un contrôle IBAN et une participation bancaire confirmée ne prouvent pas la propriété du compte, l'existence du compte, le mandat, les fonds disponibles ou la réussite du paiement.

Créer un compte API Comparez les quotas d'API

Vérification des données bancaires

Vérification dans les référentiels bancaires de 40 pays

IBAN-Test ne se limite pas à la clé de contrôle. Pour les pays ci-dessous, nous vérifions le code de la banque dans les référentiels disponibles et renvoyons les informations trouvées : établissement, ville et BIC. Comprendre la vérification d’un IBAN.

ALAlbanie ADAndorre ATAutriche BEBelgique BGBulgarie HRCroatie CYChypre CZTchéquie DKDanemark EEEstonie FIFinlande FRFrance DEAllemagne GIGibraltar GRGrèce HUHongrie ISIslande IEIrlande ITItalie LVLettonie LILiechtenstein LTLituanie LULuxembourg MTMalte MDMoldavie MEMonténégro NLPays-Bas MKMacédoine du Nord NONorvège PLPologne PTPortugal RORoumanie SMSaint-Marin RSSerbie SKSlovaquie SISlovénie ESEspagne SESuède CHSuisse VAÉtat de la Cité du Vatican

Vérification du format IBAN

115 formats IBAN pris en charge

Contrôlez la structure, la longueur et la clé de votre IBAN pour repérer les fautes de frappe et les chiffres inversés avant un paiement. Pour les pays indiqués plus haut, une vérification complémentaire s’appuie sur les référentiels bancaires disponibles.

Serveur MCP pour agents IA – Connectez vos clients IA aux outils de vérification d’IBAN – https://www.iban-test.eu/mcp – Documentation API