Welcome! Is the controlled substance log barcode failing audit-scanning?
Joe B.
Reviewed for technical accuracy
Specialities: Pharmacy IT, Barcode systems, GS1/UDI, Rx inventory, Omnicell/Pyxis, Compliance (DEA/State Board)
Fix failed barcode scans on controlled substance logs — NDC/GTIN mismatch, GS1-128/Code 128, DataMatrix, scanner setup
Quick answer: the accepted fix
Accepted fix when a controlled substance log barcode fails audit-scanning: output GS1-128/DataMatrix with GTIN (AI 01), Lot (10), Expiry (17); configure scanners to send AIs and FNC1; meet ISO print quality (quiet zone, x-dimension, contrast). Map NDC→GTIN, then test end-to-end so your perpetual inventory reconciles for DEA/state board.
Why controlled substance log barcodes fail audits (NDC/GTIN, GS1 parsing, print quality)
Most failures come from NDC formatting (10→11-digit zero-padding), scanners that don’t transmit Application Identifiers or FNC1, and sub-spec labels (quiet zone, x-dimension, contrast). Using GS1-128 or GS1 DataMatrix with proper GTIN/Lot/Expiry fields and verified print quality prevents audit-scanning issues and supports diversion controls.
How to verify before the auditor arrives
Run a test pack: scan manufacturer bottle → print log label → scan into perpetual inventory → create waste/return entry. Confirm the system parses GTIN (01), Lot (10), Expiry (17). Use an ISO verifier (15416/15415) and keep the report in your audit binder.
Audit-ready barcode — quick checklist
Get parsing right, then get print right — both are required for a clean audit trail.
Quick path: enable GS1-128/DataMatrix → send AIs + FNC1 → map NDC↔GTIN → print at 300–600 DPI with proper quiet zones → verify to ISO grade C or better → lock scanner profiles until after the audit. This sequence resolves the majority of controlled substance log barcode failures.
Disclaimer: This information is AI-generated and intended for general guidance only. For advice specific to your environment, please consult a verified expert on Whizz-Tech before making decisions.
Getting Started Is Easy
Ask for help, 24/7
Members enjoy round-the-clock access to 12,000+ verified Experts, including tech support, mechanics, vets, and more.
Expert will respond in minutes
We match you with an Expert who specializes in your situation. Talk, text, or chat — whichever you prefer.
Save time & money
No scheduling hassles or expensive consults. Membership can save you significant time and money each month.
FAQ
Why does our controlled substance log barcode fail audit-scanning?
Usually because of NDC→GTIN mismatches, scanners not sending Application Identifiers and FNC1, or labels below ISO grade (quiet zone/x-dimension). Fixing GS1 data and print specs resolves most failures.
Do we need GTIN if our system stores NDC?
For GS1 labels, yes — encode GTIN (AI 01) and map NDC↔GTIN in your system. You can still store/display NDC while scanning GTIN with Lot (10) and Expiry (17).
Which barcode type is best for audit trails — GS1-128 or DataMatrix?
Both are compliant; GS1-128 is 1D and widely supported; GS1 DataMatrix fits small vials. The key is including AIs (01/10/17/21) and meeting ISO/IEC print quality.
Enterprise tip: Omnicell/Pyxis and pharmacy system don’t match
Standardize GS1 parsing and NDC↔GTIN mapping across systems, send structured data (API/HL7) instead of raw keystrokes, and lock scanner profiles until after the audit.
| Symptom | Likely cause | Quick fix |
|---|---|---|
| Scanner beeps but fields are wrong | No AIs/FNC1; raw Code 128 instead of GS1-128 | Enable GS1 parsing; transmit AI 01/10/17 + FNC1 |
| NDC loses a leading zero | 10→11 digit padding not applied | Normalize NDC or scan GTIN (01) and map back |
| Label scans on bottle, not on log | Quiet zone/contrast/x-dimension out of spec | 300–600 DPI, quiet zone ≥10×, verify ISO grade ≥ C |
| Duplicates or double posts | HID debounce/VPN latency | Add debounce, set CR/TAB once, prefer API over wedge |
Step-by-step (rapid remediation)
- Change label template to GS1-128 (or GS1 DataMatrix) with GTIN (01), Lot (10), Expiry (17).
- Enable scanner options: Transmit AIs, Send FNC1, suffix
CR(andTABif needed). - Normalize NDC↔GTIN mapping (compute check digit, pad to 11 digits).
- Set printer to 300–600 DPI, correct darkness; enforce quiet zones; verify ISO grade ≥ C.
Note for mixed environments (ADC, carts, macOS)
- On carts/ADCs (Omnicell/Pyxis), push a single standardized scanner profile with GS1 parsing on.
- macOS/HID: ensure input method doesn’t swallow
TAB/CR; test with both 1D and 2D symbols.
Sources
- GS1 — Barcodes & Application Identifiers
- FDA — National Drug Code (NDC) basics
- ISO/IEC 15416/15415 — Barcode print quality (1D/2D)
Filed under: Printers
Related articles
- Printer says “Offline” and won’t print — what should I check first?
- My printer “forgot” my Wi-Fi — the saved network is gone
- Printer Wi-Fi settings reset by itself — why did it forget my network?
- My printer keeps popping up “Set up Wi-Fi” again — why won’t it stay connected?
- Why does my printer need Wi-Fi setup again? It was working yesterday.
- My printer Wi-Fi setup keeps failing — what am I doing wrong?
- Printer Wi-Fi setup is confusing — why won’t it connect to my network?
- Printer Wi-Fi setup is too complicated — what do I check first without messing it up?