コンテンツへスキップ
Tutorial

VAT 番号検証 API: 1 つの POST で EU 納税者 ID を検証します

| 5 min read

1 回の API 呼び出しで、EU 加盟 27 か国のすべての VAT 番号を検証します。 有効性、国コード、およびフォーマットされた数値を返します。 無料枠、SOAP XML なし。

EU flags in front of the European Parliament
Photo by Olga Subach on Unsplash

あなたはヨーロッパの企業にソフトウェアを販売しています。 EU 税法では、購入者の VAT を検証する必要があります リバースチャージ (0% VAT) を適用する前の ID。 公式 VIES サービスの稼働時間は信頼性が低い そしてSOAP XMLを返します。 より高速で RESTful な代替手段が必要です。

ボトイ /v1/validate/vat エンドポイントは 27 の EU 加盟国すべての VAT 番号を検証します 州と英国。 POST を送信し、有効性、国コード、および フォーマットされた数値。 XML 解析はありません。 WSDL ファイルはありません。 政府の過負荷によるタイムアウトなし サーバー。

API呼び出し

2 文字の国プレフィックスを付けて VAT 番号を送信します。

応答:

valid フィールドは true 数値が予期された形式と一致する場合 その国のために。 の country_code そして country フィールドが教えてくれます その番号がどの管轄区域に属するか。

数値の検証に失敗した場合

数値が予想されるパターンと一致しない場合は、 valid 戻ってくる false。 応答には、検出された国が引き続き含まれています。

ドイツの VAT 番号の後には正確に 9 桁が必要です。 DE 接頭語。 こちらは5つあります。 フロントエンドは、ユーザーが正しい情報を修正できるように、国名と予期される形式を表示できます。 入力。

Stripe チェックアウトの統合

Stripe チェックアウト セッションを作成する前に、購入者の VAT ID を検証します。 有効であれば設定してください 顧客に tax_exempt: "reverse" したがって、Stripe では VAT 0% が請求されます。 もしそうなら 無効な場合はフォームを拒否し、購入者に修正を依頼してください。

これにより、2 つの一般的な問題が防止されます。それは、免除されるべき企業に VAT を請求することです。 (払い戻しに悩まされる)、偽の VAT 番号を持つ人に税の免除を与える (監査上の問題を引き起こす)。

条件付き VAT を使用した請求書の生成

請求書を作成するときは、VAT 税率を決定する必要があります。 ルール:

  • 同じ国の B2B 販売: 国内の VAT 税率を請求します。
  • 有効な VAT ID を使用した国境を越えた B2B 販売: リバースチャージ (0%) を適用します。
  • VAT ID が無効または欠落しています: 購入者の現地料金を請求します。

country_code API 応答からこのロジックが駆動されます。

SaaS B2B サインアップ フォームの検証

サインアップ フォームに VAT 番号フィールドを追加し、送信時に検証します。 有効な場合は、 国のドロップダウン。 無効な場合は、フォームがバックエンドに到達する前にエラーを表示します。

これにより、不正なデータが請求システムから排除されます。 また、財務チームが手作業で作業する手間も省けます。 顧客がすでにサインアップして製品の使用を開始した後の VAT 番号の確認。

国別の VAT 形式

EU 諸国ごとに VAT 識別番号の形式が異なります。 API が検証する これらすべてのパターンに対して:

完全なリストには、EU 加盟国 27 か国すべてと英国が含まれています。 フォーマット範囲は8桁から (デンマーク、ルクセンブルク) から 12 桁 (スウェーデン)。 一部の国では本文に文字が含まれています。 番号 (フランス、スペイン、アイルランド)。

フォーマット検証と VIES ルックアップ

この API は、 構造 VAT 番号の。 プレフィックス、長さ、 文字パターンがその国のルールに一致していること。 EU委員会の意見を問うものではない VIES データベースに番号がアクティブに登録されていることを確認します。

ほとんどのチェックアウト フローでは、形式の検証が正しい最初のステップです。 タイプミスや欠落をキャッチします 外部サービスに依存せずに、プレフィックスや作成された番号を瞬時に取得できます。 頻繁にダウンします。 登録ステータスも必要な場合は、形式チェックに合格した後に VIES を呼び出します。 この 2 段階のアプローチにより、VIES コールが 15 ~ 30% 削減されます (無効なフォーマットはすべて、 サービスが遅い)。

重要なポイント

無料利用枠は、開発および少量の実稼働での使用をカバーします。 トラフィックの多いチェックアウト向け フローの場合は、API キーを Authorization: Bearer ヘッダ。 チェックしてください APIドキュメント 完全なエンドポイント参照については、 インタラクティブな遊び場 ブラウザで VAT 番号をテストします。

FAQ

VAT 検証 API はどの国をサポートしていますか?
EU 加盟 27 か国すべてに英国 (GB 接頭辞) を加えたもの。 各国には独自の形式パターンがあります。 API は 2 文字の接頭辞から国を検出し、その管轄区域の正しい正規表現に対して検証します。
これは VIES SOAP サービスに代わるものですか?
これは形式検証部分を置き換えます。 VIES は、特定の番号が国税当局に登録されているかどうかを確認します。 この API は、VIES の稼働時間に依存せずに、構造と形式を即座に検証します。 両方を一緒に使用します。最初に形式チェックを行ってから、VIES で登録ステータスを検索します。
VAT 番号は検証後に保存されますか?
いいえ。番号はメモリ内で処理され、応答後に破棄されます。 ディスクや外部システムには何も書き込まれません。
Brexit 後に英国の VAT 番号を検証できますか?
英国の VAT 番号 (GB プレフィックス) は既知のパターンに従っており、構造的に検証できます。 これらは EU VIES システムの一部ではなくなりましたが、フォーマット チェックは引き続き機能します。
国の接頭辞を省略するとどうなりますか?
API には 2 文字の国接頭語 (例: 「DE」、「FR」、「NL」) が必要です。 これがないと、エンドポイントは国コードが欠落しているかサポートされていないことを説明するエラーを返します。

botoiで開発を始めよう

150以上のAPIエンドポイント。検索、テキスト処理、画像生成、開発者ユーティリティに対応。無料プラン、クレジットカード不要。