# Detect Duplicate Barcodes

In the mobile app go to: Settings → Accept duplicate barcodes and pick the behavior that matches your workflow:

  • Ask every time Prompts you whenever a scanned value already appeared during the current session. Good for mixed scenarios where some duplicates are legitimate.

  • Always accept All scans are sent, even if repeated. Fastest option; no filtering.

  • Discard adjacent Ignores an immediate repeat of the previous barcode (protects against the scanner reading the same label twice while still pointing at it).

  • Discard scan session Each distinct barcode value is accepted only once for the whole session. Later repeats are silently ignored.

# Advanced (Output Templates)

Need fine-grained logic (eg. block duplicates but show a warning popup)? Use an Output Template with:

  • A first BARCODE component (the value you want to keep unique)
  • A JAVASCRIPT_FUNCTION storing already-seen values in localStorage
  • An IF + ENDIF pair to conditionally display an ALERT (“Duplicate detected – scan a different code”)

Because logic runs on the device, no server is required. This pattern lets you: prevent duplicates, alert the operator, and skip output for the duplicate row.

Read the full guide on How to detect duplicated barcodes with Output Templates.