# EAN-13 Barcode Checksum Validator

> EAN-13 Barcode Checksum Validator is a paid API for AI agents from hcrb.in, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-12).

Validates an EAN-13 barcode number using offline deterministic checksum verification, returning validity, reason, and normalized form.

## Facts

- Endpoint: POST https://hcrb.in/v1/tools/ean13-check/call?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-12
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/ean-13-barcode-checksum-validator-36ecdd59
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_FpO8y99ZRPG373KuFT4ia

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability ean-13-barcode-checksum-validator-36ecdd59 -d '<json body>'
```

Example prompt: Can you check if this EAN-13 barcode is valid: 5901234123457? I need to know if the checksum passes and what country it's from.

## When to prefer this

Choose this endpoint when you need a fast, offline, deterministic checksum validation of EAN-13 barcodes without any external database lookups or ML inference. It is ideal for bulk data hygiene, pre-import validation, or any scenario where you need a reliable structural check of a barcode at minimal cost ($0.005/call) with no privacy concerns since no data leaves to third-party enrichment services. Prefer it over scraping-based or registry-lookup validators when deterministic correctness and low latency matter most.

## Known failure modes

- Invalid or non-EAN-13 input returns valid=false with a descriptive reason
- Non-numeric or wrong-length input rejected with reason explaining format issue
- Network or payment failure if x402 micropayment is not properly handled
- After 3 free daily calls, subsequent calls require USDC payment via x402 protocol

## How this service works

Offline deterministic checks (no ML, no scraping) for business identifiers and rental due-diligence, paid per call via x402 (gasless EIP-3009 USDC on Base). Checksum-verifiable (IBAN, LEI, VAT, ABA, ISBN, SEDOL…) vs format-only (EIN, IFSC, SWIFT/BIC…) — every response returns a scope field. Non-custodial, signed receipts. First 3 calls/day free.

## Output

Returns a JSON object with: a 'valid' boolean indicating whether the EAN-13 checksum passes, a 'reason' string explaining the result (e.g. 'checksum valid' or specific failure reason), a 'normalized' form of the barcode, a 'country' string if detectable, a 'scope' field indicating whether this is a checksum-verifiable or format-only check, and a 'tool' identifier string.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "code"
   ],
   "properties": {
    "code": {
     "type": "string",
     "description": "13-digit EAN-13 barcode; spaces/dashes allowed."
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "schema": {
  "type": "object",
  "required": [
   "valid",
   "reason"
  ],
  "properties": {
   "tool": {
    "type": "string"
   },
   "scope": {
    "type": "string"
   },
   "valid": {
    "type": "boolean"
   },
   "reason": {
    "type": "string"
   },
   "country": {
    "type": "string"
   },
   "normalized": {
    "type": "string"
   }
  }
 },
 "example": {
  "valid": true,
  "reason": "checksum valid"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/ean-13-barcode-checksum-validator-36ecdd59/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from hcrb.in](https://www.zero.xyz/host/hcrb.in/llms.txt)
