QR Decode
Decode a QR

Local barcode tool

MSI Plessey Generator

Be the first to rate this page.

Generate an MSI Plessey numeric barcode and calculate its selected check digit locally.

Generated and read back in this browser. Nothing entered here is uploaded.

Processed locally

Your input stays in this browser.

Ready to verify

Review the result before saving or printing.

No expiry

Static codes keep working without a subscription.

MSI Plessey is numeric and configurable

MSI Plessey encodes decimal digits for inventory and warehouse use. Unlike a GTIN, its check digit is not one universally fixed business rule: implementations may use no check, modulo 10, modulo 11, or combinations such as mod 10 then mod 10. This page uses a single documented modulo-10 check so the output is reproducible. Confirm the scanner and host configuration before adopting it for a legacy process.

The Luhn-style calculation

For 1234567, take alternate digits from the right, double them, and add the decimal digits of any doubled value: 1 + 4 + 3 + 8 + 5 + 12 + 7 becomes 40 after splitting 12 into 1 and 2. The check is the amount needed to reach the next ten, so it is 0. The completed value is 12345670. The calculator displays the check rather than hiding it in an unexplained bar pattern.

Why doubling is not GTIN weighting

GTIN alternates multiplication by 3 and 1. MSI's common mod-10 variant uses alternating doubling and digit reduction, similar to the Luhn method. Applying a retail GTIN rule to an MSI label can yield a convincing but wrong final digit. The two formats should be kept apart in documentation, scanner setup and database fields even when both source values contain only digits.

What the bars represent

Each MSI digit is represented by a four-bit pattern with start and stop guards. The symbol has no inherent product-allocation authority; it is a transport for the number your operational system already owns. The local renderer uses the standard numeric symbology and reads its own output back before offering an SVG download. It does not infer whether 1234567 is a bin, asset, order or internal SKU.

Choose a check policy explicitly

If your scanner expects mod 11 or two check characters, do not print a single-mod-10 label because its quiet, clean appearance will not fix a data-contract mismatch. Find the documented configuration from the legacy system or run a controlled test set. This tool is intentionally explicit about its mod-10 policy instead of pretending that every barcode named MSI Plessey follows one checksum convention.

A useful real-number audit

Suppose a warehouse record is 89012. From the right, double 1 and 9: 2 and 18 contribute 2 and 9 after reduction; the remaining digits contribute 2, 0 and 8. The sum is 21, so the check digit is 9 and the printed sequence is 890129. Recompute from the source record, not from a blurred label image, when resolving a discrepancy.

Print geometry matters

MSI is a one-dimensional symbol with narrow elements that are vulnerable to dot gain and low-resolution thermal printing. Preserve clear margins, avoid non-uniform resizing, keep bars perpendicular to the direction of motion for the intended scanner, and test the actual exported artwork. A scanner may read a large on-screen SVG while failing the smallest adhesive label in a cold warehouse.

Different from Pharmacode

MSI Plessey communicates an arbitrary numeric identifier and may carry a configured check digit. Pharmacode represents a small decimal package-control value through bar widths and is usually decoded in a pharmaceutical production context. Both are numeric, but Pharmacode's value range, bar logic and operational purpose make it unsuitable as an MSI replacement.

Local validation has a defined boundary

The browser checks digits, calculates the selected mod-10 result, renders the symbol and reads it back before download. That protects against an accidental typo in this form or a renderer regression. It cannot validate a company inventory assignment, certify a scanner's symbology enablement, or override a partner specification requiring another MSI checksum variant.

Confirm the legacy variant

Ask for a known-good label and the scanner configuration before selecting a checksum option. A label whose data digits match can still be rejected if one system expects mod 11 while another expects mod 10. Include the full expected transmitted string in the test plan. The page's mod-10 output is a transparent reference value, not a claim that every device sold as MSI Plessey uses that variant.

Avoid numerical coercion

Inventory numbers can begin with zero, and a spreadsheet may convert 0012345 into 12345 without warning. Treat the source as a character string from import through label generation. The barcode itself can encode the shorter result perfectly, which makes the loss easy to miss until it points at another bin or item. The displayed completed value should be compared character by character with the approved source.

Separate a scan failure from a check failure

A failed mod-10 result is a data-entry problem; a symbol that will not scan is a reproduction or scanner-configuration problem. Do not compensate for a bad print by changing the check digit, and do not compensate for a rejected check digit by making the bars wider. Record which test failed and retain the SVG and printer settings. That evidence keeps legacy support from becoming a sequence of guesses.

Keep the verification boundary clear

Save the verified source, the selected checksum variant and one scanned production sample. Those three facts make a later discrepancy diagnosable without trying to infer an inventory value from a damaged linear pattern.

Enter your values, review the result, then use it with confidence.

Rate this page

Be the first to rate this page.