You are standing in the parking lot, staring at a receipt that is mostly abbreviations. There is a letter next to every price, a 12 digit number next to every item, a cluster of codes near the bottom that starts with ST# and ends with something called TC#, and a barcode underneath all of it. The total looks right, probably, but you would not bet money on it, because nothing else on the slip makes enough sense to check.
That confusion, nearly all of it, traces back to a single sorting problem. Some codes follow real, published standards that apply everywhere, and some were made up by one retailer's software and mean something completely different across the street. The sections below sort one group from the other.
The Item Codes: UPC, PLU, and SKU
Three different numbering systems show up in the item lines of a receipt, and they are not interchangeable.
UPC (Universal Product Code) is a 12 digit barcode standard managed by GS1, the international body that assigns product identification numbers. [1] The long string of digits next to a box of cereal or a bottle of shampoo is almost always a UPC, and it is universal in the literal sense, the same number on a tube of toothpaste in Texas will match the one on the same tube in Maine.
PLU (Price Look Up) codes are the four or five digit numbers on produce stickers, managed by the International Federation for Produce Standards and in use since 1990, with over 1,500 codes currently assigned. [4] A four digit code means conventionally grown (bananas are 4011), and a five digit code starting with 9 means organic (organic bananas are 94011). [4] A prefix of 8 was once reserved for genetically modified produce, but IFPS retired that designation in 2015, and it was never used at retail. [4]
SKU (Stock Keeping Unit) is a retailer's own internal inventory code. Unlike UPCs and PLUs, SKUs are private to each chain, which means a SKU from Home Depot tells you nothing at Lowe's.
| Code type | Who assigns it | Digits | Standardized across stores |
|---|---|---|---|
| UPC | GS1 (global) | 12 | Yes, the same number means the same product everywhere |
| PLU | IFPS (global) | 4 or 5 | Yes, for fresh produce only |
| SKU | The individual retailer | Varies | No, each chain invents its own |
You buy a bag of organic lemons at a grocery store. The receipt shows PLU 94053 next to the weight and price. That 94053 is the IFPS assigned code for organic lemons, the same number at any store that uses the PLU system. The six digit number on the shelf tag underneath the lemons, on the other hand, is the store's internal SKU, and it means nothing outside that chain.
The Tax Letters Next to Each Price
People argue about these letters online more than about almost anything else on a receipt, and a fair amount of what circulates is wrong, partly because the real answer is not especially satisfying.
The single letters sitting to the right of each item's price (N, X, O, T, F, and a handful of others) are flags that the register software uses internally, mostly for tax rate assignment, sometimes for benefit program eligibility like SNAP or FSA. What each letter stands for, though, is decided by each retailer's own POS configuration. [2] Nobody at any major U.S. chain has ever put out a reference sheet, which is why every guide you find online is stitched together from employee observations and customer experiments rather than from anything the company actually released.
A few of the more commonly reported meanings, with the honesty they deserve about confidence level:
- On Walmart receipts, N is consistently reported to mean the item was not taxed, and X is reported to mean it was taxed. Those two show up often enough across enough sources that they are probably accurate, though Walmart itself has never confirmed either one. [2]
- The letter O on Walmart receipts is genuinely disputed. Some sources say it marks a nontaxable sale item, others say it means taxed at a reduced rate, and both cannot be true. [2]
- The letter F means SNAP eligible food at Kroger (according to FSA administrators, not Kroger), and it means FSA eligible health item at CVS. Same letter, two completely different meanings at two different chains. [2]
There is, however, a way to settle what the letters mean at your particular store, and it does not require asking an employee. Pick one item you know carries sales tax in your state and one you know does not, note the letter printed next to each, then add up every price on the receipt that carries the taxed letter and multiply by your local rate. If the number you get matches the tax line at the bottom, those two letters are confirmed for that chain, at least in your jurisdiction.
Subtotal, Tax Lines, and Total
The money section of a receipt, whatever else on the slip is confusing, at least follows the same sequence almost everywhere.
Subtotal adds up your items before tax gets applied to any of them. Underneath it you will see one or more tax lines, and seeing more than one does not mean something went wrong. It usually means the register is breaking out separate jurisdictions (state versus county, or county versus city) or applying different rates to different categories of goods, which is why a line reading TAX 1 at 8.25% on a $90 basket can produce a number well below $90 times 0.0825, only part of the basket was taxable in the first place.
Total is the amount that actually left your account or your wallet. Below the total come what the register calls tender lines, which is the system's own terminology for how the bill got paid. If you see CASH TEND 25.00 and then CHANGE DUE 3.78 on the next line, all that happened is you handed over a $25 bill and got $3.78 back. When somebody pays partly with a gift card and partly with a debit card, each method prints its own tender line.
A shopper buys $47.12 of groceries and $18.49 of cleaning supplies in a state that taxes cleaning products but not food. The tax line shows 8.25% applied only to the $18.49, which adds $1.53. The printed total is $67.14, and the groceries contributed zero tax.
The Card Payment Block
Paying with a card adds a second block of codes underneath the total, and while the abbreviations look dense, each one has a narrow, specific job.
Masked card number prints only the last four or five digits of whatever card was used. Federal law, specifically 15 U.S.C. § 1681c(g), which is the statute behind what people call the FACTA truncation rule, limits an electronically printed receipt to no more than the last five digits and prohibits printing the expiration date. [3] One thing that catches people off guard is that if you tapped a phone to pay, the digits on the receipt belong to the device's virtual card number, a token, not to the physical card sitting in your wallet.
- APPR or AUTH code is the approval code the card issuer returned when it authorized the charge.
- AID (a string like A0000000031010) is the EMV Application Identifier, a registration managed by EMVCo, and it names which chip application on your card actually processed the transaction. [5]
- Entry method (CHIP READ, CONTACTLESS, SWIPED) tells you how the card was captured.
- REF # or RRN is the processor's own reference number for that particular transaction, and if you ever call your bank to dispute a charge, this is the number they will want you to read off the receipt before they can even start looking.
If your receipt has no signature line, nothing is broken. All four major card networks, Visa, Mastercard, American Express, and Discover, dropped the signature requirement for chip transactions in April 2018. [6]
Transaction Numbers and What They Identify
Near the bottom of a receipt from a big box store, you will usually find a dense line of codes. On Walmart receipts, these are commonly reported as:
- ST# for store number
- OP# for operator (cashier) ID
- TE# for terminal or register number
- TR# for transaction number at that register
- TC# for the long transaction code printed under the barcode
The distinction worth understanding is the one between a receipt number and a transaction number, because they sound interchangeable but are not. A receipt number, in many POS systems, is nothing more than a running count of how many slips that particular register has printed since it was last reset. A transaction number, on the other hand, is a unique identifier that ties the sale to the store's payment and inventory systems across every register in the building. [2] For returns and disputes, the transaction identifiers are the ones with power.
A customer needs to dispute a charge. The bank asks for a reference number. The REF # from the card payment block locates the exact transaction in the processor's system. The receipt number printed higher up would not have helped, because it only counts how many slips that register printed.
What the Barcode at the Bottom Actually Contains
There is a persistent belief, one that shows up in comment sections and security forums with some regularity, that the barcode printed at the bottom of a receipt contains your full purchase history or, worse, your card number. A technical decode of the Walmart receipt barcode, though, found that the entire data payload is one thing: the TC transaction number. [2] The barcode is a lookup key and nothing else, a string that the register uses to locate the full transaction record on the store's own servers. When a customer service associate scans it during a return, what actually happens is that the register passes that TC number to the back end system, which pulls up the itemized record and displays it on screen. Some stores have started printing a QR code in the same spot, and the QR code does exactly the same job, just in a different visual format.
FSA, HSA, and EBT Flags
Pharmacy and grocery receipts carry a set of flags that most shoppers scroll right past, but these flags have direct dollar consequences, they are what the register uses to decide whether your FSA, HSA, or EBT card is allowed to cover a particular item in the basket.
FSA and HSA eligibility flags appear at stores that have gone through certification under something called the Inventory Information Approval System, or IIAS. What happens at the register is that the system checks each scanned item against a product list that SIGIS maintains, SIGIS being the standards body responsible for IIAS certification. [7] The flag you see (F at CVS, FSA as a prefix at Walgreens) reflects that check. It is a strong indicator, but not the last word, because IRS rules under Section 213(d) are what ultimately govern whether a given expense qualifies or not. [7]
EBT and SNAP flags work differently. Federal regulations under 7 CFR 274.8 require that EBT receipts show the remaining SNAP balance after each transaction. [8] That is why a balance prints at the bottom of every EBT receipt, it is a regulatory requirement, not a courtesy. Which individual items qualify as SNAP eligible food is governed by USDA guidelines, and that list has nothing to do with the FSA/HSA product list, the two systems run on completely separate eligibility criteria even when they show up on the same receipt.
The Footer: Surveys, Policies, and Folklore
Most of the footer is promotional material, and some of it is stranger than people expect. The survey invitation, if there is one, prints with a code or a URL that maps back to your specific transaction, the survey company uses it to confirm that a real purchase happened at that location on that date before it accepts the response. Below the survey you will usually find the store's return policy in condensed print, and sometimes a coupon or a loyalty points balance gets tacked on after that. The door check at Costco, which a lot of shoppers assume is some kind of barcode or receipt code audit, is actually a cashier error check, the employee scans for double charges and missed items, then marks the receipt with a highlighter so it cannot be walked back through the exit a second time.
5 Common Receipt Reading Mistakes to Avoid
1. Assuming receipt letter codes are universal
N means not taxed at Walmart, and people learn that, and then they carry it into Target or Kroger or wherever else they shop, and the letter does not mean the same thing there. It might not even appear. Every chain's POS team builds its own code table from scratch.
2. Confusing the receipt number with the transaction number
The receipt number, on a lot of registers, is just a print counter, it goes up by one every time the register spits out a slip and resets periodically. If you are trying to process a return or open a dispute with your bank, read them the transaction number, the REF #, or the TC# instead, because those are the identifiers that actually map to your sale in the system.
3. Believing the barcode stores your purchase history or card data
The barcode at the bottom holds a transaction ID, that is the entirety of what is in it. Worrying about someone scanning your discarded receipt barcode and accessing your card information is worrying about a problem that does not exist in the way people imagine it.
4. Ignoring the tax lines when checking the total
People usually check the item prices and skip the tax math, which is exactly backwards, because the tax calculation is where most receipt errors actually hide. If your subtotal looks correct but the total seems too high by a dollar or two, pull out the tax lines and check which items the register flagged as taxable, then multiply those items by your local rate and see if the numbers agree.
5. Throwing away the receipt before checking it
A double scan, a coupon the register failed to apply, a price that does not match the shelf tag, you will not catch any of these if the receipt goes straight into the trash or into the bottom of a bag. And thermal paper has its own clock running, the print starts fading within weeks under normal conditions, which means a receipt you plan to look at "later" may not be readable by the time later arrives.
Frequently Asked Questions
What does the letter N mean on a store receipt?
At Walmart, based on years of employee reports and customer cross checks, N is consistently understood to mean the item was not taxed, though Walmart corporate has never put out a statement confirming that. [2] The same letter may mean something different at other chains. If you want to confirm what any letter means at a particular store, the most reliable method is to compare the flagged items against the tax line at the bottom of that receipt and do the arithmetic yourself.
What is the difference between a UPC code and a SKU on a receipt?
A UPC is a 12 digit product identifier assigned by GS1, the global standards body, and it is the same number for the same product at every store in the country. [1] A SKU is an internal code the retailer created for its own inventory system, and it means nothing outside that chain. If you need to identify a product for a warranty claim or a price match at a different store, the UPC is the number that works.
Does the barcode on a receipt contain my credit card information?
It does not. The barcode encodes a transaction ID, which is the store's internal reference number for that one sale and nothing else. [2] There is no card number in it, no item data, no personal information of any kind. When an employee scans it during a return, all that happens is the register uses that ID to look up the original transaction record.
Why does my receipt show two different tax lines?
The most common reason is that some items in your basket are taxed at one rate and other items are taxed at a different rate, or not taxed at all. In Texas, for example, groceries carry no state sales tax, but cleaning supplies do, so a mixed basket produces one tax line for the taxable goods and a separate line showing $0.00 or simply omitting the exempt category. You can also see a second or third line when county or city taxes stack on top of the state rate, because the register breaks each jurisdiction's share out individually rather than lumping them together.
How do I know if an item on my receipt is FSA or HSA eligible?
Look for a small flag or prefix printed next to the item's price, though the specific character or abbreviation varies from one chain to the next. At CVS it is the letter F, at Walgreens the register prints an FSA prefix, and other chains have settled on their own markers that may not match either of those. [2] Behind the scenes, the store's IIAS certified register is checking each scanned barcode against a product list that SIGIS, the standards body behind the IIAS program, maintains and updates. [7] If you are not sure whether a particular product counts, the safest step is to call your plan administrator directly, because the IRS Section 213(d) rules are what ultimately decide eligibility, and the store's flag is a best effort pass at applying those rules, not a guarantee.
The Bottom Line
The bulk of what appears on a receipt, the UPC numbers, the masked card digits, the EMV codes, the SNAP balance line, all of that follows published standards that behave the same way at every register in the country. Where receipts stop being predictable is the single letter tax flags, because those are retailer invented, retailer configured, and retailer undocumented, which is exactly why they cause more confusion than everything else on the slip combined.
Check the receipt before you leave the parking lot. A pricing error caught on the spot takes two minutes to fix. Three weeks later, with the thermal print already starting to ghost, that same error almost never gets resolved. And if you need a clean, legible copy of any receipt for a return or a warranty claim, MyReceiptMaker's receipt templates can help you rebuild one that preserves every detail the original thermal paper was always going to lose.