What COOP 2 of 5 is
COOP 2 of 5 is one of several historical "2 of 5" family variants (alongside the separately-covered Industrial, IATA, Matrix, and Datalogic 2 of 5), each sharing the same 2-out-of-5-wide-bars encoding idea but with a different bar-width table. bwip-js reaches it by forcing the shared 2-of-5 encoder's own "version" option to "coop" -- confirmed directly: bwipp_coop2of5 sets `options.version = "coop"` and delegates entirely to bwipp_code2of5(), the same delegation shape already used for Matrix/Industrial/IATA 2 of 5.
Generate it now
Enter a digit-only value to see a live preview.
Valid input
The value must be 1 to 500 digits (bwipp.code2of5emptyData rejects an empty value, bwipp.code2of5inputTooLong rejects longer input); any non-digit character is rejected (bwipp.code2of5badCharacter, "Code 25 must contain only digits").
Key options
Supported options include includetext, includecheck, and height (all real options of the shared 2-of-5 encoder, genuinely reaching it because coop2of5 forwards the caller's live options unchanged). Real, literal defaults: includetext false, includecheck false (no check digit is computed or drawn unless requested).
Output and printing
Export SVG for vector-precise label artwork or PNG for a quick proof.
Common uses
COOP 2 of 5 is named, per bwip-js's own symbol listing, for the retail cooperative movement historically associated with this bar-width table. Like the other 2-of-5 family members, it has been largely superseded by Code 128 and GS1 barcodes in modern retail systems, but legacy equipment and processes in a handful of regions still specify it by name.
Example
See the live preview above, seeded with a bwip-js-verified valid value.
Size guidance
Symbol width grows directly with digit count -- each digit uses the same fixed bar-width pattern, plus a fixed start/stop pattern at each end.
Troubleshooting
A rejected value usually means it is empty, longer than 500 digits, or contains a non-digit character.
Related formats
Related formats: the separately-covered Matrix, Industrial, IATA, and Datalogic 2 of 5 generators (the same encoding idea, different bar-width tables).
FAQ
Do I need to supply a check digit myself?
No, unless you want one -- with includecheck off (the default), your digits are encoded exactly as given. With includecheck on, bwip-js computes and appends a Code 25 Mod-10 check digit for you.