Skip to main content

Resolve receiving discrepancies

Core module For: Compliance manager, Warehouse staff Checked on 18.0.0.2.0

When you validate a receipt that has a supplier EPCIS file, the software compares the units you scanned with the units the file announced. Every difference becomes a receiving discrepancy with a 10-business-day deadline, and every lot concerned is quarantined, so the product can't be sold on until someone looks at it. Abbreviations: EPCIS: Electronic Product Code Information Services; GTIN: Global Trade Item Number; SSCC: Serial Shipping Container Code (see the glossary).

Background: the modules follow this reading of the rule for receiving discrepancies: resolve them within 10 business days, document how, and don't sell the affected product on until they are resolved; duplicate serial numbers on two packages are suspect product (FD&C Act § 582(c)(1)(A)(i), § 582(g)(1); FDA interoperable exchange guidance (September 2023); see Compliance background).

Note

With Odoo Enterprise and Rx Tracking (DSCSA) - Suspect Product Investigations installed, every lot quarantine a discrepancy causes also opens a suspect-product investigation. See Follow the investigation a lot quarantine opens automatically.

Work a receiving discrepancy to resolution​

Find the open discrepancies, find out with the supplier what happened, write down how it was resolved, and mark it resolved. Resolving a discrepancy never releases its lot: an Rx Tracking Manager releases the lot separately once nothing else holds it. Your procedure decides how you investigate with the supplier and what counts as resolved; the software requires a written Resolution Note.

Who: Rx Tracking User or Manager to resolve. Rx Tracking Manager to reopen a discrepancy and to release its lot.

Requires: Rx Tracking (DSCSA). Works in Odoo Community and Enterprise.

Before you start:

The types of discrepancy, as the Type, Supplier File Says and Found columns show them:

TypeWhenSupplier File SaysFoundLots quarantined
Missingthe file announced the unit, it wasn't received, and no backorder expects itshipped, lot LOTnot receivedthe file's lot
Extraa unit was received that the file doesn't listnot in the filereceived, lot LOTthe received lot
Wrong Producta unit was received of a product the file doesn't list at allproduct not in the filereceived, lot LOTthe received lot
Wrong Lotthe unit's label gives another lot than the filelot FILE-LOTlot LABEL-LOTboth lots
Wrong Expirythe unit's label gives another expiry date than the fileexpiry DATEexpiry DATEthe lot
Duplicate Serialthe file lists a serial that is already in the package ledger (DISC-09)new package, lot LOTalready in the ledger (STATE, lot LOT)both lots
Transaction Statement Missingthe file doesn't affirm the Transaction Statement (DISC-07)affirmed Transaction Statementno Transaction Statement, or Transaction Statement not affirmedevery DSCSA lot of the receipt
  1. Go to Inventory ‣ Rx Tracking ‣ Receiving Discrepancies.

    Result: the list opens with the Open filter. Each row shows Reference, Type, Receipt, Supplier, Product, Lot, Serial Number, Supplier File Says, Found, Resolve By, Responsible and State. Overdue rows are red.

    Screenshot of the Receiving Discrepancies list grouped by Type: Extra, Missing and Wrong Lot groups with their open rows.

  2. To sort them out, open the search options (the ▾ Toggle Search Panel button) and choose:

    • a filter: Open, Overdue, Resolved, Transaction Statement Missing or My Discrepancies;
    • a grouping: Type, Receipt, Supplier or Lot.

    Filters in the same block combine with "or": with Open still selected, Overdue shows every open discrepancy (Known issue PF-W06-05). Remove Open from the search box to see only the overdue ones.

  3. Open a discrepancy.

    Result: the form shows DISC/YYYY/NNNNN and its type, then What (product, GTIN, serial, lot, SSCC, package, Supplier File Says, Found), Where (receipt, purchase order, supplier, supplier file, inbound document) and Follow-up (Detected On, Resolve By, Responsible, Lots Put on Hold), with a sentence that describes the difference.

    Screenshot of a Missing discrepancy: serial 500000008024 shipped in lot BPDPZ2509M but not received, with its receipt and file.

  4. Contact the supplier, find out what happened, and agree on the outcome (a credit, a replacement shipment, a corrected file, a return). If needed, change Responsible to the person who follows it up.

  5. In Resolution Note, enter how it was resolved, for example Bluepeak confirmed unit 500000015024 was never packed; credit note CN-7781 issued.

  6. Select Mark Resolved.

    Result: the discrepancy is Resolved, with Resolved On and Resolved By. The Resolution Note is read-only. The lot stays Quarantined.

  7. When no other discrepancy or hold is left on the lot, ask an Rx Tracking Manager to release it. See Release a lot from quarantine.

