Skip to content

Metrc discrepancies: a playbook for each kind, who fixes it and where

6 min read

By BudAlly

Published

What this is. The Metrc reconciliation SOP tells you when to look: daily, weekly, at the 30-day count. This post is the lookup table for what you find when you do. It works with any POS. It is not legal advice, and your state's rule decides the reporting duties.

Classify before you touch anything

Every discrepancy between your POS and Metrc is one of a small number of kinds, and each kind has a home: the system where it gets fixed and the person who fixes it. The commonest mistake is fixing one in the wrong place. If you adjust a Metrc package to cover a POS sync failure, you now have two errors, and one of them is signed with your name.

One industry write-up lists the recurring root causes: unit-of-measure mismatches, timing lag, returns handled inconsistently, destruction workflows, and batch splits or merges that break the link between the two systems (cannabisregulations.ai). The table below maps them to what you will actually see on the exception list.

The playbook

#What you seeWhat it usually meansFixed whereOwner
1POS sale, no Metrc receiptThe push failed or was delayed, or the package wasn't sellable in Metrc at the time of salePOS: re-push the ticketStore lead
2Metrc receipt, no POS saleA sale was entered directly in Metrc, or the POS voided the ticket after pushing itMetrc: void with a reason, or reinstate the POS ticketStore lead, then compliance approver
3Package quantity differs between POS, Metrc and the shelfUnit-of-measure mapping, an unrecorded sample or destruction, or real lossItem mapping first; a Metrc adjustment only if the physical quantity really changedInventory lead, then compliance approver
4Tag on the invoice isn't on the manifestAn invoice typo, such as transposed digits, or a different packageThe sender's corrected invoice. Never your tagReceiving lead
5Split, return or void recorded on one side onlyThe workflow was run in one system and not mirrored in the otherThe system that missed the stepInventory lead
6Package in a different room than Metrc saysA move made physically but not in Metrc, or the other way roundMetrc location move, or put the package backInventory lead
7Totals or tax lines differ on a matched receiptTax-field mapping: one combined POS tax field against the separate Metrc fieldsPOS tax mappingController

1 and 2: the sale and the receipt don't pair

Match on identifiers, not on time and amount. Metrc's sales-receipt API carries an external receipt number that your POS sends, so the join is POS ticket number to that field (Metrc API documentation). If your POS doesn't send it, join on package tag, quantity and timestamp, and expect more manual review.

Never: create a Metrc receipt by hand to "close" an unmatched ticket when the POS can re-push it. You will get a duplicate the moment the sync recovers.

3: the quantity is wrong on a package

Work through it in order:

  1. Unit of measure. Eaches against grams, or a 5-pack sold as five singles. Check the item mapping before you check the shelf.
  2. Undocumented movement. Samples, destructions and damaged units that left the shelf without a Metrc entry.
  3. Real loss. No paper trail at all. Stop and investigate before you adjust anything. This is the case your state's theft or loss notification rule is written for, so check its window in the state page before anything else.

Never: adjust without a reason code, or make an adjustment you also sign off. In California, an unexplained variance found at inspection can become an enforcement matter (Baghoomian Law). An adjustment with no reason is an unexplained variance with a timestamp on it.

4: the invoice tag isn't on the manifest

Hold the line. The bill for that line waits, and you ask the sender for a corrected invoice. Metrc's Virginia guidance treats transporter details on a transfer as editable but its contents and destination as fixed (Metrc VA IB-0016). The manifest is the fixed record, so the invoice is the document that has to change.

Never: "correct" the tag in your own records to match the invoice, or accept the line as-is because the item and quantity look right. A transposed digit and a different package look the same until somebody checks.

5: splits, returns and voids

These go wrong because each one is a two-system workflow and staff finish it in one:

  • Split. The package was split in Metrc and the new tags were never put on the shelf. Or the shelf was split and Metrc wasn't. Relabel or record the split. No quantity adjustment is needed.
  • Customer return. Rung as a void in the POS but recorded as a return in Metrc, or the reverse. Make both systems agree on which one happened.
  • Transfer return. Use the state's return flow. Metrc's Nevada bulletin describes returning a rejected transfer on the same manifest. Your state's process may differ, so check it (Metrc NV Bulletin 47).
  • Void. A voided POS ticket must not leave a live Metrc receipt behind.

Never: net a return against a sale to make the day balance. Each event needs its own record on both sides.

6: room and location

Rooms and locations matter at count time: the weekly cycle count exports a room from Metrc and counts it (procedure). A package on the sales floor that Metrc places in the vault shows up as a phantom loss in one room and a phantom overage in the other. Fix it with a location move, not two adjustments.

7: totals and tax lines

If the packages and quantities match but the totals don't, check the tax mapping first. Fix the mapping once rather than the receipts one by one.

What never to do, whatever the kind

  • Never adjust before you classify.
  • Never adjust without a reason code and a named person.
  • Never let the person who made an adjustment approve it.
  • Never edit a tag to match a document. Get the document corrected.
  • Never net discrepancies against each other to reach zero.
  • Never let software make any of the above "one click". Metrc adjustments, receipt voids and loss notifications are regulated actions. Software can propose them, and a named person should approve each one.

Illustrative example

Hypothetical numbers. The daily list shows 10 exceptions. 6 are one ticket whose push failed, which turned into six unmatched lines (kind 1): re-push, done. 2 are a 5-pack mapped as singles (kind 3): fix the mapping and both clear. 1 is an invoice tag one digit off the manifest (kind 4): hold the line and request a corrected invoice. 1 is a package missing from the vault but present on the floor (kind 6): move it. Not one of the ten needed a Metrc quantity adjustment.

BudAlly runs the daily match and the exception list for any POS and drafts the 30-day report. A person approves every adjustment, and a tag is never edited. See the Metrc hub for state pages and the reconciliation SOP for the clocks.

Questions

What is the most common cause of a POS-to-Metrc discrepancy?
There is no single cause, but the recurring ones are unit-of-measure mismatches, timing lag between the POS and Metrc, returns handled differently in each system, destruction workflows, and package splits or merges that one side recorded and the other did not.
Should I adjust the Metrc package to match the POS?
Not until you know why they differ. Classify the discrepancy first. A sync gap or a unit-of-measure problem is fixed in the POS or the item mapping, and an invoice tag that isn't on the manifest is fixed with a corrected document from the sender. A Metrc adjustment is only right when the physical quantity really changed, and it needs a reason code and a person's name.
Who should own Metrc discrepancies at a dispensary?
Split it by where the fix lives. Front-of-house leads own ticket and receipt mismatches. The receiving or inventory lead owns manifest and package-quantity issues. A compliance approver signs off every Metrc adjustment, and that person must not be the one who made it. Unexplained losses go to whoever handles the state's loss notification.

See the ledger on your own data.

Free variance audit · read-only · no call.

Start free audit
© 2026 BudAlly, Inc. · Team Winston and Treez are trademarks of their owners. Posts are not legal or tax advice.All postsCompare