フランスSIREN Luhnチェック
本体732 829 32のチェックディジットは0で、SIRENは732 829 320になり、打ち間違えた732 829 321は不合格になります。8桁から計算するか9桁全体を検証でき、空白や点の区切りも使えます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- SIREN (企業番号)
- 73282932
- 計算モード
- Compute
- 入力
- 73282932
- チェックディジット
- 0
- チェックディジット付き
- 732829320
SIREN 番号は、フランスで登記されたすべての法人および個人事業主に割り当てられる9桁の識別子です。請求書、Kbis 抄本、企業ディレクトリ、多くの銀行・調達フォームに記載されます。9桁目は先頭8桁から計算される Luhn mod-10 チェックディジットであり、1桁の誤入力や隣接転置は、登記所照会の前にチェックサムを崩すことがよくあります。どちらもネットワーク呼び出しや INSEE・Sirene 登記照会なしの同一の決定的な算術です。
フランスの SIREN とは何か、Luhn チェックディジットの仕組み
SIREN(Système d’identification du répertoire des entreprises)は、行政・税務・商業の目的でフランスの企業または起業家を一意に識別する9桁のコードです。先頭8桁は公式ディレクトリが付与する本体で、9桁目は Luhn アルゴリズムで計算されるチェックディジットです。
口座番号や決済カードでも使われる mod-10 の倍加系と同じ族です。右から左へ、1つおきに桁を2倍し、結果が9を超えたら9を引き、重み付き桁を合計し、合計が10で割り切れるようにチェックディジットを選びます。誰かが 732 829 320 を 732 829 321 と打つと、重み付き合計は0で終わらず検証は失敗します。
仕入先オンボーディング、電子請求、紙の Kbis の OCR でよくある打ち込み誤りを検出します。本ツールは任意の空白やドットを除いた後の純粋な SIREN 桁に標準 Luhn を適用します。Sirene を照会せず、企業が稼働中であることも、事業所(14桁の SIRET)の区別も、法人形態の付与もしません。
多国税務 ID 形式チェッカーと比べ、ここでの意図はフランス SIREN の Luhn チェックディジットに特化しています。長さ境界、グループ表示、アルゴリズム名は、汎用の国切替ではなくフランスの企業識別子ワークフローに合わせています。
チェックディジットの計算と9桁 SIREN の検証方法
フランス文書でよくあるように空白やドットで区切っても構いません(例:732 829 32 または 732.829.320)。前後の空白は取り除かれます。mode の既定は compute です。
mode validate は末尾チェックディジットを含む完全な9桁番号を期待します。空文字、siren 欠落、不正な mode、誤った長さ(compute で8桁でない、validate で9桁でない)は倍加の前に失敗し、課金されません。
既知の8桁本体から SIREN を組み立てるときは compute を、利用者・パートナーファイル・スキャンしたラベルが完全番号を供給し、Sirene や内部マスタ照会の前にブールゲートが必要なときは validate を選んでください。
請求・KYC・データ品質フローでのフランス SIREN チェックの位置づけ
電子請求・会計システムはすべての法的文書に顧客または仕入先の SIREN を保存します。オンボーディング時の1桁の誤入力で税務データが誤った相手に送られたり、後のコンプライアンス検査が失敗したりします。フランスの販売者を取り込む調達・マーケットプレイスは、外部登記を呼ばずに Luhn を再計算し、OCR ノイズや部分キャプチャを早期に落とせます。
KYC メタデータとしてフランス企業識別子を受け付ける銀行や決済ゲートウェイは、より深い審査の前の第一フィルタとして同じ9桁規則を使えます。
汎用 Luhn ツールを既に公開している製品チームでも、フランス企業 ID 欄には本 SIREN 専用機能を使い、長さ境界・任意グループ化・アルゴリズム名をドメインに合わせ、14桁 SIRET 文字列を SIREN として受け入れないようにしてください。どのフローでも契約は同じです。
合格した SIREN Luhn チェックを、企業が存在する・Sirene で稼働中・請求権限がある・特定の商号と一致する、という証拠とみなさないでください。フランス SIREN の Luhn アルゴリズムの下で桁列が一貫していることだけを示します。
活用例
パートナー・請求ファイルの SIREN 列を監査する
CSV 取込の各 SIREN を一括検証し、チェックディジットが再計算した期待値と一致しない行を隔離します。
よくある質問
フランス SIREN の Luhn チェックディジットとは何ですか?
SIREN の9桁目で、先頭8桁から Luhn mod-10 で計算され、全体の重み付き桁合計が10で割り切れるようにし、多くの1桁誤りと転置を検出します。
文字・桁数違い・SIRET の場合はどうなりますか?
compute は8桁、validate は9桁が必要です。14桁の SIRET は受け付けません。事業所には SIRET 専用ツールを使ってください。
SIRENのチェックディジットはどう計算しますか?
右から数えて1桁おきに2倍し、9を超えた結果からは9を引いて、すべてを合計します。チェックディジットは合計が10で割り切れるように選ばれます。732 829 32なら0で、732 829 320になります。
空白や点で区切ったSIRENを貼り付けられますか?
はい。フランスの請求書やKbis抄本によくある、732 829 320や732.829.320のように空白や点で区切った形を受け付けます。文字やハイフン、そのほかの記号は黙って消さずにエラーにします。
有効なSIRENなら会社は実在しますか?
いいえ。チェックディジットを計算し直すだけで、Sireneの名簿は照会しません。会社が実在するか、営業中か、請求書を発行できるかは別に確認する必要があります。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/enc/siren-france \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"siren":"73282932"}'const res = await fetch("https://api.kit.forhosting.com/enc/siren-france", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"siren": "73282932"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/siren-france",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"siren": "73282932"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/siren-france", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"siren":"73282932"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"siren":"73282932"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/siren-france", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"siren": "73282932"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.siren_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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
本機能は8桁のペイロードからフランス SIREN の Luhn チェックディジットを計算するか、末尾桁を含む完全な9桁 SIREN を検証し、文字や句読点を黙って削除するのではなく不正入力を報告します。ブラウザで無料で使うか、公開価格で KIT API を呼び出してください。
フランスの SIREN とは何か、Luhn チェックディジットの仕組み
任意長を受け付ける汎用 Luhn ユーティリティと比べ、本機能は SIREN が要求する8桁ペイロードと9桁全体の形を強制するため、14桁の SIRET や短い口座断片を会社 ID として誤って受け付けません。
チェックディジットの計算と9桁 SIREN の検証方法
0から9の桁を含む siren フィールドを送ります。文字、主な区切りとしてのハイフン、その他の句読点、混在英数字は invalid_input の非数値入力として拒否され、黙って整形された値を受け付けることはありません。チェックディジットなしのちょうど8桁を渡すと、エンジンは1文字の check_digit、その桁を含む完全な9桁文字列 with_check、請求書やフォームで使われる XXX XXX XXX 形式の formatted を返します。全体の重み付き合計が10で割り切れるとき valid true を報告し、常に check_digit、8桁ペイロードだけから再計算した expected_check_digit、末尾を除いた payload、一貫した表示用の formatted を含みます。経路は時計・乱数・ネットワークのない純粋な parse のため、同じ入力は無料ブラウザツールと API で常に同じ JSON になります。成功リクエストあたり $0.002 で、仕入先の一括取込、オンボーディングフォーム、ETL ジョブを、専用ティア交渉なしにゲートできます。
請求・KYC・データ品質フローでのフランス SIREN チェックの位置づけ
入口の validate モードは valid が false のとき保存を止め、expected_check_digit を示して記録書き込み前にフォーム修正を助けます。
連携の活用例
仕入先・顧客フォームの SIREN 欄をゲートする
利用者が完全な9桁 SIREN を送ったとき validate モードを呼び、valid が false なら保存を止め、expected_check_digit を示して ERP 記録書き込み前の1桁修正を助けます。
ID の完成・発行時にチェックディジットを計算する
8桁本体から compute モードを呼び、with_check または formatted を保存し、印刷やエクスポート前に新しい SIREN 文字列が正しい末尾 Luhn 桁を持つようにします。
技術的な質問
この API で SIREN チェックディジットをどう計算しますか?
siren に8桁のペイロード(空白・ドット任意)と mode compute(または mode 省略)で POST します。応答に check_digit、with_check、XXX XXX XXX 形式の formatted が含まれます。
完全な9桁 SIREN をどう検証しますか?
完全な9桁文字列と mode validate で POST します。応答に valid、check_digit、expected_check_digit、payload、formatted が含まれます。
フランス SIREN の Luhn チェックツールは無料ですか?
ブラウザツールは無料でローカル実行です。API 呼び出しは公開の基本価格 $0.002 で前払い KIT 残高を使い、不正入力は課金されません。