# GTIN check digit calculator

- Human page: https://happytails.ai/en/data-tools/gtin-check-digit-calculator/
- Markdown: https://happytails.ai/en/data-tools/gtin-check-digit-calculator.md
- Structured JSON: https://happytails.ai/agents/en/data-tools/gtin-check-digit-calculator/index.json
- Visibility: public

## Tool capabilities

| Property | Value |
| --- | --- |
| Tool ID | `gtin-check-digit-calculator` |
| Category | data-tools |
| Implementation | Registered implementation. Registration alone is not a production-quality guarantee. |
| Browser execution | Automatic updates after valid input or file selection. |
| Browser processing | Browser; see tool notes for network behavior. |
| HTTP API | Not callable through HTTP. |
| Browser-agent interface | run_current_tool |

### Implementation notes

One identifier per line, up to 10,000 records and 1,000,000 characters. Select the complete GTIN length explicitly: a 12-digit string could be a GTIN-12 or a GTIN-13 body. Spaces and leading zeros are preserved. Invalid records remain in the report. Arithmetic validity does not confirm GS1 allocation or ownership. Runs on your device.

### Inputs and settings

Text input: GTIN strings.

Example or placeholder shown in the interface (not a validated fixture):

```text
One identifier per line
```

Choose the full length in the settings. Input and output identifiers stay literal strings. Results update as you type. Up to 1,000,000 characters.

| Setting | Meaning | Control type | Default | Constraints |
| --- | --- | --- | --- | --- |
| `mode` | Input includes check digit | select | "With check digit" | Allowed: With check digit, Without check digit |
| `length` | Complete GTIN length | select | "13" | Allowed: 8, 12, 13, 14 |
| `exportMode` | Spreadsheet formula handling | select | "Protect formulas" | Allowed: Protect formulas, Preserve original cells |

### Browser-agent workflow

1. Open the human page in a browser that supports WebMCP.
2. Discover the interface exposed by that page; use its actual schema.
3. Select files on the page first when the tool requires files.
4. Call `run_current_tool` with valid input and settings.
5. Inspect the returned result or error and the displayed output. Retrieve files from the displayed download links.

Calls do not automatically copy or download results. Browser permissions still apply. Interface availability alone is not proof of successful execution.

### Planning specification

One explicit complete length per run removes the ambiguity between a GTIN-12 and a 12-digit GTIN-13 body. Arithmetic checks do not establish GS1 allocation, ownership or product identity. Maximum 1,000,000 input characters, 10,000 records and 100,000 result cells. CSV output is bounded to 4,000,000 characters.

This describes intended requirements. Use the implementation notes, interface schema and observed output to determine current support.

### Complete machine-readable capability record

```json
{
  "id": "gtin-check-digit-calculator",
  "category": "data-tools",
  "built": true,
  "requirements": "One explicit complete length per run removes the ambiguity between a GTIN-12 and a 12-digit GTIN-13 body. Arithmetic checks do not establish GS1 allocation, ownership or product identity. Maximum 1,000,000 input characters, 10,000 records and 100,000 result cells. CSV output is bounded to 4,000,000 characters.",
  "implementation": {
    "fields": [
      {
        "key": "mode",
        "label": "Input includes check digit",
        "value": "With check digit",
        "type": "select",
        "values": [
          "With check digit",
          "Without check digit"
        ]
      },
      {
        "key": "length",
        "label": "Complete GTIN length",
        "value": "13",
        "type": "select",
        "values": [
          "8",
          "12",
          "13",
          "14"
        ]
      },
      {
        "key": "exportMode",
        "label": "Spreadsheet formula handling",
        "value": "Protect formulas",
        "type": "select",
        "values": [
          "Protect formulas",
          "Preserve original cells"
        ]
      }
    ],
    "live": true,
    "background": true,
    "presentation": "metrics",
    "note": "One identifier per line, up to 10,000 records and 1,000,000 characters. Select the complete GTIN length explicitly: a 12-digit string could be a GTIN-12 or a GTIN-13 body. Spaces and leading zeros are preserved. Invalid records remain in the report. Arithmetic validity does not confirm GS1 allocation or ownership. Runs on your device.",
    "experience": {
      "automatic": true,
      "single": false,
      "inputMaxLength": 1000000,
      "inputMode": "text",
      "label": "GTIN strings",
      "placeholder": "One identifier per line",
      "help": "Choose the full length in the settings. Input and output identifiers stay literal strings. Results update as you type. Up to 1,000,000 characters.",
      "action": null
    },
    "mode": "automatic",
    "interactive": false
  },
  "execution": "Browser interface",
  "api": null,
  "browser_agent": {
    "supported": true,
    "name": "run_current_tool",
    "discovery": "WebMCP on the human page in a supporting browser",
    "verification": "See audit/API-AUDIT.md; availability is not verification"
  }
}
```

## Page guide

Validate GTIN-8, GTIN-12, GTIN-13 and GTIN-14 identifiers or compute a missing check digit while preserving leading zeros.

### How to use GTIN check digit calculator

1. Choose whether each input already includes its check digit.
2. Choose the complete GTIN length and paste one identifier per line.
3. Review every record, including invalid entries, then download CSV and JSON.

How can we improve this tool?

Report a problem or share an idea.

Please leave out private information. Your message and the tool name go to our team via PostHog.

## Useful next steps

- [Product feed validator](https://happytails.ai/en/data-tools/product-feed-validator/) ([Markdown](https://happytails.ai/en/data-tools/product-feed-validator.md))

- [Product variant matrix generator](https://happytails.ai/en/data-tools/product-variant-matrix-generator/) ([Markdown](https://happytails.ai/en/data-tools/product-variant-matrix-generator.md))

- [SKU naming generator](https://happytails.ai/en/data-tools/sku-naming-generator/) ([Markdown](https://happytails.ai/en/data-tools/sku-naming-generator.md))

## Preserve identifiers as text

Leading zeros belong to the identifier. Import GTIN columns as text in spreadsheet applications. The GTIN-14 padded form is shown only for valid or successfully completed identifiers.

### Local processing and exports

Processing runs on your device. CSV downloads quote every cell and protect formula prefixes by default. JSON preserves original strings and includes the report and result tables. Spreadsheet import settings can still change identifiers; import them as text.
