Barcode Requirement Scenarios

Barcode Requirement Scenarios

❗️

Barcode Best Practices

Before you start developing barcode requirements, please read through each scenario to determine the best fit for your use case.

There are 4 different supported scenarios.

(1) Allow All Barcodes

  • Behavior: Allows workers (drivers) to provide any number of barcodes or no barcodes. This is the least restrictive method.
  • Implementation: Provide no object members inside the barcodes array
"barcodes":[]

(2) Restrict to a fixed number of Barcodes

  • Behavior: Any barcodes can be scanned and the number of barcodes scanned must match what's configured. This is moderately restrictive.
  • Implementation: Provide object members inside the barcodes array containing no data variables, and enforce the number of barcodes by using "blockCompletion":true

📘

Note

blockCompletion default value is false, so it may be used to customize this scenario further. For example, require 2 scans but allow up to 4 scans.

"barcodes":[
  {"blockCompletion":true},
  {"blockCompletion":true}
]

(3) Restrict to included Barcodes, don’t block task completion if missing

  • Behavior: ONLY matching barcodes will be accepted, but all included barcodes do not need to be scanned to complete the task. This is more restrictive, but gives the worker (driver) the ability to move on to the next task without outside intervention.
  • Implementation: Provide object members inside the barcodes array containing data.
"barcodes":[
  {"data": "aGVsbG8gd29ybGQh"},
  {"data": "aG93IGFyZSB5b3US"}
]

(4) Restrict to included Barcodes, block task completion if missing

  • Behavior: ONLY matching barcodes will be accepted and all included barcodes must be scanned to complete the task. This is the most restrictive method, and requires a dispatcher to Force Complete if the driver is unable to complete all scans.
  • Implementation: Provide object members inside the barcodes array containing data and enforce the barcodes by using "blockCompletion":true
"barcodes":[
  {"data": "aGVsbG8gd29ybGQh", "blockCompletion":true},
  {"data": "aG93IGFyZSB5b3US","blockCompletion":true}
]

🚧

Invalid barcode data

Invalid barcode data provided (a 400 error) will be returned if any non-array barcode data is passed in. This is considered invalid data.