1 回の API 呼び出しで IBAN 番号を検証
IBAN を検証し、国コードを抽出して数字を確認し、フォーマットされた文字列を取得します。 1 つの POST リクエスト、80 か国以上、バンキング SDK は必要ありません。
お支払いフォームは国際銀行振込を受け付けています。 ユーザーは 22 文字の IBAN を入力します。 それを支払い処理業者に送信して失敗を待つ前に、タイプミスを見つけたいと思うでしょう。 フォームレベルで。 IBAN 検証には、国固有のモジュロ 97 チェック ディジット アルゴリズムが含まれます 長さのルールと BBAN 構造の解析。 自分で書くことも、ライブラリを利用することも、任せることもできます。 API がそれを処理します。
ボトイさん /v1/validate/iban エンドポイントは IBAN 文字列を受け取り、それが IBAN 文字列であるかどうかを返します。
有効な、国コード、国名、および番号のフォーマットされたバージョン。 1 つの投稿
リクエスト、バンキング SDK、維持するための正規表現コレクションは必要ありません。
API呼び出し
応答:
応答には 4 つのフィールドが表示されます。 valid 必要なブール値です
フォームレベルのゲート。 country_code そして country 自動検出させます
通貨選択や税金規則などの下流ロジックのためのユーザーの銀行の国。
formatted 人間を標準的な 4 文字でグループ化した IBAN を返します。
請求書や銀行取引明細書に記載されると予想されます。
IBAN がチェック ディジットの検証に失敗した場合でも、解析されたフィールドが得られます。
の valid: false 必要なのはフラグだけです。 キャッチする例外やエラーコードはありません
見上げる。 ブール値を確認し、エラー メッセージを表示します。
Node.js
パイソン
国別の IBAN 形式
IBAN の長さは国によって異なります。 最初の 2 文字は常に ISO 3166-1 国コードです。 次に 2 つのチェック ディジット、次に基本銀行口座番号 (BBAN) が続きます。 多いのはこの5つです ヨーロッパの支払いで一般的な形式:
| 国 | コード | 長さ | 形式 | 例 |
|---|---|---|---|---|
| ドイツ | の | 22 | DE + 2 小切手桁 + 8 銀行コード + 10 口座 | DE89 3704 0044 0532 0130 00 |
| イギリス | GB | 22 | GB + 2 チェックデジット + 4 銀行 + 6 ソートコード + 8 アカウント | GB29 NWBK 6016 1331 9268 19 |
| フランス | フランス | 27 | FR + 2 チェックデジット + 10 銀行 + 11 口座 + 2 キー | FR76 3000 6000 0112 3456 7890 189 |
| スペイン | ES | 24 | ES + 2 小切手 + 4 銀行 + 4 支店 + 2 管理 + 10 口座 | ES91 2100 0418 4502 0005 1332 |
| オランダ | オランダ語 | 18 | NL + 2 小切手桁 + 4 銀行 + 10 口座 | NL91 ABNA 0417 1643 00 |
この API は、SWIFT IBAN レジストリ内の 80 以上の国をすべて処理します。 を維持する必要はありません 長さとフォーマットのルックアップテーブル。 エンドポイントは、次の正しいルールに対して検証します。 それぞれの国コード。
ブラーの React/Preact フォーム検証
最も一般的な統合: ユーザーが入力フィールドからタブで移動するときに IBAN を検証します。 (キーストロークごとではなく) ブラーを呼び出すと、API の使用率が低く抑えられ、フラッシュが回避されます。 ユーザーが入力中のエラー メッセージ。
フィールドがフォーカスを失うと、コンポーネントは API を呼び出します。 IBAN が有効な場合は、
解析されたデータ (国コード、フォーマットされた文字列) を親フォームに送信 onValidated。
その後、親は通貨を自動入力したり、ルーティングを調整したり、フォーマットされた IBAN を表示したりできます。
確認。
CSV から IBAN をバッチ検証する
財務チームは多くの場合、IBAN を実行する前にサプライヤーまたは従業員の IBAN のリストを検証する必要があります。 一括支払い。 このスクリプトは CSV を読み取り、各 IBAN を検証し、無効なエントリにフラグを立てます。
いずれかの IBAN が無効な場合、スクリプトはコード 1 で終了し、CI ステップまたは アップロード前のチェック。 大きなファイル (1,000 行以上) の場合は、リクエスト間にわずかな遅延を追加するか、 API キーを使用して、より高いレート制限を取得します。
Stripe Connect のオンボーディング
Stripe Connect 経由で販売者またはフリーランサーをオンボーディングする場合、銀行口座の詳細を収集して、
支払いを設定します。 電話をかける前に IBAN を検証する stripe.accounts.createExternalAccount
いずれにしても失敗する可能性がある Stripe の API への往復を回避します。 また、
国コードを使用して正しい支払い通貨を設定します。
フローは簡単です。最初に検証し、国を抽出し、それを通貨にマッピングしてから、 外部アカウントを作成します。 IBAN が無効な場合、ユーザーにはすぐにエラーが表示されます。 Stripe が数秒後に拒否するのを待つ必要があります。
重要なポイント
-
1 つの POST、4 つのフィールド。 IBAN 文字列を送信する
/v1/validate/iban有効性、国コード、国名、およびフォーマットされた番号を取得します。 - 80か国以上。 このエンドポイントは、SWIFT IBAN レジストリ内のすべての国をカバーします。 お客様側には国固有のロジックはありません。
- フォームレベルでエラーをキャッチします。 支払いフォームのぼかしを検証して、 無効な IBAN が銀行や決済処理業者に届くのを防ぎます。
- ストレージもログもありません。 IBAN はメモリ内で処理され、破棄されます。 何も永続化されません。
- 無料利用枠をご利用いただけます。 1 分あたり 5 リクエスト、1 日あたり 100 リクエストの匿名アクセス。 開発とテストには API キーは必要ありません。
FAQ
- この API は銀行口座が存在することを確認しますか?
- いいえ。IBAN 構造とモジュロ 97 チェックサムを検証します。 番号の形式が正しいかどうかは確認しますが、銀行に連絡したり、口座が開設されているか、入金されているかどうかを確認したりすることはありません。
- IBAN 検証は何カ国をサポートしていますか?
- すべての EU/EEA 加盟国、英国、スイス、サウジアラビア、ブラジルを含む 80 か国以上が IBAN 標準を採用しています。 完全なリストは SWIFT IBAN レジストリに従います。
- スペースを含む IBAN を送信できますか?
- はい。 スペースは検証前に自動的に削除されます。 「DE89 3704 0044 0532 0130 00」と「DE89370400440532013000」はどちらも同じ結果を返します。
- IBAN を検証するには API キーが必要ですか?
- いいえ。匿名アクセスでは、IP ベースのレート制限により 1 分あたり 5 リクエスト、1 日あたり 100 リクエストが許可されます。 スループットを高めるには、botoi.com/api で API キーにサインアップしてください。
- 送信した IBAN は保存または記録されますか?
- いいえ。IBAN はメモリ内で検証され、すぐに破棄されます。 何も保存されず、ログにも書き込まれません。
botoiで開発を始めよう
150以上のAPIエンドポイント。検索、テキスト処理、画像生成、開発者ユーティリティに対応。無料プラン、クレジットカード不要。