GTINチェックディジット
先頭桁629104150021を入れると、チェックディジットは3で、GTIN-13は6291041500213になります。ラベルや取引先、マーケットプレイスに届く前に、商品コードの打ち間違いを見つけられます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 桁数
- 629104150021
- チェックディジット
- 3
- GTINコード
- 6291041500213
- データ長
- 12
- GTINの桁数
- 13
Global Trade Item Number(GTIN)は、消費パック・内装パック・物流単位にEAN・UPC・ITFバーコードとして印刷されるGS1識別子です。末尾は先頭桁から計算するチェックディジットで、1桁の誤入力やスキャナ置換を、コードの保存・印刷・マーケットプレイス送信の前に多くの場合はじきます。本GTINチェックディジット計算機は公式のGS1剰余10規則を適用します。チェックディジットは、その和を10の倍数にする値です。GTIN-8、GTIN-12、GTIN-13、GTIN-14の先頭桁(チェックなし)を送ると、チェックディジット、完成GTIN、重み付き和、標準長ならファミリーが返ります。
GS1のGTINチェックディジットの計算方法
GTINは常に、ブランドが選ばない1桁のチェックディジットで終わります。それは直前の先頭桁の純粋な関数です。先頭桁の右端から始めます。
重み付き積を足して重み付き和を得ます。チェックディジットは10からその和の10を法とした余りを引いた値で、余り0なら10ではなく0になるよう再度10を法とします。チェックを付けたあと、完成コードに同じ右からの3-1パターンを適用すると10の倍数になります。
これがスキャナや倉庫システムが行う受付検査です。決済カードのLuhnではありません。Luhnは右から1つおきを2倍し9超を分割しますが、GS1は3か1の厳密な重みだけで分割しません。
計算は局所的で決定的です。GS1登録照会もネットワークも時計も使いません。本ツールは企業プリフィックスの割当もバーコード描画もGS1登録の証明もしません。
すでにお持ちの先頭桁から仕様が求めるチェックディジットを返すだけです。
GTINチェックディジット計算機が実務で効く場面
カタログとPIMの担当は社内SKUから企業プリフィックスと品目参照の列を受け取り、小売・マーケットプレイス・出荷ラベルへ出す前に公式GS1チェックディジットを付けます。小売入荷アプリはスキャンしたGTINの先頭桁からチェックを再計算し、1回の転置が架空SKUや事前出荷通知との在庫ずれを生まないようにします。
ECのオンボーディングでは貼り付け欄の横に期待チェックを示し、売手が打った末尾が一致しないと送信を止められます。後の出品却下より安く済みます。データ品質ジョブはカタログ出力の各GTIN列を歩き、末尾を外して再計算し、保存済みチェックがもはや一致しない行を隔離します。
人手の編集と、ファミリー長を誤って埋めた生成器のずれの両方を捉えます。GTIN-14専用検証や多種バーコード検査と比べ、ここでの検索意図は人が打つ汎用フレーズです。先頭桁からのGTINチェックディジットであり、14桁物流モードでもISBN専用経路でもありません。
どの流れでも契約は同じです。合格したチェックをブランド所有やGS1登録の証明と見なさないでください。
活用例
入荷やオンボーディングで誤入力GTINを見つける
スキャンまたは貼り付けたGTINの先頭桁からチェックディジットを再計算し、末尾が一致しないときは格納や出品を止めます。
カタログとEDI出力のGTIN列を監査する
保存済みGTINの末尾を外し、本計算機で再計算し、チェックディジットがGS1重み付き和と一致しなくなった行を隔離します。
よくある質問
GTINチェックディジットとは何ですか?
Global Trade Item Numberの末尾1桁で、GS1剰余10の重み付き交互和から求めます。1桁の入力・スキャン誤りを、コードの保存や印刷の前に多くの場合検出します。
どのGTIN長に対応していますか?
同じGS1規則がGTIN-8、GTIN-12、GTIN-13、GTIN-14を覆います。
入力に文字・空白・ハイフンが含まれるとどうなりますか?
エンジンは句読点を黙って削らないため、ハイフン付き貼り付けが誤った商品コードになることはありません。検証失敗は課金されません。
GTINチェックディジット計算機は無料ですか?
ブラウザツールは無料で端末内で動きます。無効な入力は課金されません。
手元のGTINが正しいかはどう確かめますか?
最後の1桁を外して残りを入力し、出てきたチェックディジットと印刷された数字を比べます。違えば、入力か読み取りの誤りです。正しいコードは、右から3と1の重みを掛けて足すと10の倍数になります。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/fin/gtin-check-digit \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"digits":"629104150021"}'const res = await fetch("https://api.kit.forhosting.com/fin/gtin-check-digit", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"digits": "629104150021"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/fin/gtin-check-digit",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"digits": "629104150021"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/fin/gtin-check-digit", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"digits":"629104150021"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"digits":"629104150021"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/fin/gtin-check-digit", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"digits": "629104150021"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "fin.gtin_check_digit",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_digits | 32 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
ペイロード右端から重み付き交互和を数え、最右の先頭桁を3倍し、左へ1と3を交互に掛けます。数字以外の文字は黙って削らずinvalid_inputで失敗するため、ハイフン付き貼り付けが誤った商品コードになることはありません。同じ純粋な算術が無料ブラウザツールと前払いAPI経路を支えます。
GS1のGTINチェックディジットの計算方法
GS1はGTIN-8、GTIN-12(UPC-A)、GTIN-13(EAN-13)、GTIN-14に同一の剰余10規則を使うため、本計算機はペイロードだけでどのファミリーも完成できます。ペイロード最右桁を3倍、その左を1倍、その次を3倍と交互に続け、すべての先頭桁に重みを付けます。典型的なペイロード長はGTIN-8が7桁、GTIN-12が11桁、GTIN-13が12桁、GTIN-14が13桁で、一致するとfamily欄にその名が付きます。
入力契約、応答の形、エラーの扱い
欄は0から9の文字の文字列である必要があります。空文字や欠落欄も、重み付き和の前に失敗します。既定例629104150021は12桁のGTIN-13本体でチェックは3、したがってgtinは6291041500213になります。検証失敗は課金されません。短い数字列に留めてください。JSON本文のdigitsには、計算したいチェックを含めず、GTINの先頭文字だけを入れてPOSTしてください。number、text、gtin、code、payloadなどの別名を受け付けるため、既にその名で話す連携は改名不要です。先頭のゼロは意味があります(UPC-A本体は0で始まることが多い)ので、ペイロードが0始まりになり得る場合はJSON数値ではなくJSON文字列を送ってください。空白・ハイフン・文字・句読点は非数字であり、黙って削らずdigits欄を名指ししたinvalid_inputで失敗します。成功時はdigitsをエコーし、check_digitを0から9の1文字文字列、gtinを完成識別子(ペイロード+チェック)、payload_lengthとgtin_lengthを報告し、監査向けにweighted_sumを含め、algorithmをgs1-mod-10にします。ペイロード長が7・11・12・13のときfamilyはそれぞれGTIN-8、GTIN-12、GTIN-13、GTIN-14です。それ以外の長さでは名前を捏造せずfamilyを省略します。時計・乱数・ネットワークのない純粋parseのため、同じJSON本文は無料ブラウザと成功リクエストあたり$0.002のAPIで常に同じJSON結果になります。本エンドポイントはチェックディジットを計算するだけで、商品検索もバー描画も行いません。
GTINチェックディジット計算機が実務で効く場面
EAN-13・UPC-A・ITF-14を出す印刷現場はテストでgtinを固定し、バーコードライブラリと本APIがずれないようにします。標準GS1重みのもとでmod-10桁がペイロードと整合することだけを示します。
連携の活用例
ラベルと出品用にGTINを完成させる
先頭のペイロード桁を送り、check_digitとgtinを保存し、完成識別子をEAN-13・UPC-A・ITF-14ラベルプリンタやマーケットプレイス出品フォームへ渡します。
技術的な質問
このAPIでGTINチェックディジットを計算するには?
digitsに先頭ペイロードだけ(チェックなし)を入れてPOSTします。典型長は7、11、12、13です。応答はcheck_digitとgtin(完成識別子)を含みます。