Scan barcodes from other systems

Define custom barcode patterns so that ION can understand barcodes from other systems

By default, ION expects a specific format for internally defined barcodes, but you can also scan barcodes from other systems with some basic configuration.

This can only be setup through the API currently. Let's use the below example to explain how to setup ION.

Example

In this example, you have an inventory barcode from another system that follows a pattern similar to a GS1 barcode.

That pattern looks like:

(01) <Part number> (17) <Expiration date> (10) <Serial number>

ION uses Regular expressions (RegEx), the standard for string pattern matching in software, to define the barcode pattern.

Converting this to a regular expression, the pattern for this example would be:

\(01\) (?P<part_partNumber>.*) \(17\) .* \(10\) (?P<serialNumber>.*)

This RegEx website can be used for testing. The below snippet shows how you can validate your pattern with test barcode text.

Now that the pattern is defined, it's time to input it into ION. Use the GraphQL explorer in ION to add the pattern via the API.

Note: If you have included escape characters in your RegEx pattern, make sure to include a second \ when inputting the expression into the API. These should show as double back slashes \\. This is necessary to meet JSON input requirements.

Here's that mutation in text if you'd like to copy from this example.

mutation CreateBarcodePattern($input: CreateBarcodePatternInput!) {
    createBarcodePattern(input: $input) {
        barcodePattern {
          id
          _etag
          entityType
          expression
        }
    }
}
{
  "input": {
    "entityType": "PARTS_INVENTORY",
    "expression": "\\(01\\)(?P<part_partNumber>.*)\\(17\\).*\\(10\\)(?P<serialNumber>.*)"
  }
}

You can also use the below query to find all barcode templates that exist in your company's ION instance.

{
  barcodePatterns {
    edges {
      node {
        expression
        entityType
        id
        _etag
      }
    }
  }
}

After you execute the mutation, your company can scan barcodes from other systems and ION will find the correct corresponding object. To test out this functionality before implementing it in production, create test QR codes with a website like Cognex or QR-Code-Generator.

Check out the below snippet that finds the appropriate inventory with part number EX-PART-001 and serial number 1 from a scan.

If the barcode scan is matched by multiple items in ION, the user will be presented with a list of options to choose from. Below shows a scan that matches 2 inventory items sharing the same part number/lot number combination.

Last updated