Can a 2D Barcode Stop an Expired Product at Checkout?
Yes, if expiry data is encoded, decoded and acted on by the POS. See the stop-sale chain and why Ambition 2027 alone does not require expiry processing.

The short answer
Yes, but the barcode does not stop the sale by itself. A retail 2D barcode can support expiry stop-sale when the required product and expiry data are encoded, the scanner and software decode that data and the retailer's host or POS applies a rule that blocks or flags the sale.
That richer use case goes beyond the minimum Ambition 2027 goal, which is about POS capability to read and process GTIN from supported 2D barcodes. See what Ambition 2027 actually requires retailers to prepare for.
Navigate this page
The stop-sale chain
The useful model is a chain, not a code.
Encoded data → scanner decode → POS or host rule → sale outcome
Each part has a different job.
| Stage | What has to happen | What failure looks like |
|---|---|---|
| Encoded data | The 2D barcode carries GTIN plus the additional data needed for the use case, such as expiry | The scanner has no expiry value to act on |
| Scanner and software decode | The checkout system reads the symbol and extracts the relevant data elements | The symbol may scan but only the GTIN is processed |
| POS or host rule | Retailer logic compares the expiry value with the rule for the product and transaction | The expiry is available but no stop-sale decision is made |
| Operator outcome | The system blocks the item, alerts the cashier or follows the retailer's defined workflow | The information exists without changing the transaction |
GS1's 2D Barcodes at Retail Point-of-Sale Implementation Guideline supports GTIN plus additional data such as batch or lot, serial and expiry, and lists expiry stop-sale, recall and markdown use cases.
The exact encoding semantics are owned by the guide to GS1 Application Identifiers for GTIN, batch, serial and expiry. This page owns the operational chain after those data elements are present.
Recall and granularity are a separate operational question
Expiry is one time-based state. Recall is another operational use case, and it can require a different level of product identification.
A retailer needs to know whether an action applies to every unit of a GTIN, a particular batch or lot, a serialised item or another defined scope. That is why lot, serial and item granularity matter after a product recall.
The broader possibility is clear but should remain bounded.
POSSIBLE: if downstream systems consume the same governed identity and state, expiry and recall information could support more coordinated cross-channel automation.
That does not mean a 2D barcode alone creates that automation. The connected systems still need to understand and act on the same identity and state.
What is established now
The capability is not merely theoretical.
GS1's current retail 2D implementation guideline, release 1.1 ratified in December 2025, describes expiry-based sale prevention as a supported retail use case when systems process the additional data.
There are also named retailer deployments.
Woolworths Australia has reported using 2D barcodes so that checkout systems can alert cashiers when a scanned item is past expiry. GS1 and Woolworths describe this as part of a broader production deployment.
7-Eleven Thailand has reported upgrading labels and equipment so that products are not sold beyond their best-before dates.
These cases matter because they show that the stop-sale mechanism can operate in real retail environments. They are still first-party or mixed case-study evidence. They do not establish universal retailer readiness, the prevalence of the capability or a causal return on investment.
The maturity position is therefore precise:
NOW: expiry-aware stop-sale is standards-supported and demonstrated in named deployments when encoded data, decoding and retailer rules all work together.
The barcode does not make the decision
A barcode is a data carrier. It can make data available to the checkout system.
It does not decide whether an item can be sold.
The retailer's application logic still has to interpret the data and apply a rule. That rule can depend on the type of date, the product, local operating policy and how the retailer wants the till to respond.
This is why "our scanner can read 2D barcodes" is not an adequate acceptance test. A scanner may decode the symbol while the POS only processes the GTIN. The richer data has to reach the application layer and trigger the intended workflow.
The same distinction appears in one-code architecture. Expiry data only becomes action when the POS systems process it. A carrier can support several jobs without every connected system automatically performing all of them.
Ambition 2027 is a lower minimum
GS1's Ambition 2027 transition should not be overstated.
The initial POS goal is global capability to read and process the GTIN from supported 2D barcodes by the end of 2027. It does not require every retailer to process expiry, lot or Digital Link data at checkout.
That means two statements can be true at the same time:
- expiry-aware stop-sale is available and demonstrated now in some deployments;
- Ambition 2027 does not make expiry processing a universal minimum for every retailer.
This is an important implementation distinction. A business cannot assume that a trading partner will act on encoded expiry data simply because that partner is preparing for 2D scanning.
Automated markdown is adjacent, not identical
GS1's retail 2D guidance also describes markdown as a use case for additional data such as expiry.
That is not the same decision as stop-sale.
A stop-sale rule asks whether the product should be allowed through the transaction. A markdown rule asks whether the current price should change as the product approaches a date or another condition.
In this programme, automatic markdowns and richer expiry-aware inventory actions remain EMERGING unless a specific deployment supports a stronger status.
The distinction matters because the barcode still only supplies data. Automated markdown requires separate pricing logic, operational controls and integration with the relevant retail systems.
Do not present the existence of expiry data as proof that a retailer already has those downstream processes in place.
What this does not prove
The evidence supports the mechanism. It does not support several broader claims.
It does not prove that:
- every retailer can currently process expiry data at checkout;
- Ambition 2027 requires all retailers to process expiry, lot or Digital Link data;
- a standards-supported use case is the same as universal deployment;
- named case studies establish industry-wide waste reduction or ROI;
- adding a 2D barcode to packaging automatically changes POS behaviour.
A successful stop-sale journey is therefore an integration result, not a packaging result in isolation.
This is also why measurement needs its own control. If a retailer wants to report the rate at which expiry events are caught, blocked or prevented, it needs the correct population and denominator rather than a headline count. The deeper guide is how to choose denominators for scans, repairs, recalls and resale.
Implementation check
ActivateDigital implementation view: test the whole stop-sale chain end to end. Do not stop at barcode verification.
A practical acceptance sequence is:
- encode a known GTIN and expiry value using the intended production syntax;
- confirm the production scanner reads the actual printed symbol, not only a test image;
- confirm the POS or host receives the additional expiry data, not only the GTIN;
- test dates on both sides of the retailer's rule boundary;
- verify the intended outcome at the till, including cashier messaging or block behaviour;
- test exception handling, updates and any offline or fallback behaviour that matters in the retailer environment;
- measure the outcome against a defined opportunity set rather than treating the number of scans as the denominator.
This is implementation guidance, not a GS1 requirement that every retailer must use the same rule.
It also creates a clean handoff to commerce architecture. If the same product facts have to move into catalogue feeds as well as POS systems, see whether a Digital Product Passport can replace a retailer product feed.
What would change the answer
This page should be revisited if GS1 materially changes its retail POS guidance, if scaled independent deployment evidence changes the current adoption picture or if Ambition 2027 transition guidance expands the minimum processing target.
The current answer remains narrow and useful: a 2D barcode can support expiry stop-sale, but only when the data is encoded, decoded and acted on by retailer systems.
Keep exploring
The questions this page usually raises next.
- CompareNext questionCan a Digital Product Passport replace a retailer product feed?Next: Can a Digital Product Passport replace a retailer product feed?
- CompareNext questionthe right denominator for scans, repairs, recalls and resaleFor the measurement handoff, continue with the right denominator for scans, repairs, recalls and resale.
Sources
Sources checked as at 4 September 2026.
-
Standards body
Does this reach your products?
Give ActivateDigital one product and it works out which obligations apply from the product's own character, and says which it cannot decide.