Building a Mask

Building a Mask

Who Creates Barcode Masks

Barcode masks are created and managed by users with the Retail Manager role in iVendNext Desk. No developer access or technical coding is required. The mask definition interface is a standard form with clearly labelled fields, and the built-in Test Mask tool lets the manager verify that the configuration works correctly before it goes live at any till.


This no-code approach is intentional. Barcode formats can change when a new supplier is onboarded, when a product category is rebranded, or when internal labelling specifications are updated. If creating a new mask required developer involvement, those changes would take days or weeks. With the self-service interface in iVendNext Desk, a retail manager can configure, test, and activate a new mask in a single session.




Creating a New Barcode Mask Record

The process begins by navigating to the Barcode Mask list in iVendNext Desk and creating a new record. The mask form is divided into a header section and a segment detail section.


Mask ID is the unique identifier for this mask. It is user-defined and should be descriptive enough that any manager can recognise what it is for at a glance. For example, PRODUCE01 for a fresh produce mask, or PHARMA-BATCH for a pharmaceutical batch-tracking mask. The Mask ID becomes the document name and must be unique across all masks in the system.


Description is an optional free-text field for a more detailed explanation of what the mask is designed to handle. This is useful when multiple masks cover similar product categories or when masks are reviewed during an audit.


Mask Type determines how the barcode is parsed. Select Fixed Length if every segment in the barcode occupies the same number of characters every time. Select Delimiter if segments are separated by a consistent character and may vary in length. This choice determines which additional fields are required: Fixed Length masks require a total Barcode Length, while Delimiter masks require the Delimiter character.


Start Sentinel is the two-character prefix that identifies which barcodes should be processed by this mask. It must be exactly two characters and must be unique across all active masks in the system. If another active mask already uses the same sentinel, the save will be blocked with a validation error.


Disabled is a flag that allows the mask to be deactivated without deleting it. Disabled masks are completely ignored during barcode scanning. This is useful for masks that are seasonal, temporarily inactive, or being revised before reactivation.





Configuring Segments for Fixed-Length Masks

For a Fixed Length mask, the Barcode Length field specifies the total number of characters in the barcode body — not counting the two-character start sentinel. This total must exactly equal the sum of all segment lengths defined in the detail table.


The detail table — the Mask Segments child table on the form — is where each segment is defined. Segments are added as individual rows, and the system automatically assigns a Mask Order to each row based on the sequence in which they are added. The Mask Order determines the order in which segments are extracted from the barcode — starting immediately after the two-character sentinel and working left to right.


Each segment row requires two things for a Fixed Length mask: the Value Type (what kind of data this segment contains) and the Segment Length (how many characters it occupies).


Alert
The first segment must always be an item identification type — either Item Barcode or Item Code. This is the segment the system uses to look up the item in the item master. Subsequent segments can be Price, Quantity, Serial or Batch, or Skip Characters in any order.


Price and Quantity segments have an additional field: the Factor. The Factor is a scale multiplier that converts the raw integer extracted from the barcode into the actual decimal value. Because barcodes store only integers — no decimal points — the factor is the agreed convention for interpreting the number. A price encoded as 00250 with a factor of 100 becomes $2.50. A quantity encoded as 05000 with a factor of 1000 becomes 5.000 kg. The Factor must be agreed between the retailer and the barcode source (supplier, labelling system, or internal team) to ensure the parsed values are correct.


Skip Characters segments are used for any portion of the barcode that carries no useful data — check digits, filler characters, or padding that exists for technical reasons but is irrelevant to the transaction. These segments are parsed positionally and then discarded.


When the form is saved, the system validates that the sum of all segment lengths equals the declared Barcode Length. If they do not match, the save is blocked with a clear error showing the discrepancy.




Configuring Segments for Delimiter-Based Masks

For a Delimiter mask, there is no Barcode Length field and no Segment Length required for individual segments. Instead, the Delimiter field specifies the single character that separates each segment in the barcode string.


Info

