Receiving & Reconciliation
Published June 28, 2026
DSCSA receiving reconciliation, step by step.
Under DSCSA, every pharmacy that accepts a drug shipment is responsible for confirming that the physical contents of the delivery match the transaction documentation. For most pharmacies, that check still happens on paper or in a spreadsheet. The problem is not that the process is wrong — the logic is simple: what the invoice says should match what arrived. The problem is that doing it manually, for every line of every shipment, creates the conditions for gaps: a bottle that slips through unscanned, a short shipment that gets signed off before anyone counts, a lot recall that was already on the shelf before anyone noticed.
This page explains what receiving reconciliation means in a DSCSA context, where the manual process breaks, and how an automated manifest-to-shelf comparison changes the operational picture.
What is DSCSA receiving reconciliation?
DSCSA requires dispensers to receive transaction information (TI) alongside every drug shipment. That document — whether it arrives as a paper packing list, a CSV from the wholesaler's portal, or an EPCIS file — describes what was shipped: product, lot, serial number, quantity, and expiration for each line. Receiving reconciliation is the act of comparing that manifest against what was physically received, at the individual package level.
For serialized drug shipments, that means scanning each incoming bottle and checking its GTIN, lot, and serial number against the manifest. A matched result means the package arrived as invoiced. Every other result — short, over, unexpected, or suspect — is a discrepancy that needs a documented explanation before the receiving record is complete.
The receiving record itself is the evidence that you fulfilled this obligation. If an inspector or wholesaler asks whether a particular serialized package was received and verified, the receiving record is what you produce.
Where the manual process breaks
Most pharmacies receive a paper packing list or a downloaded CSV and check it off by eye or by scanning into a spreadsheet. That works until it doesn't:
- Short shipments get signed off without investigation. A pharmacist initials the packing list, the box goes to the shelf, and the shortage is discovered two weeks later during a cycle count — by which point the credit window may have closed and the documentation trail is gone.
- Unexpected product has no formal path. If a bottle arrives that doesn't appear on the manifest — wrong NDC, substituted equivalent, or a pull from a canceled order — there is no structured place to document it. It either goes to the shelf unrecorded or gets quarantined informally with no paper trail.
- The reconciliation and the record are disconnected. A completed spreadsheet is not the same as a locked, timestamped receiving record. If the spreadsheet is edited after the fact, or simply not saved, the reconciliation evidence disappears. DSCSA requires the record to be electronically accessible; a local spreadsheet does not reliably satisfy that standard.
How automated receiving reconciliation works
The workflow has five steps:
- Import the manifest. Export the shipment data from your wholesaler's portal — most offer CSV, Excel, or EPCIS export — and import it into RxRescue. The parser maps common column names automatically (GTIN, NDC, lot, serial, quantity, drug name, supplier, invoice number, ship date) and normalizes NDC-to-GTIN when the manifest uses 10-digit NDC codes instead of GTIN-14.
- Scan incoming bottles. As bottles come out of the box, scan each serialized barcode. RxRescue's GS1 parser captures GTIN, lot, serial number, and expiration from the 2D DataMatrix code and matches each scan against the open manifest in real time.
- Review the results by category. When scanning is complete, the reconciliation screen groups every line into one of six categories: matched, short received, over received, not received, unexpected, or suspect. The category tells you exactly what kind of discrepancy you're looking at and what action is appropriate.
- Document every discrepancy. For each non-matched line, a pharmacist selects a resolution action and enters a note. The note is required — the finalize button is not active until every discrepancy has a documented disposition.
- Finalize and lock the record. Once all discrepancies are resolved, the receiving record is finalized. It is locked against further edits, included in the audit pack, and bottles marked for quarantine during the process are held in quarantine status until explicitly released by staff.
Discrepancy categories — what gets flagged
Every package that doesn't reconcile cleanly falls into one of these categories:
- Short received. Fewer packages were scanned against a manifest line than the invoiced quantity. This is the most common discrepancy — a bottle is missing, possibly still on the truck or simply not packed. The resolution action is usually a wholesaler credit request or a recount note.
- Over received. More packages were scanned than the manifest line shows. This can happen when a substitution was packed without updating the manifest, or when packages from a different order ended up in the box.
- Not received. A manifest line exists but no scans were recorded against it at all. This typically means an entire product was backordered or the box was mislabeled — and it needs to be resolved before the receiving session closes.
- Unexpected. A scanned package has no matching manifest line. This is the scenario that most often indicates a serious problem: a product that was not on the order, a serial number that belongs to a different shipment, or a product the wholesaler substituted without updating the manifest.
- Suspect. A package is flagged due to a known concern: the lot is under recall, the barcode is non-compliant with DSCSA serialization requirements, or the serial number appears as a duplicate in your receiving history. Suspect packages are automatically placed in quarantine status during the reconciliation and must be explicitly resolved before the receiving record can close.
- Matched. The package was scanned, the GTIN, lot, and serial number matched a manifest line, and the quantity balanced. No action required.
What manifest formats does RxRescue accept?
RxRescue is designed to work with the formats that wholesalers actually produce, not to require a custom integration:
- CSV. The most common export from wholesaler web portals. RxRescue's importer aliases the column headers that major wholesalers use — McKesson's portal uses different column names than Cardinal Health's; both map correctly without manual remapping.
- Excel (.xlsx). For pharmacies whose wholesaler rep sends manifest spreadsheets directly. The importer reads the first sheet and applies the same column aliasing as the CSV path.
- EPCIS XML 1.2. The GS1 standard format for serialized supply-chain events. RxRescue reads ObjectEvent commissioning records, expands SSCC aggregation events to surface individual SGTIN items, and extracts GTIN, lot, serial, and expiration via a strict allow-list (no PHI fields pass through the import layer).
- EPCIS JSON-LD 2.0. The JSON binding of the EPCIS standard, used by some newer wholesaler systems. RxRescue handles both the XML and JSON-LD schemas without requiring any configuration from the user.
One format is not inherently better than the others for reconciliation purposes — what matters is that the manifest contains lot and serial data at the individual package level, not just aggregate line quantities. A CSV that has one row per serialized package (with lot + serial fields populated) reconciles exactly as cleanly as an EPCIS file.
How this fits with your pharmacy management system
RxRescue is not a pharmacy management system (PMS) and is not a replacement for one. Your PMS handles prescriptions, dispensing, and purchasing transactions — including capturing the T3 document your wholesaler provides and recording the financial side of the order. What most PMSes do not do is the physical receiving step: the bottle-by-bottle check that what was invoiced is what arrived, in the right quantities, from the right lots, with no suspect packages mixed in.
RxRescue covers the physical layer. The receiving record it produces is a separate document from the T3 — it is the evidence of your physical verification, not a duplication of the transaction record your PMS already holds. The two documents complement each other: the T3 records the commercial chain of custody; the receiving record documents what was actually on the shelf at the time of receipt.
See how RxRescue fits alongside your PMS for the full layer model.
Frequently asked questions
Does RxRescue connect directly to my wholesaler's system?
No. RxRescue is a file-import tool: you export the shipment manifest from your wholesaler's portal (or request it from your rep) as a CSV, Excel file, or EPCIS export, then import it into RxRescue. Most large wholesalers — McKesson, Cardinal Health, AmerisourceBergen — offer EPCIS or CSV export options from their web portals. RxRescue does not require a direct API integration with the wholesaler.
What is EPCIS and do I need it for DSCSA receiving?
EPCIS (Electronic Product Code Information Services) is the GS1 standard for exchanging supply-chain event data. Under DSCSA, wholesalers are required to provide serialized transaction data in an interoperable electronic format; EPCIS is the format that satisfies that requirement end to end. In practice, many pharmacies still receive CSV manifests from their wholesalers rather than EPCIS files — and both work for receiving reconciliation purposes. You do not need to upgrade to EPCIS to start reconciling shipments. If your wholesaler sends CSV, start there.
What counts as a discrepancy?
Any mismatch between what the manifest says was shipped and what was physically scanned at receipt: short shipments, over-shipments, manifest lines with no scans, scanned packages not on the manifest, and packages with known concerns (recalled lot, non-compliant barcode, duplicate serial). Every non-matched category requires a documented resolution before the receiving record can be finalized.
Can I finalize a receiving record with open discrepancies?
No. The finalize button is not active until every non-matched line has a resolution note. This is intentional: the receiving record is the durable proof that you investigated every mismatch at the time of receipt. A record with open discrepancies would not satisfy that obligation.
Is DSCSA receiving reconciliation the same as DSCSA verification?
No. DSCSA verification (VRS — Verification Router Service) is the process of checking a serial number against the manufacturer's database to confirm the product is authentic and not recalled. Receiving reconciliation is the logistical step of confirming that what the wholesaler invoiced is what actually arrived. They address different risks: VRS catches counterfeits and diverted product; receiving reconciliation catches packing errors, short shipments, and unauthorized substitutions. RxRescue handles receiving reconciliation; it does not connect to VRS or serve as a T3 system of record for transaction data.
What happens to the receiving record after finalization?
Once finalized, the receiving record is locked. It captures a snapshot of every expected line, every scanned package, every discrepancy, and every resolution note at the moment of finalization. It is included in RxRescue's audit pack export — the file you produce in response to a regulatory or wholesaler dispute request. Packages quarantined during receiving remain in quarantine status until explicitly released by staff; they cannot be dispensed in the interim.
Related
- DSCSA compliance for pharmacies — the full overview
- DSCSA self-assessment — five questions to ask your pharmacy team this week
- How RxRescue fits alongside your pharmacy management system
- Wholesaler returns and credit windows
- FEFO expiration tracking for pharmacies
- DSCSA & pharmacy inventory glossary
- The DSCSA 2026 deadline — what to do this week (blog)
- What an FDA inspector actually asks a pharmacy (blog)
Published June 28, 2026. DSCSA regulatory references reviewed quarterly.