フランスSIRETのLuhn検証
73282932000074は有効です。14桁全体のLuhn検査が合い、先頭9桁のSIREN 732829320も独自の検査に合格し、残る00074が事業所のNICです。それぞれの結果を別々に示します。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 数
- 73282932000074
- 入力
- 73282932000074
- SIREN (企業番号)
- 732829320
- Nic
- 00074
- 長さ
- 14
フランスのSIRETは、フランスに登録された企業の特定の事業所を表す14桁の識別子です。先頭の9桁は法人のSIREN、末尾の5桁は同じ企業内の拠点・倉庫・事務所を区別するNICです。両層にLuhnチェックデジットが埋め込まれているため、1桁の誤入力や隣接桁の入れ替えは、請求書・仕入先マスタ・オンボーディングフォームへ保存される前に多くの場合検出されます。本機能はその局所算術のみを実装します。純粋な14桁文字列を要求し、14桁全体に古典的Luhnを適用し、9桁のSIREN接頭辞のLuhn妥当性を再計算し、SIREN・NIC・各検査の独立フラグ付きの構造化結果を返します。
フランスSIRET・SIRENのLuhn検査の仕組み
フランス企業登記で使われるSIRENとSIRETの規則では、SIRENは法人を生涯にわたり識別する常に9桁の十進数字、SIRETは事業所を識別する常に14桁(9桁SIREN+5桁NIC)です。
両番号とも古典的Luhn mod-10で生成されたチェックデジットを持ち、1桁ミスや多くの隣接入れ替えは、Kbis抄本・請求書ヘッダ・銀行委任状に印刷される前に捕捉されます。完全なSIRETを検証するには、14桁文字列を右からLuhn適用します。
右端の桁は倍にせず、左へ進みながら1つおきに倍にし、2倍が9を超えたら9を引き、重み付き値を合計し、合計が10で割り切れるときLuhn有効です。別に先頭9桁をSIREN接頭辞として同じLuhn規則をその9桁だけに適用します。整形式の事業所番号は、14桁SIRETのLuhnと埋め込みSIRENのLuhnの両方を通るべきです。
アルゴリズムは決定的でローカルです。INSEE登記呼び出しもなく、時計も乱数も使いません。本ツールはSIRETを社名に解決せず、事業所が現在開いていることを証明せず、フランス企業登記にも接続しません。
フランスSIRET・SIRENのLuhn規則下で桁列が整形式であることの証明だけです。汎用税ID形式ツールやカードLuhnチェッカーと比べ、ここでの検索意図は狭いです。14桁事業所番号向けのフランスSIRET Luhn検証が必要な方向けであり、多国形式推測や決済カード用ではありません。
入力の決まりと結果の読み方
エンジンはちょうど14桁を要求します。SIREN接頭辞9桁とNIC5桁で、完全SIRETの末尾チェックデジットを含みます。長さ誤りは14桁が必要であることと送った長さを明示するエラーなので、クライアントフォームは推測なしで明確なメッセージを出せます。
空文字・number欠落・浮動小数・負数・非文字列オブジェクトはLuhn合計の前に失敗し、課金されません。形状が悪い検証タスクの失敗は課金されません。本ツールを実在企業の本物SIRETを捏造する手段にしないでください。
開発では合成または許可されたフィクスチャのみを使い、実事業所番号はプライバシーと商用データ方針の下で保管してください。
フランスSIRETのLuhn検査が実務フローに合う場面
会計・電子請求プラットフォームは仕入先請求書上の14桁SIRETを受け取り、発注・支払・税務アーカイブを書く前に誤入力の事業所番号を拒否する必要があります。マーケットプレイスや物流のオンボーディングは倉庫や店舗ごとにSIRETを収集し、1回の転置で幽霊事業所や後続の銀行・税務失敗が生まれないよう、即時のローカル検査が必要です。
ERP・CRM取込ジョブはCSVやパートナーフィードの各SIRET列を歩き、本バリデータを呼び出し、valid が false の行を隔離します。人間の編集と、SIRENだけ再計算して14桁全体を再検査しない生成器のオフバイワンも捕捉します。どのフローでも契約は同じです。
SIRET検査通過を、INSEEで登録・開設中である証明、会社が支払能力がある証明、本人確認済みの証明とみなさないでください。フランスSIRET・SIRENの重み下でLuhn桁が一貫することの証明にすぎません。
実SIRETは商用識別子として扱い、ログのアクセスを制限し、第三者分析へ完全番号を送らず、監査証跡に不要ならテレメトリでは末尾4桁マスクを優先してください。
活用例
ERPマスタのSIRET列を監査
仕入先・顧客CSVの各14桁SIRETを一括検証し、完全SIRETのLuhnまたはSIREN接頭辞のLuhnが一致しない行を、税務・銀行エクスポート前に隔離します。
よくある質問
フランスのSIRET番号とは何ですか?
14桁の事業所識別子です。先頭9桁が会社のSIREN、末尾5桁がその拠点のNICです。両層がLuhnチェックデジットを使い、入力・読取ミスを保存前に多く捕捉します。
SIRENとSIRETの違いは何ですか?
SIRENは法人を識別する9桁、SIRETは事業所を識別する14桁(SIREN+5桁NIC)です。本機能は完全SIRETを検証し、埋め込みSIREN接頭辞も別途検査します。
長さ誤り・文字・ハイフンではどうなりますか?
形状検証の失敗タスクは課金されません。チェックデジットが誤った14桁は例外を投げず valid false を返します。
検査が2つに分かれているのはなぜですか?
SIRETは会社のSIRENと事業所のNICの2層でできているためです。14桁全体と先頭9桁を別々に確かめることで、誤りが会社の部分にあるのかどうかが分かります。両方に合格したときだけ有効です。
有効なSIRETなら事業所は営業中ですか?
いいえ。チェックディジットを計算し直すだけで、INSEEの名簿は照会しません。事業所が実在するか、営業中か、今もその会社に属しているかは別に確認してください。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/enc/siret-france \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"number":"73282932000074"}'const res = await fetch("https://api.kit.forhosting.com/enc/siret-france", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"number": "73282932000074"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/siret-france",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"number": "73282932000074"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/siret-france", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"number":"73282932000074"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"number":"73282932000074"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/siret-france", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"number": "73282932000074"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.siret_france",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
非数字文字や誤った長さは黙って切り捨てず invalid_input で失敗するため、半端に清浄化した識別子を永続化しません。同じ純粋算術はブラウザで無料、公開API価格でも動き、INSEEや企業登記へのネットワーク照会はなく、チェックサムが通っただけで事業所が稼働中・開設中・不正がないとは主張しません。
フランスSIRET・SIRENのLuhn検査の仕組み
本ツールは siret_luhn と siren_valid を独立に報告し、両方が通ったときだけ valid を true にするため、失敗が事業所文字列全体か会社接頭辞かを切り分けられます。公開スタイルの例 73282932000074 は両検査に通り、末尾桁を反転すると SIREN 接頭辞はそのままで siret_luhn が壊れます。
入力契約・応答フィールド・エラー挙動
number フィールドには0から9の文字だけを送ってください。空白・ハイフン・文字・小数点は非数字入力として invalid_input で拒否され、黙って切り詰めた値が保存に届くことはありません。応答には常に input(正規化14桁)、valid(両Luhnが通ったときのみ true)、siret_luhn(14桁全体のLuhn)、siren(先頭9桁)、siren_valid(その9桁のみのLuhn)、nic(末尾5桁)、length 14、algorithm siret-france-luhn が含まれます。digits・siret・text・value・n・code などの別名も同じペイロード欄として受け付けるため、既に「siret」と呼ぶ統合は改名不要です。時計・乱数源・ネットワークのない pure parse 経路のため、同じJSON本体は無料ブラウザツールと成功リクエストあたり $0.002 のAPIで常に同じJSON結果になります。仕入先フォーム・請求書キャプチャ・ERPロードを、ユーザー・パートナーファイル・OCR段からの完全事業所識別子でゲートするときに本エンドポイントを優先してください。チェックデジットだけが誤った整形式14桁は例外を投げず valid false と siret_luhn false を返すため、バッチは中断せず行を隔離できます。
フランスSIRETのLuhn検査が実務フローに合う場面
サポート担当は顧客が電話で番号を読み上げたりPDFのKbis抄本から貼り付けたりするときに siret_luhn と siren_valid を再計算し、契約や委任状の発行前に誤入力を捕捉します。結合テストは両検査に通る公開スタイルのフィクスチャを固定し、フォームライブラリ・OCR後処理・本APIがずれないようにします。
連携の活用例
請求書取込で仕入先SIRETを検証
OCRやフォームが請求書ヘッダから14桁を送ってきたら本バリデータを呼び、valid が false のとき計上を止め、siret_luhn と siren_valid で事業所列か会社接頭辞のどちらが失敗したかを説明します。
マーケットプレイス・物流オンボーディングのゲート
販売者や倉庫登録で純粋な14桁SIRETを要求し、非数字や長さ誤りは invalid_input で拒否し、両Luhnが通ったときだけ事業所レコードを作成します。
技術的な質問
本ツールはSIRETをどう検証しますか?
number に純粋な14桁文字列をPOSTします。応答は14桁全体の siret_luhn、先頭9桁の siren_valid、両方通ったときだけ true の valid、および siren・nic・length を報告します。
フランスSIRETのLuhn検査は無料ですか?
ブラウザツールは無料でローカル実行です。API呼び出しは公開基本価格 $0.002 の前払いKIT残高を使い、無効入力は課金されません。