ISBN-13チェックディジット
12桁の978030640615のチェックディジットは7で、完全なISBN-13は9780306406157になります。バーコードを印刷する前に書籍番号を完成させたり、書店のシステムに入る前に13桁のISBNを確かめたりできます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 数
- 978030640615
- 計算モード
- Compute
- 入力
- 978030640615
- チェックディジット
- 7
- チェックディジット付き
- 9780306406157
現代の書籍や多くのメディア商品は、13桁の国際標準図書番号 ISBN-13 で識別されます。先頭3桁は GS1 のブックランド接頭辞(通常 978 または 979)、中間桁は登録グループ・登録者・刊行物を符号化し、末尾の1桁がチェックディジットです。これにより、カタログ・書店システム・マーケットプレイス掲載に届く前に、1桁の入力ミスやスキャン誤りを検出できます。
ISBN-13チェックディジットの計算方法
ISBN-13 は常に13桁で、小売包装で使われる EAN-13 / GTIN-13 商品バーコードと構造上同一です。3桁の GS1 接頭辞(書籍ではほぼ 978 または 979)、登録グループ要素、登録者(出版社)要素、機関規則により長さが変わる刊行要素です。13桁目がチェックディジットです。
計算では、1始まりの位置で左から右へ12桁を走査し、奇数位置の桁に1、偶数位置の桁に3を掛けて積を合計し、チェックディジットを(10 − その和 modulo 10)modulo 10 とします。余りが0ならチェックディジットは0になります。同等に、チェックディジットを含む13桁全体は、同じ左から右の重みの下で加重和が10の倍数でなければなりません。
これは GTIN-8、GTIN-12(UPC-A)、GTIN-13(EAN-13 / ISBN-13)、GTIN-14 で使われる同じ mod-10 族であり、固定13桁のブックランド形と 978/979 接頭辞だけが検索者にとって ISBN-13 を特定的にします。
アルゴリズムは決定的かつローカルで、ISBN 機関への照会・ネットワーク呼び出し・時計は使いません。本ツールは純粋な数字列の受付以外に ISBN-10 を ISBN-13 へ変換せず、登録グループのハイフン付けもせず、有効なチェックサムがタイトルの ISBN 機関登録を意味するとも主張しません。
ISBN-13 チェックディジット規則の下で数字列が正しく形成されていることだけを示します。
ISBN-13チェックディジットが活きる実業務
出版社やカタログ担当は、接頭辞に加え登録グループ・登録者・タイトルからなる12桁の内部書誌番号を受け取り、カバー・ジャケット・ステッカーに EAN-13 バーコードを印刷する前に公式の ISBN-13 チェックディジットを付与する必要があります。
書店の POS や入荷アプリはカウンターで13桁コードを検証し、1回の転置が幽霊タイトルや在庫不一致を生まないようにします。
図書館やアグリゲータのデータ品質ジョブは MARC・ONIX・CSV エクスポートの各 ISBN-13 列を走査し、validate を呼んで valid が false の行を隔離し、人手編集と、旧 ISBN-10 を正しい変換なしに出す生成器のバグの両方を捉えます。どの業務でも契約は同じです。
通過した ISBN-13 チェックをタイトル所有権・機関登録・正しいハイフン区分の証明と見なさないでください。
活用例
カタログと ONIX エクスポートの ISBN-13 列を監査する
PIM・図書館ロード・パートナー CSV の13桁 ISBN を一括検証し、チェックディジットが再計算した期待値と一致しない行を隔離します。
よくある質問
ISBN-13チェックディジットとは何ですか?
ISBN-13 バーコードの13桁目で、左から重み1と3を交互にした mod-10 加重和で計算され、1桁の入力・スキャン誤りを保存や印刷の前に多くの場合検出します。
長さ不正・文字・ハイフンではどうなりますか?
失敗した検証タスクは課金されません。送信前にハイフンを除いてください。
ISBN-13のチェックディジットはどう計算しますか?
最初の12桁を左から順に、1と3を交互に掛けて合計します。10からその合計を10で割った余りを引いた数がチェックディジットで、10になった場合は0です。
正しいISBN-13なら本は登録済みですか?
いいえ。チェックディジットが合っていれば、13桁の計算上のつじつまが合っていると分かるだけです。ISBNの登録機関には照会しないため、番号が本に割り当てられているかは分かりません。
978と979の接頭辞は何を表しますか?
書籍を示すGS1の接頭辞で、ほとんどのISBN-13はどちらかで始まります。その後の桁は、登録グループ、出版者、個々の出版物を表します。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/enc/isbn13 \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"number":"978030640615"}'const res = await fetch("https://api.kit.forhosting.com/enc/isbn13", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"number": "978030640615"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/isbn13",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"number": "978030640615"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/isbn13", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"number":"978030640615"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"number":"978030640615"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/isbn13", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"number": "978030640615"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.isbn13",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
本機能は12桁のペイロードに対する標準の ISBN-13 mod-10 規則(左から重み1と3を交互)を実装し、チェックディジットと完成した13桁バーコードを返すか、13桁全体を valid フラグと期待桁で検証します。非数値入力や長さ不正は黙って整形せず invalid_input で失敗するため、中途半端な ISBN を保存しません。同じ純算術がブラウザでは無料、公開 API 価格では自動化パイプライン向けに動作します。
ISBN-13チェックディジットの計算方法
先頭12桁が書誌番号のペイロードを構成します。多シンボロジのバーコード検証器と比べ、ここでの検索意図は狭く、12桁ペイロード向けの ISBN-13 チェックディジット計算機を必要とする方向けであり、一般的な UPC やケース GTIN チェッカーではありません。
入力契約、モード、エラー動作
チェックディジットなしの 978-0-306-40615 を貼る場合は、先にクライアント側でハイフンを除くか、純粋な数字形を送ってください。長さ不正はモードと送った長さを明示するエラーで、compute は12、validate は13です。クライアントフォームは推測せず「12桁が必要」と表示できます。空文字・number 欠落・無効な mode は加重和の前に失敗し、課金されません。12桁本体から書誌番号を発行・完成させるときは compute、カタログ取込・POS スキャン・マーケットプレイス掲載を完全な13桁 ISBN-13 バーコードにゲートするときは validate を選んでください。number フィールドには 0 から 9 の文字だけを送ってください。空白・ハイフン・文字・小数点は非数値入力として invalid_input で拒否され、黙って削られた値がストレージに届かないようにします。既定の compute モードではエンジンがちょうど12桁を要求し、check_digit を1文字の文字列で返し、バーコード印刷やカタログ保存に使える13桁 ISBN-13 を with_check として返します。validate モードではちょうど13桁が必要で、末尾桁が再計算した expected_check_digit と一致すると valid が true になり、常に payload(先頭12桁)、check_digit、expected_check_digit、length 13 を含めます。digits・isbn・code などの別名も同じペイロード欄として受け付けるため、「isbn」と呼ぶ統合のリネームは不要です。時計・乱数・ネットワークのない純粋な parse のため、同じ JSON 本体は無料ブラウザツールと成功リクエストあたり $0.002 の API で常に同じ JSON 結果になります。
ISBN-13チェックディジットが活きる実業務
Eコマースやマーケットプレイスのオンボーディングフォームは expected_check_digit を再計算し、販売者が末尾を誤った ISBN を貼ったときに分かりやすい訂正を示せます。結合テストは 9780306406157 のような既知フィクスチャで with_check を固定し、バーコードライブラリと本 API が乖離しないようにします。標準 ISBN-13 重みの下で mod-10 桁が12桁ペイロードと一致することだけを示します。
連携の活用例
表紙バーコード用に12桁の書誌番号を完成させる
12桁ペイロードで compute モードを呼び、with_check を保存し、13桁 ISBN-13 を EAN-13 バーコードプリンタまたはカタログレコードへ渡します。
入口でスキャンまたは入力された ISBN-13 を検証する
スキャナやフォームが13桁を送ったら validate を呼び、valid が false のとき検索を止め、expected_check_digit を示して1桁の打ち間違い修正を助けます。
技術的な質問
この API で ISBN-13 チェックディジットを計算するには?
number をちょうど12桁にし mode を compute(または mode 省略)で POST します。応答に check_digit と with_check(完全な13桁 ISBN-13)が含まれます。
完全な13桁 ISBN-13 を検証するには?
13桁の文字列と mode validate で POST します。応答に valid、check_digit、expected_check_digit、payload(末尾を除く桁)が含まれます。
ISBN-13チェックディジットツールは無料ですか?
ブラウザツールは無料でローカル実行されます。API 呼び出しは公開の基本価格 $0.002 で前払い KIT 残高を使い、無効入力は課金されません。