ブラジルCNPJチェックディジット
112223330001を入力するとチェックディジットは81で、CNPJ全体は11222333000181になります。14桁を貼り付ければ、末尾の2桁が正しいかも確かめられます。請求書や取引先登録、データの整理に便利で、ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 数
- 112223330001
- 計算モード
- Compute
- 入力
- 112223330001
- チェックディジット
- 81
- チェックディジット 1
- 8
ブラジルのCNPJ(Cadastro Nacional da Pessoa Jurídica)は、14桁の法人識別番号が転置や1桁の誤入力なく入力・保存されたことを示す2つのチェックディジットで終わります。本機能は、すべてのCNPJに使われるReceita Federal公式のmod-11規則を実装します。12桁のベースが本登録と支店を示し、固定の重み列と11未満の剰余規則で末尾2桁が導かれます。12桁のベースだけをお持ちで、フォーム・請求書・マスタデータ取込用に両チェックディジットが必要なときはcomputeモードを、パートナー・ERP・ユーザーが14桁の完全なCNPJを送るときはvalidフラグと期待ペアが必要なvalidateモードをご利用ください。
ブラジルCNPJチェックディジットの計算方法
句読点なしで書くとき、CNPJは常に14桁です。先頭8桁は法人に割り当てられた本登録番号、続く4桁は支店(本社は通常0001)、末尾2桁はチェックディジットで自由には選べません。第1チェックディジットは、12桁のベースに左から重み5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2を掛け、積の合計を11で割った剰余を写像します。
剰余が2未満なら0、そうでなければ11から剰余を引いた値です。第2チェックディジットは、第1桁を12桁ベースに付け足し、13個の重み6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2で同じmod-11写像を繰り返します。14桁全体はまさにこの末尾2桁を持つ必要があります。
アルゴリズムは決定的でローカルです。Receita Federalへのネットワーク呼び出しも、カタログ照会も、時計も使いません。本ツールは企業が稼働中かを照会せず、表示形式XX.XXX.XXX/XXXX-XXを登録状態へ展開せず、有効なチェックサムが特定の税制への認可を意味するとも主張しません。
公式mod-11規則の下で桁列が整形式であることだけを証明します。多国税務ID検証と比べ、ここでの検索意図は狭いです。12桁ベース用のブラジルCNPJチェックディジット計算が必要な方であり、一般的なCPFやRFCチェッカーではありません。
CNPJチェックディジットが現実の業務に合う場面
財務・マスタデータ担当は社内の12桁法人ベースを受け取り、無効な税務IDを拒否する請求書・銀行支払ファイル・マーケットプレイス出品者プロフィールへ書く前に、公式CNPJチェックディジットを付与する必要があります。買掛ポータルは仕入先オンボーディングで14桁CNPJを検証し、1回の転置が幽霊仕入先や支払不一致を生まないようにします。
データ品質ジョブはCRMやERPエクスポートのCNPJ列をすべてvalidateモードで呼び、validがfalseの行を隔離し、人手の編集と生成器のバグの両方を捉えます。どの業務でも契約は同じです。合格したCNPJチェックをReceita Federalの有効登録や特定税制の証明とみなさないでください。
標準重みの下で2つのmod-11桁が12桁ベースと一致することだけを示します。
活用例
ERP・CRMエクスポートのCNPJ列を監査する
仕入先・顧客ファイルの14桁CNPJを一括検証し、チェックペアが再計算した期待値と一致しない行を隔離します。
よくある質問
ブラジルCNPJチェックディジットとは何ですか?
14桁CNPJの末尾2桁で、連続する2回のmod-11加重和で計算され、識別番号が保存されたり請求書に印刷される前に入力・取込の誤りを通常検出します。
桁数誤り・文字・句読点ではどうなりますか?
同一数字のベースはcomputeで拒否、同一数字の完全CNPJはvalidateでvalid falseになります。失敗した検証タスクは課金されません。
CNPJの数字のまとまりはそれぞれ何を表しますか?
最初の8桁は法人の基本登録番号、次の4桁は事業所を表し、通常は本社が0001です。最後の2桁はチェックディジットで、自由に決めることはできません。
CNPJが正しければ、その会社は営業中ですか?
そうとは限りません。検証で分かるのは、数字がモジュラス11の規則に合っていることだけです。ブラジル連邦歳入庁には問い合わせないので、登録が有効であることの証明にはなりません。
同じ数字だけが並んだCNPJは受け付けられますか?
受け付けられません。1つの数字をくり返しただけの本体は計算の段階で拒否され、そのような14桁の番号は検証で無効と判定されます。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/enc/cnpj-brazil \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"number":"112223330001"}'const res = await fetch("https://api.kit.forhosting.com/enc/cnpj-brazil", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"number": "112223330001"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/cnpj-brazil",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"number": "112223330001"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/cnpj-brazil", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"number":"112223330001"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"number":"112223330001"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/cnpj-brazil", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"number": "112223330001"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.cnpj_brazil",
"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またはvalid falseとなり、中途半端な税務IDを保存しません。同じ純粋な算術がブラウザでは無料、APIでは公開価格で動作します。
入力契約・モード・エラー挙動
computeモードが既定です。validateモードはちょうど14桁を要求します。桁数誤りは、送ったモードと長さを名指す明示エラーです(computeは12、validateは14)。クライアントフォームは推測せず「12桁が必要」と表示できます。空文字・number欠落・無効なmode・computeでの同一数字12桁ベースは、加重和を保存用に信用する前に失敗し、課金されません。法人識別子を生成・補完するときはcomputeを、ユーザーやパートナーファイルからの完全CNPJで照会・取込を制御するときはvalidateを優先してください。numberフィールドには0から9の文字だけを送ってください。空白・ドット・スラッシュ・ハイフン・文字・小数点は非数値入力としてinvalid_inputで拒否され、黙って整形された値が保存に届きません。エンジンはちょうど12桁を要求し、check_digitsを2文字の文字列、check_digit_1とcheck_digit_2を個別に、with_checkを印刷・永続化できる14桁CNPJとして返します。末尾2桁が再計算したexpected_check_digitsと一致し、14個のゼロのような同一数字の連続でないときvalid trueを報告します。validateは常にpayload(先頭12桁)、与えられた/期待されるチェックペア、repeated_digits、length 14を含みます。digits・cnpj・codeなどの別名は同じペイロード欄に受け付け、「cnpj」と呼ぶ既存連携の改名は不要です。時計・乱数・ネットワークのない純粋なparse経路のため、同じJSON本体は無料ブラウザとAPIの成功リクエストあたり$0.002で常に同じJSON結果になります。
CNPJチェックディジットが現実の業務に合う場面
EC・B2B登録フォームはexpected_check_digitsを再計算し、ブラジル企業が末尾ペアを誤入力して貼り付けたときに分かりやすい修正を示せます。結合テストは11222333000181のような既知フィクスチャでwith_checkを固定し、請求ライブラリと本APIがずれないようにします。
連携の活用例
請求用に12桁CNPJベースを完成させる
12桁ベースでcomputeモードを呼び出し、with_checkを保存し、14桁CNPJをNFe・銀行送金・マーケットプレイス出品者プロフィールへ渡します。
入力時に手入力・取込の完全CNPJを検証する
フォームやCSVが14桁を送ったらvalidateモードを呼び、validがfalseなら保存を止め、expected_check_digitsを示して1桁の誤入力修正を助けます。
技術的な質問
このAPIでCNPJチェックディジットを計算するには?
numberをちょうど12桁、modeをcompute(またはmode省略)でPOSTします。応答にcheck_digits、check_digit_1、check_digit_2、with_check(完全な14桁CNPJ)が含まれます。
14桁の完全なCNPJを検証するには?
14桁の文字列とmode validateでPOSTします。応答にvalid、check_digits、expected_check_digits、payload(末尾ペアを除く桁)、repeated_digitsが含まれます。
ブラジルCNPJチェックディジットツールは無料ですか?
ブラウザツールは無料でローカル実行です。API呼び出しは公開の基本価格$0.002で前払いKIT残高を使い、無効入力は課金されません。