The segment detail table works the same way as for Fixed Length masks in terms of Value Types and Mask Order, but without the length fields. The parser splits the barcode by the delimiter character and maps each resulting token to the segment row at the corresponding position in the Mask Order sequence.


For example, if a barcode is structured as [Sentinel][ItemBarcode];[Price];[Quantity] with a semicolon delimiter, the mask would have three segment rows: Mask Order 1 = Item Barcode, Mask Order 2 = Price (Factor = 100), Mask Order 3 = Quantity (Factor = 1000). When the barcode VA1234567890;00250;05000 is scanned, the sentinel VA is matched to the mask, the remaining string is split by semicolons, and the three tokens are mapped to their respective segment definitions.




The Test Mask Tool

Before activating a new mask, the retail manager should verify the configuration using the Test Mask tool. This tool is available directly on the Barcode Mask form and allows the manager to enter a sample barcode string and see exactly how it would be parsed — without needing to be at a physical POS terminal or to scan a real barcode.


When the manager enters a test barcode and runs the tool, the result shows a segment-by-segment breakdown of the parsing: the raw extracted value for each segment, the Factor applied (for Price and Quantity segments), and the final interpreted value. If the parsing is correct, the manager can save the mask with confidence. If the values are wrong — perhaps because the Factor needs adjustment or the segment lengths are off by one — the manager can correct the configuration and retest without any impact on live scanning.





Managing Existing Masks

Once masks are created, they appear in the Barcode Mask list view in iVendNext Desk with columns for Mask ID, Description, Mask Type, Start Sentinel, Barcode Length, and Disabled status. The list defaults to showing only active masks.


Info
Masks can be edited, duplicated, enabled, or disabled from the list or from the individual form. If a mask needs to be temporarily taken out of service — for example, while a supplier changes their barcode format — it can be disabled without deletion. Disabled masks remain in the system for reference and can be re-enabled at any time.


Warning
Deleting a mask is only possible if no items are currently assigned to it. If one or more items reference the mask, the delete operation is blocked with an explanatory message. The correct approach in that scenario is to reassign or clear the mask from all affected items first, or to simply disable the mask if permanent removal is not required.




Keeping Masks Current

Barcode formats are not static. Supplier barcode specifications change, new product lines are introduced with different formats, and internal labelling systems evolve. The Barcode Mask configuration in iVendNext Desk is designed to be maintained as an ongoing operational task rather than a one-time technical setup.


Retail managers should treat the Barcode Mask list as a live configuration asset — reviewing it when scanning issues are reported, updating it when new supplier formats are introduced, and disabling obsolete masks when they are no longer needed. The Test Mask tool makes this maintenance low-risk: any change can be validated before the updated mask affects live scanning at the till.




    • Related Articles

    • Understanding DocTypes - The Building Blocks of iVendNext

      Overview DocTypes are the backbone of iVendNext workflows. They define how data is stored, organized, and shown—whether it's Sales Invoices, Inventory, or Projects. This comprehensive guide will help you: ✔ Understand what DocTypes are and why they ...
    • Masks at the Lane

      What Cashiers Experience From a cashier's perspective, scanning a masked barcode is indistinguishable from scanning any other barcode. There is no extra step, no confirmation prompt, and no visual indicator that a mask was applied. The cashier scans ...
    • Barcode Masks

      The Problem with Complex Barcodes Most retail barcodes do one thing: identify an item. A cashier scans a barcode, the system looks up the item code, and the price and quantity come from the item master. This works well for standard packaged goods ...
    • NumPad Controls: Optimizing Numeric Input for Transactions

      What Is Num Pad Control? A Num Pad Control is a numeric keypad—physical or on-screen—used to enter numbers. Why It Matters in iVendNext POS: Fast Transaction Entry: It helps users quickly input quantities, prices, discounts, and return details. ...
    • Creating Custom Display Controls for Branding and Promotions

      Overview This article walks through creating promotional displays, loyalty program interfaces, and branded transaction screens. 1. Strategic Applications of Custom Displays 1.1 Customer-Facing Promotions Rotating banner ads for special offers ...