Reports
EMS provides eight report types that cover every aspect of warehouse operations — from inbound shipments and inventory snapshots to stamp accounting and outbound dispatch. Every report can be filtered by date range, consignee, and region, and every report exports to a professional PDF complete with dual sign-off lines (preparer and reviewer) for CRA compliance.
Reports live in the main sidebar under Reports. When you open the module, you see all eight report types listed as cards. Click a card to open that report's configuration screen, where you set your filters and date range before generating. Once generated, the report displays in-browser as an interactive table. From there you can export to PDF or CSV with one click.
Reports pull live data from your warehouse — they are not cached snapshots. If you generate a Shipment Summary at 10:00 AM and a new shipment arrives at 10:05, regenerating the same report at 10:10 will include the new shipment. This means you can safely regenerate a report at any time and trust that it reflects current state.
Report types
EMS ships with eight built-in report types. Each one is purpose-built for a specific operational or compliance need. Below is a detailed walkthrough of every report — what it shows, when to use it, and what to look for.
Shipment Summary
The Shipment Summary report lists all shipments within a selected date range. It is the go-to report for answering "what came into the warehouse this month?" and for reconciling inbound volumes with supplier invoices or customs paperwork.
The report offers two views:
- Summary view — one row per date range showing aggregate statistics: total shipments, total boxes received, total units (good and damaged), average shipment size, and a breakdown by status (in-transit, arrived, receiving, inventoried, completed). This is the view you hand to management when they ask for a high-level overview.
- Detailed view — one row per shipment showing AWB (air waybill) number, supplier name, consignee, current status, arrival date, completion date, total box count, total unit count, and good-unit percentage. Sort by any column. Click a row to jump directly to that shipment's detail page in the Shipments module.
Key columns in the detailed view:
- AWB — the air waybill or bill of lading number. This is the primary identifier for matching against customs declarations.
- Supplier — the origin supplier. Useful for filtering when a consignee works with multiple overseas vendors.
- Consignee — who the shipment belongs to. In distributor setups, this column is critical for separating one client's shipments from another's.
- Status — the current shipment status. The report captures status at the time of generation, not at arrival time.
- Boxes / Units — box count and total units. The units column shows good units only — damaged and missing are excluded from the total but visible if you expand the row.
Inventory Report
The Inventory Report is a point-in-time snapshot of everything currently stored in the warehouse, broken down by product and grouped by consignee. It answers the question "what do we have on hand right now?" and is the report you use to verify physical inventory counts against system records.
For each product, the report shows:
- Available units — units that are in inventory and not allocated to any open or in-progress production order. These are free to be scheduled.
- Unstamped units — units that have been received and inventoried but have not yet gone through a production stamp run. This is the pool of work waiting for the stamping line.
- Per-region stamp breakdown — for units that have been stamped, the report shows how many were stamped for each region (Federal, Ontario, Quebec, Alberta, Manitoba). This is essential for stamp reconciliation.
- Aging indicator — products that have been in inventory for more than 90 days get a yellow warning badge. Products over 180 days get a red badge. Aging warnings help you identify slow-moving stock that may need attention — whether that means prioritising it for production or contacting the consignee about disposition.
The report groups rows by consignee, with subtotals per consignee and a grand total at the bottom. In PDF export, each consignee starts on a new page so you can hand a clean, single-consignee report to each customer if needed.
If a product shows a red aging badge (180+ days), it likely means the consignee has not requested a production order for that inventory. Reach out to the consignee before the product ages further — especially for temperature-sensitive or expiry-dated goods. The Inventory Report is your early-warning system for forgotten stock.
Production Report
The Production Report covers all production orders within a selected period. It is the report you review at the end of each week to measure throughput, identify bottlenecks, and report stamping volumes to the CRA.
Each row represents a production order and includes:
- PO number — the production order identifier (e.g. PO-2026-0142)
- Consignee — who the order was produced for
- Units scheduled — how many units were originally planned on the PO
- Units completed — how many units actually went through the stamp run and were verified
- Region breakdown — a per-region count of stamps consumed (Federal, Ontario, Quebec, Alberta, Manitoba)
- Scheduled date — when the PO was planned for production
- Completion date — when the PO was verified and closed
- Efficiency — completed units divided by scheduled units, expressed as a percentage. 100% means the PO ran exactly to plan. Values below 100% indicate boxes were skipped or damaged during the run.
The summary section at the top of the report shows aggregate metrics: total POs, total units scheduled, total units completed, overall efficiency percentage, and a region-by-region stamp consumption total. These figures are the ones you need for your weekly operations meeting and for CRA stamp usage reporting.
Stamp Accounting
The Stamp Accounting report is the most compliance-critical report in EMS. It tracks the full lifecycle of excise stamps — how many you started with, how many you received, how many you used, and how many remain — per region for a given period. This is the report the CRA expects to see during quarterly filings and audits.
The report structure follows a standard ledger format. Each region gets its own row, with columns for the opening balance, stamps received, stamps used, stamps spoiled, and the closing balance. Here is an example of what the report looks like:
- Federal — Opening: 18,000 | Received: 10,000 | Used: 7,500 | Spoiled: 12 | Closing: 20,488
- Ontario — Opening: 12,000 | Received: 5,000 | Used: 4,200 | Spoiled: 3 | Closing: 12,797
- Quebec — Opening: 6,000 | Received: 3,000 | Used: 2,800 | Spoiled: 0 | Closing: 6,200
- Alberta — Opening: 4,000 | Received: 2,000 | Used: 1,500 | Spoiled: 5 | Closing: 4,495
- Manitoba — Opening: 3,000 | Received: 1,000 | Used: 800 | Spoiled: 0 | Closing: 3,200
Each column tracks a specific type of movement:
- Opening balance — the stamp inventory at the start of the reporting period. This should match the closing balance of your previous report.
- Received — stamps received via Stamp Orders during the period. Each receipt is a logged transaction with a date, quantity, and order reference.
- Used — stamps consumed during production runs. Each usage is linked to a specific PO and verified by the four-eyes verification step.
- Spoiled — stamps that were damaged, misprinted, or otherwise unusable. These are logged separately from production usage so the CRA can distinguish between stamps that were applied to product and stamps that were lost.
- Closing balance — opening + received - used - spoiled. This is the number of stamps you should be able to physically count in your stamp vault at the end of the period.
Click any cell in the table to drill down to the individual transactions that make up that number. For example, clicking the "Used" cell for Ontario shows every production order that consumed Ontario stamps during the period, with PO numbers, dates, and quantities. This drilldown is what auditors ask for when they want to trace a stamp count back to its source.
If the opening balance on this period's report does not match the closing balance on the previous period's report, you have a data gap. This can happen if stamps were received or used during a period boundary and the transaction was backdated. Review the drilldown transactions around the boundary dates to identify the discrepancy before filing with the CRA.
Outbound Report
The Outbound Report tracks everything that has been dispatched from the warehouse during a selected period. It is your record of what left the building, when it left, who it went to, and what was on each shipment.
Each row represents an outbound dispatch and includes:
- Consignee — the customer receiving the dispatched product
- Skid count — how many skids were included in this dispatch
- Product breakdown — a per-product summary of units dispatched, with region stamps noted
- Dispatch date — the date the outbound was marked as dispatched
- Delivery status — whether the outbound is dispatched (left the warehouse), in-transit, or delivered (confirmed by the consignee or carrier)
The summary section shows total dispatches, total skids shipped, total units shipped, and a per-consignee breakdown. This report is useful for reconciling dispatch records against carrier invoices and for confirming that every completed production order actually resulted in a shipment.
Import Costs
The Import Costs report provides a per-shipment cost analysis for a selected period. It aggregates all cost components associated with bringing product into the warehouse and is the primary tool for consignee billing and margin analysis.
For each shipment, the report shows:
- Freight costs — the cost of shipping the goods from the supplier to the warehouse (air, ocean, or ground)
- Customs charges — brokerage fees, customs processing charges, and any other border-related costs
- Storage fees — warehousing charges accrued during the shipment's time in storage, calculated from the storage rate and duration
- Excise duty — the excise duty payable on the shipment, calculated from the product definitions and applicable duty rates
- Total cost — the sum of all cost components for the shipment
- Cost per unit — total cost divided by good units, giving you a landed cost per unit
The summary section shows aggregate costs across all shipments in the period, with a per-consignee subtotal. This is the report you use when preparing monthly invoices for consignees — it gives you a defensible, line-item breakdown of every charge.
Consignee Directory
The Consignee Directory report is a comprehensive list of all active consignees in the system. It is less of a time-based report and more of a reference document — a snapshot of your customer base and their current warehouse footprint.
For each consignee, the report shows:
- Company name — the consignee's registered business name
- Contact information — primary contact name, phone, and email
- Location count — how many delivery addresses the consignee has on file
- Total units — the total good units currently in inventory for this consignee across all products
- Total skids — the total number of skids currently stored for this consignee across all zones
The directory is exportable as both a PDF (formatted as a professional contact list) and a CSV (flat data suitable for importing into your CRM or mailing-list tool). The CSV export includes all address fields, making it useful for year-end compliance mailings where you need a complete, current list of every consignee you warehoused product for during the fiscal year.
Inbound Pickup
The Inbound Pickup report tracks the history of pickup runs — the trips your drivers or operators make to collect shipments from ports, airports, or customs brokers. It is a logistics-focused report used for auditing transportation costs and optimising pickup schedules.
Each row represents a pickup trip and includes:
- Pickup date — the date the trip was made
- Shipments collected — the number of individual shipments picked up on this trip (pickups are often consolidated — one trip may collect multiple AWBs)
- Skid count — total skids loaded across all shipments on this trip
- Driver / Operator — the user who performed the pickup, recorded from their login
The summary section shows total trips in the period, average shipments per trip, average skids per trip, and a per-driver breakdown. Use this report to evaluate whether your pickup runs are being consolidated efficiently — a high number of single-shipment trips may indicate an opportunity to batch pickups and reduce transportation costs.
Filtering reports
Every report in EMS has a filter bar at the top of the configuration screen. Filters let you narrow the report's scope before generation so you get exactly the data you need without sifting through irrelevant rows.
The available filters are:
- Date range — a start and end date picker with preset shortcuts for common ranges: This week, This month, This quarter, Last month, Last quarter, Year to date, and Custom. The date range applies to different fields depending on the report type — for Shipment Summary it filters by arrival date, for Production it filters by completion date, and so on.
- Consignee — a multi-select dropdown that lets you pick one or more consignees. The report will include only data belonging to the selected consignees. Leave blank to include all consignees.
- Region — a filter for stamp-related reports (Stamp Accounting, Production Report). Lets you narrow to a specific region such as Ontario or Quebec. Not applicable to all report types.
- Status — a filter for reports that track items with a status lifecycle (Shipment Summary, Production Report, Outbound Report). Lets you include only items in a particular status, such as "completed" or "in-production".
Not every filter appears on every report. The Consignee Directory, for example, has no date range filter because it shows current state rather than historical data. The Region filter only appears on reports that involve stamp data. EMS shows only the filters that are meaningful for the report you are generating — you will not see greyed-out or non-functional filter controls.
After setting your filters, click Generate. The report renders as an interactive table in the browser. You can sort columns, expand rows for detail, and adjust filters without leaving the page — just change a filter value and click Generate again.
Exporting
Once a report is generated, two export buttons appear in the top-right corner of the report view: Export PDF and Export CSV.
PDF export
The PDF export produces a professional, print-ready document that includes:
- Company header — your company name, logo, and address as configured in Settings. This branding appears at the top of every page.
- Report title and filters — the report type, the date range, and any active filters are printed below the header so the reader knows exactly what scope the report covers.
- Data tables — the report data formatted as clean, bordered tables with alternating row shading for readability. Long reports paginate automatically with headers repeated on each page.
- Summary statistics — aggregate totals and averages appear in a highlighted box at the end of the data section.
- Dual sign-off lines — at the bottom of the last page, two signature blocks for preparer and reviewer (see Dual sign-off lines below).
Before the PDF downloads, EMS opens it in the built-in PdfViewer so you can preview the output. Check that the data looks correct and the page breaks fall in sensible places before committing to the download. Click Download in the viewer to save the file, or Close to go back and adjust filters.
CSV export
The CSV export produces a flat data file with one header row and one data row per record. This format is designed for analysis in Excel, Google Sheets, or any data tool that reads comma-separated values. The CSV includes all columns from the detailed view — including columns that may be collapsed or hidden in the in-browser table — so you get the complete dataset.
CSV exports do not include the company header, summary statistics, or sign-off lines. They are raw data files, not compliance documents. If you need a signed, auditable record, use the PDF export.
Dual sign-off lines
Every PDF report generated by EMS includes two signature lines at the bottom of the last page. This dual sign-off design is built for CRA compliance, where excise-stamped goods require documented accountability at every stage.
The two signature blocks are:
- Prepared by — auto-filled with the name of the user who generated the report and the date and time of generation. This is the person who ran the report and is responsible for the accuracy of the filter selections and data scope.
- Reviewed by — left blank with a signature line, a printed-name line, and a date line. This is for a supervisor or compliance officer to sign after reviewing the report's contents. The reviewer is confirming that the data has been examined and is accurate for filing or record-keeping purposes.
The dual sign-off creates a paper trail that shows who produced the report and who approved it. During a CRA audit, the auditor can trace any report back to two named individuals — the preparer and the reviewer — which satisfies the four-eyes principle for excise compliance documentation.
The "Prepared by" name and timestamp are pulled automatically from the logged-in user's account and the server clock. You cannot change or backdate this field. This ensures the preparer attribution is always authentic and matches the audit log entry for the report generation event.
Best practices
- Run Stamp Accounting monthly, not just quarterly. The CRA requires quarterly stamp filings, but waiting until the end of the quarter to check your numbers is risky. Run the Stamp Accounting report at the end of every month. If there is a discrepancy between physical stamp counts and system balances, you want to catch it while the transactions are fresh — not three months later when nobody remembers what happened.
- Use the Inventory Report to catch aging product. Make it a habit to review the Inventory Report weekly with an eye on the aging badges. Yellow badges (90+ days) are a prompt to check in with the consignee about their production plans. Red badges (180+ days) are a prompt to escalate — product sitting that long may indicate a communication breakdown or a change in the consignee's business.
- Export the Consignee Directory before year-end. At the close of each fiscal year, export the Consignee Directory as both PDF and CSV. The PDF goes into your compliance files as a record of every consignee you provided warehousing services to during the year. The CSV goes to your accounting team for year-end reconciliation and tax reporting.
- Use date presets for consistency. When multiple operators generate the same report, using the preset date ranges (This month, This quarter, etc.) ensures everyone is pulling the same time window. Custom date ranges are useful for ad-hoc analysis, but for routine reports that get compared period over period, presets eliminate human error in date entry.
- Preview PDFs before distributing. Always use the PdfViewer preview before downloading and distributing a report. Check that the filters shown on the report match your intent, that the data tables are complete, and that the summary statistics look reasonable. It takes ten seconds to preview and can save you from sending an incorrect report to a consignee or filing a wrong number with the CRA.
- Archive signed reports. After a reviewer signs a printed PDF report, scan the signed copy and store it in your compliance archive. The digital PDF in EMS proves the data; the signed scan proves the review. Together they form a complete audit trail that satisfies CRA documentation requirements.
