GS1 North American Coupon Generator

Generate GS1 North American Coupon barcodes in your browser with live preview, validation, and PNG/SVG export.

Advanced options
Enter a value to see a live preview.
Options

These map directly to real generator options; anything not listed here is available under Advanced options above.

What GS1 North American Coupon is

GS1 North American Coupon encodes GS1 Application Identifier 8110, the structured data format US and Canadian retail point-of-sale systems use to validate and apply digital/paper coupon offers. bwip-js parses and validates the AI 8110 structure itself, then delegates its own symbol drawing entirely to bwipp_databarexpandedstacked() -- confirmed directly.

Generate it now

Enter a value in the form "(8110)<data>" to see a live preview.

Valid input

The value must consist of exactly one Application Identifier, 8110 ("A GS1 North American Coupon should consist of a single AI (8110)"). Its data is a nested, variable-length-indicator structure, and bwip-js enforces the ENTIRE chain at render time (via its own real GS1 "lintcouponcode" linter, confirmed directly in source and confirmed empirically by rendering several deliberately-malformed variants): a numeric-only string ("Coupon not numeric"); a 1-digit GCP (Global Company Prefix) length indicator, 0-6 ("Coupon GCP length indicator must be 0-6"), giving a GCP of that many digits plus 6; a fixed 6-digit Offer Code; a 1-digit Save-Value length indicator, 1-5 ("Coupon Save Value length indicator must be 1-5"), giving that many Save Value digits; a 1-digit 1st Purchase Requirement length indicator, 1-5 ("Coupon 1st Purchase Requirement length indicator must be 1-5"), giving that many digits; a 1-digit 1st Purchase Requirement Code, which must be 0-4 or 9 ("Coupon 1st Purchase Requirement Code must be 0-4 or 9"); and a 3-digit Family Code. A working real example is "(8110)10614141123456205110999": GCP-length-indicator 1 gives a 7-digit GCP "0614141," followed by 6-digit Offer Code "123456," Save-Value-indicator 2 gives Save Value "05," 1st-Purchase-Requirement-indicator 1 gives value "1," 1st-Purchase-Requirement-Code "0," and 3-digit Family Code "999."

Key options

Supported options include includetext. Real, literal default is false (no human-readable coupon-identification text drawn).

Output and printing

Export SVG for vector-precise coupon artwork or PNG for a quick proof.

Common uses

GS1 North American Coupon appears on printed and digital coupons in the US and Canada, letting point-of-sale systems automatically identify the issuer, offer, discount amount, and any purchase requirements at checkout.

Example

See the live preview above, seeded with a real, structurally-valid AI 8110 value.

Size guidance

The rendered symbol is a 2D DataBar Expanded Stacked matrix, not a single-row linear barcode -- its exact dimensions depend on the total encoded data length.

Troubleshooting

A rejected value usually means more than one Application Identifier is present, a non-8110 AI, a non-numeric character, an out-of-range length indicator (GCP: 0-6, Save Value/1st Purchase Requirement: 1-5), an out-of-range 1st Purchase Requirement Code (must be 0-4 or 9), or a truncated field.

Related formats

Related formats already in this catalog: GS1 DataBar Expanded (Batch 4), the general-purpose GS1 AI symbology this capability's own delegate function is a stacked variant of.

FAQ

What does each part of the AI 8110 data mean?

In order: a 1-digit indicator giving your Global Company Prefix's length (0-6, meaning 6-12 digits), that many GCP digits, a fixed 6-digit Offer Code, a 1-digit indicator giving the Save Value's length (1-5), that many Save Value digits, a 1-digit indicator giving the 1st Purchase Requirement's length (1-5), that many digits, a 1-digit 1st Purchase Requirement Code (0-4 or 9), and a 3-digit Family Code.

Can I include more than one coupon offer in a single barcode?

No -- this capability requires exactly one AI (8110) and rejects a value containing a second Application Identifier ("A GS1 North American Coupon should consist of a single AI (8110)").