Result: the discrepancy is resolved and, once a manager releases it, the lot can be sold. Records: the discrepancy DISC/YYYY/NNNNN with its resolution note, who resolved it and when (kept; it can't be deleted), and the release in the lot's chatter.

Where else discrepancies show:

  • the Discrepancies smart button on the receipt and on the supplier file (which also has a Discrepancies tab);
  • the lot's Quarantine tab, whose Quarantine Reason says "Receipt WH/IN/NNNNN does not match the supplier's EPCIS file: COUNT TYPE (DISC/YYYY/NNNNN). Resolve by DATE.";
  • the receipt's chatter: "EPCIS reconciliation: N package(s) received." and "N discrepancy(ies): …. Their lots are quarantined; resolve by DATE."

In a database with several companies, each discrepancy belongs to the company of its receipt, and the list shows those of the companies selected in the company switcher.

Resolve By is 10 business days after the discrepancy was detected. Weekends are skipped; public holidays are not, so the date can only be earlier than a count that skips holidays. After that date, the form shows the red banner "This discrepancy is past its 10-business-day resolution deadline." and the row is red in the list.

Reopen a resolved discrepancy​

  1. As an Rx Tracking Manager, open the resolved discrepancy and select Reopen.

    Result: the discrepancy is Open again, and its Resolution Note can be edited again. An Rx Tracking User has no Reopen button.

If it doesn't work

Known issue

Known issue (PF-A02-07): nothing reminds anyone of a discrepancy before or at its Resolve By date: no activity, no email. Overdue discrepancies only turn red. Check the Overdue filter as part of your daily routine.

Next: Release a lot from quarantine

Handle a duplicate serial at receipt​

A supplier file, or a unit's label, gives a serial number that is already in your package ledger. Two packages with one serial number are a suspect-product signal: the software never receives the second one, records the duplicate, and quarantines both lots. Your procedure decides how the suspect units are set aside and investigated; the software refuses to register them.

Who: Rx Tracking User or Manager. Rx Tracking Manager to quarantine a lot by hand.

Requires: Rx Tracking (DSCSA). Works in Odoo Community and Enterprise.

Before you start:

  1. Import the supplier's file on the receipt (IN-03).

    Result: the file's form opens with a yellow banner: "N serial(s) in this file are already in the package ledger (suspect product). They become discrepancies when the receipt is validated." Its chatter says "… N serial(s) are already in the package ledger (duplicates)."

    Screenshot of a supplier file with the yellow banner: 24 serials in this file are already in the package ledger (suspect product).

  2. Select the Duplicates tab.

    Result: one line per duplicate, for example "200000000001 (GTIN 00399990101300, lot BPDPZ2508K): already in the package ledger as Returned (WH/IN/00007)." The duplicates are not expected on the receipt.

    Screenshot of the Duplicates tab of a supplier file: each serial already in the package ledger, with its lot, state and receipt.

  3. Set the units with those serials aside. Scan the other units (Scan units onto a receipt).

    Result: if a duplicate is scanned, nothing is registered, and the dialog says "Nothing was registered. Fix these scans and try again:" followed by "Line N: Serial SERIAL is already registered (state: STATE). A duplicate serial is a suspect-product signal: do not receive it until it is investigated."

  4. Validate the receipt (IN-05). In the Create Backorder? dialog, select No Backorder, because the duplicates are not received.

    Result: the receipt is Done. Its chatter says "N discrepancy(ies): N duplicate serial. Their lots are quarantined; resolve by DATE." Each duplicate is a Duplicate Serial discrepancy, and both lots are quarantined: the lot in the file and the lot of the package already in the ledger.

  5. Investigate the suspect product, then resolve the discrepancies (DISC-08).

Result: the duplicate units are not in your stock, and both lots are on hold until a manager releases them. Records: the supplier file with its Duplicates tab, one Duplicate Serial discrepancy per duplicate, and the quarantine in each lot's chatter.

To find every file with duplicates, go to Inventory ‣ Rx Tracking ‣ Supplier EPCIS Files and select the filter With Duplicates.

If it doesn't work

Known issue

Known issue (PF-W06-03): when every unit of a file is a duplicate, the receipt can't be done: the scans are refused, and with a zero quantity Odoo refuses "You cannot validate a transfer if no quantities are reserved …". No Duplicate Serial discrepancy is recorded and no lot is quarantined. The file's Duplicates tab is the record. An Rx Tracking Manager quarantines the lot of the units already in the ledger (Quarantine a lot); then cancel the receipt (DISC-04) so the file stays on record as Cancelled.