Skip to content
barcoder

Standards/kix

KIX

Type4-State Postal
PrimaryNL
Completeness78%medium

Overview

KIX (Dutch Klant index, "customer index") is a four-state postal barcode used by PostNL (formerly TPG Post / Royal TPG Post), the national postal service of the Netherlands [1, 2]. It is a slightly modified variant of Royal Mail's rm4scc: KIX keeps the same four-state bar alphabet but omits the start bar, stop bar and checksum that RM4SCC uses [1]. KIX encodes a Dutch delivery address — postal code plus house number and optional addition — and is printed below the address block [1, 2].

History

KIX was introduced by the Dutch postal operator (then TPG Post / Royal TPG Post, now PostNL) as a national adaptation of Royal Mail's rm4scc customer barcode for automated sorting of bulk mail [1, 2]. (A precise public introduction date was not established from the sources consulted.)

Technical specification

Four-state bar structure. KIX uses the same four bar states as rm4scc [2]:

  • Tracker (short, middle band).
  • Ascender (tracker + upward extension).
  • Descender (tracker + downward extension).
  • Full (ascender + descender).

Character set. Digits 0–9 and uppercase letters A–Z [2, 5].

Encoded data. A KIX symbol typically encodes a Dutch postal code (four digits + two letters), a house number and an optional house-number addition [2]. The house number and any suffix are separated by the letter X [1].

Differences from RM4SCC. KIX deliberately strips three RM4SCC features [1, 5]:

  • No start/stop bars — KIX has no special framing bars.
  • No checksum — KIX omits the modulo-6 check character.

Because KIX has neither framing nor a check digit, it relies on the surrounding application context (fixed field layout, the address block above it) for reliable reading. KIX requires a quiet zone of at least 2 mm on all sides and is printed at roughly 20–24 bars per 25.4 mm [5-scandit].

Use cases

  • Automated sorting and routing of Dutch bulk mail by PostNL [2, 5].
  • Encoding postal code + house number + addition beneath the printed address to enable machine sorting to the delivery point [1, 2].

Implementations

  • OkapiBarcode — Java, ~394 stars, active 2025; supports the Dutch Post KIX Code (noted as RM4SCC without the check digit) [3-okapi].
  • jkctech/ManualKIX — Python, small project; a manual KIX decoder for Dutch post / PostNL barcodes [3-manualkix].
  • antonscheffer/as_barcode — PL/SQL, ~27 stars; generates KIX alongside RM4SCC and Australia Post 4-State [3-asbar].
  • productdevbook/etiket — TypeScript, ~409 stars, active 2026; zero-dependency four-state engine covering KIX, RM4SCC, Australia Post and Japan Post [3-etiket].

Comparison

KIX is the clearest example of the four-state lineage simplifying rm4scc. It uses the identical four bar states and the same 0–9 / A–Z alphabet, but throws away RM4SCC's start bar, stop bar and checksum, and adopts the X-separator convention for house number and suffix [1]. This makes KIX the leanest member of the family: where the australia-post-4-state and mailmark 4-state codes add a Format Control Code / data fields and Reed–Solomon error correction, and the japan-post-4-state code adds control characters and a check digit, KIX removes structure. By contrast, Singapore Post uses RM4SCC entirely unaltered [1].

Fun facts

  • KIX has no checksum at all — a rare choice among postal barcodes — so a misread bar cannot be self-detected by the symbol; reliability comes from the fixed address-form context in which it is printed [1].
  • The house number and any suffix are joined with a literal X (e.g. encoding 123 + A as 123XA), a quirk specific to KIX among the four-state codes [1].

Status

In use. KIX remains PostNL's four-state customer barcode for Dutch mail automation and is supported by mainstream barcode SDKs and open-source libraries [2, 5].

Sources

1 RM4SCC (KIX variant section) — Wikipedia — Wikipedia 2 KIX Code — Dynamsoft Barcode Reader SDK — Dynamsoft 3 OkapiBarcode — GitHub (woo-j) 4 ManualKIX — Manual KIX decoder for Dutch post / PostNL — GitHub (jkctech) 5 KIX 4-State Customer Code — Barcode Guide — Seagull Scientific 6 KIX Barcode Symbology — Scandit

Deployments

No country reports mention this standard by name.

source · docs/standards/kix/index.md