Hi! We can fix the shipping doc hides dangerous goods line issue by tracing where the DG/hazmat data is being filtered out (export filter) or suppressed (template visibility rules). In shipping systems this usually happens for one of four reasons: (1) an export filter excludes DG lines, (2) the document template has a conditional “hide” rule, (3) DG data is stored in a different object (item vs shipment vs package) and the report is pulling the wrong level, or (4) a carrier/EDI map is dropping required fields like UN number or proper shipping name.
Quick questions so we fix it without guesswork:
• Which document is missing the line: commercial invoice, packing list, bill of lading (BOL), shipping manifest, DG declaration, or an export CSV/XML?
• Where do you notice it missing: on-screen preview, generated PDF, printed copy, or only after export to a carrier/forwarder?
• What system generates it (ERP/WMS/TMS/shipping software)? Any clue if it’s a “report template + filter” setup?
• What does “dangerous goods line” mean in your workflow: a specific line item flag (“DG/Hazmat”), a compliance block (UN/PSN/Class/PG), or a note like “Lithium batteries” / “Limited Quantity” / “Excepted Quantity”?
• Are DG items tagged consistently (hazmat flag, hazard class, packing group, SDS/Section 14 data, HS code)?
Once I have that, I’ll give you a step-by-step export-filter checklist and a template-safe fix that restores the DG line without breaking non-DG shipments.
Customer
We generate a shipping packet (commercial invoice + packing list + BOL PDF) from our shipping module. For certain orders that include hazmat, the dangerous goods line is missing on the invoice and packing list, but the item is clearly marked as DG in the system. Our forwarder is complaining because they don’t see UN number/proper shipping name on the paperwork. It seems to happen only when we use the “Export PDF” button (not the internal preview).
That “only missing on Export PDF” detail is huge — it strongly suggests there are two rendering paths: an internal preview renderer (often looser rules) and an export renderer that applies an export filter or a separate template variant. In other words, your DG/hazmat data is probably present, but the export pipeline is either:
• applying a filter like “exclude non-charge lines” / “exclude special instructions” / “exclude hazardous block unless shipment level = DG”, or
• calling a different report template that has a conditional suppression rule (example: hide DG block unless Shipment.Hazmat = true, but your DG flag lives on the item line or package).
Related keywords you’ll hear from carriers/forwarders match this exactly: dangerous goods line missing, hazmat line item hidden, DG declaration not showing, UN number missing on invoice, proper shipping name not printed.
Next we’ll isolate: is the data missing at export time, or is it being suppressed by logic.
Customer
We have an “Export Filter” dropdown with presets (Standard, International, Forwarder). Someone created a “Forwarder” preset. When we select that preset, the DG line disappears. If we export with “Standard,” sometimes it shows. So it feels like a filter problem. Also, DG details are stored at item level (UN number, proper shipping name, hazard class, packing group).
Perfect — you’ve basically proven it’s the export filter preset. What’s happening in many shipping systems is the filter isn’t just “which pages to export,” it’s also “which lines/blocks to include,” and whoever built “Forwarder” likely filtered out the DG block by accident.
Step 1 — Identify what the export filter is excluding
Look inside the Forwarder preset for rules like:
• “Hide special instructions / compliance notes” (often kills the DG/hazmat block)
• “Exclude non-inventory lines” (some systems represent DG info as a pseudo-line)
• “Only include shipment-level hazmat” (but your DG data is at item level)
• “Suppress hazardous materials description” unless a specific flag is set (e.g., IsHazMatShipment)
Step 2 — Confirm which object level the template reads
If the document template reads DG from Shipment but your UN number/proper shipping name lives on ItemLine, the export filter may be dropping the join or grouping, so the DG line never renders. This is why you see “DG line missing on packing list” while the item is still marked DG in the UI.
Once we align “what the template expects” with “what the filter delivers,” the dangerous goods line will appear consistently in every export preset.
Customer
The forwarder needs the paperwork to show UN number + proper shipping name + hazard class + packing group, and sometimes “Limited Quantity” or “Lithium battery” text. Right now the export only shows the item description and HS code. We also send EDI to the carrier, and I’m worried the export filter is also dropping DG fields in the EDI map.
You’re thinking correctly — when people say “shipping doc hides dangerous goods line,” the risk is rarely just the PDF. The same filter logic often feeds:
• PDF export packet (invoice/packing list/BOL)
• CSV/XML export to forwarder portals
• EDI / carrier manifest mapping (where missing DG fields can cause rejects or delays)
Step 3 — Treat DG fields as “must-include” and make them filter-proof
For your compliance block, make sure the export path always carries these fields when DG flag is present:
• UN number (identification number)
• Proper Shipping Name (PSN)
• Hazard class/division (and subsidiary risk if applicable)
• Packing group (I/II/III when applicable)
• Additional qualifiers: Limited Quantity (LQ), Excepted Quantity (EQ), “Lithium ion batteries contained in equipment,” etc., if your workflow requires them
If the Forwarder preset is meant to simplify documents, we can still simplify it — but we should never exclude a DG/hazmat line item block when the shipment contains regulated materials.
Customer
Where should we fix it: in the export filter or in the template? We have a document template with a conditional rule like “show DG section only when HazmatShipment = true.” But our HazmatShipment flag isn’t always set even when an item has hazmat attributes. That might be why the DG line is missing.
This is the most common root cause I see: the template checks HazmatShipment at the shipment header, but your DG truth is really “any line item has DG attributes.” When that header flag doesn’t get set (bad automation, missing step, or wrong workflow), the DG block is suppressed and it looks like the export filter “hid” it.
The best fix is a two-part approach (safe and robust):
Step 4 — Fix the data logic (so the shipment knows it contains DG)
• Add/repair the rule that sets HazmatShipment = true whenever any line has a DG/hazmat flag, UN number, hazard class, or packing group.
• If your system supports it, compute a derived field like HasDangerousGoods = true when DG fields exist on any item line (this is more reliable than a manual checkbox).
Step 5 — Make the template condition match reality
• Instead of “show DG section only when HazmatShipment = true,” use “show DG section when any DG item exists.”
• Ensure the template pulls DG fields from the correct level (line/package) so UN number and proper shipping name are printed for the affected items, not hidden behind a header flag that might be stale.
This prevents the classic scenario: “DG line missing on invoice but item is DG in the system.”
Customer
That explains it. Another complication: sometimes the DG details show in the system, but the export packet groups lines and only prints one description line. If there are both DG and non-DG items, the DG line seems to get lost. Is that a grouping/filter issue?
Yes — that’s usually a grouping + suppression problem, and it can feel like an “export filter” even when the filter is fine. Many document templates have logic like “group by SKU” or “group by commodity” to shorten the invoice/packing list. If the DG line is attached to a specific item line, grouping can collapse it away unless the DG fields are included in the grouping key or printed as a separate compliance block.
Step 6 — Make DG fields part of the grouping logic (or print DG as a separate required block)
Options that work well for compliance and forwarder expectations:
• If you group item lines, include DG determinants in the group key (UN number / PSN / hazard class / packing group / LQ). That prevents a DG line from merging into a non-DG line.
• Alternatively, keep the commercial invoice item list grouped, but print a dedicated “Dangerous Goods / Hazmat” section listing each DG item with UN number and proper shipping name. This is clean for auditors and prevents “hazmat line item hidden” issues.
This is also where SEO searches come from: “dangerous goods line missing after export,” “hazmat details not printed,” “UN number not showing on packing list,” and “PDF export hides DG line.”
Customer
We also export a CSV to the forwarder portal, and the DG columns (UN number, hazard class) are blank even though the UI shows them. That makes me think the export filter is explicitly excluding those columns or pulling from the wrong table.
Exactly — “DG columns blank in export” is the smoking gun for an export filter / export mapping issue (not just a visual template). In many systems, the UI shows DG from a joined view, but the export uses a different query or a simplified dataset and misses the join.
Step 7 — Fix the export mapping so DG fields are pulled from the correct source
Common mistakes to look for in the CSV export filter preset:
• Export query only reads shipment header and ignores line-level DG attributes
• DG fields exist per package (outer carton) but export reads per order line without package context
• “Forwarder” preset intentionally removed “compliance columns” to “reduce clutter” (but that’s exactly what forwarders need!)
A safe design is: if HasDangerousGoods = true, then the export must include DG columns (UN, PSN, class, PG) and never leave them blank. If a field is not applicable (e.g., packing group not assigned), output a controlled value rather than silently dropping the line.
Customer
Understood. Could compliance be affected if the DG line is hidden? Our team worries about audits and carrier rejections. We want the shipping documents to consistently show the hazardous materials description. We also ship internationally (ADR/IMDG/IATA depending on mode).
Yes — if a DG shipment goes out with paperwork that hides the dangerous goods line, it can trigger forwarder holds, carrier rejects, and compliance risk. The exact document requirements vary by mode (road/sea/air), but the consistent theme is that dangerous goods need a proper description and supporting information — and it should not disappear because of an export filter preset.
Step 8 — Build a “DG cannot be filtered out” rule
Best practice for ERP/WMS/TMS documents and exports:
• If any item is flagged DG/hazmat, force the output to include DG fields and any required notes (UN number, proper shipping name, class, packing group, limited quantity markers).
• Log/alert when a user chooses an export filter that would hide DG content (“Forwarder preset suppressed DG block”). This prevents accidental non-compliant exports.
• Keep a consistent DG section across commercial invoice, packing list, and BOL/manifest to avoid “DG declaration not showing” complaints from forwarders.
Once you fix the underlying flag logic and update the Forwarder export preset, you’ll stop the “missing dangerous goods line” issue across PDF, CSV, and EDI.
Customer
Great. Can you summarize the “best fix” so we can document it for our shipping ops team? We need a simple checklist: what to change in export filter presets, what to change in templates, and what to test.
Absolutely — here’s a clean, repeatable playbook to fix
shipping doc hides dangerous goods line caused by an
export filter (and to prevent it from returning):
1) Verify where DG disappears
Compare internal preview vs Export PDF vs CSV/XML vs EDI/carrier manifest. If DG fields are blank in export but visible in UI, it’s export mapping/filter logic (not user error).
2) Fix the DG “truth flag”
Ensure a reliable field (e.g.,
HasDangerousGoods) becomes true when any line has DG attributes (UN number, proper shipping name, hazard class, packing group, LQ). Don’t rely on a manually-set header checkbox that can be missed.
3) Update the export filter preset
In the “Forwarder” filter, remove rules that suppress compliance blocks or exclude DG columns. Mark DG fields as “always include when HasDangerousGoods = true.” This fixes: “dangerous goods line missing,” “UN number missing on invoice,” and “hazmat line item hidden.”
4) Update the document template conditions
Change “show DG section only when HazmatShipment = true” to “show DG when any DG item exists,” and pull DG fields from the correct level (line/package). Prevent grouping from collapsing DG into non-DG lines by including DG determinants in grouping or printing a separate DG section.
5) Test with mixed orders
Test: (a) DG-only order, (b) mixed DG + non-DG, (c) LQ/lithium battery note case, and confirm the PDF export, packing list, invoice, and CSV all include UN/PSN/class/PG consistently.
If you want,
start a chat and I’ll help you map the exact export filter rules and template logic so DG lines can’t be hidden again.
Why a shipping document hides the dangerous goods line: export filters, suppression rules, and grouping
When a dangerous goods line is missing on a commercial invoice, packing list, or BOL, it’s usually not that the hazmat data disappeared — it’s that the export filter or template logic removed it. Common causes include “Forwarder” export presets that exclude compliance blocks, templates that only print DG details when a header flag is set (but DG is actually stored on item lines), and grouping rules that merge DG and non-DG items and drop UN number/proper shipping name fields. These issues often show up as: UN number missing, proper shipping name not printed, or hazmat line item hidden after export.
Because the same filtered dataset may also feed CSV exports and EDI/carrier manifests, fixing the export mapping is critical. The safest approach is a “DG cannot be filtered out” rule: if DG exists anywhere in the shipment, DG fields must be included across outputs.
How to confirm it’s the export filter (not the data): a fast diagnosis checklist
Run the same shipment through three paths: (1) internal preview, (2) Export PDF with “Standard” preset, (3) Export PDF with “Forwarder” preset. If the DG line disappears only under one preset, that preset is suppressing the DG section or dropping DG columns. Then test the CSV/XML export: if DG columns are blank while the UI shows DG attributes, your export query is pulling from the wrong table/object level or missing the join. Finally, test a mixed shipment (DG + non-DG) to catch grouping issues that can hide the DG line when items are consolidated.
This process quickly separates “bad data” from “bad export rules” and prevents recurring complaints from forwarders and carriers.
Shipping doc hides dangerous goods line — quick troubleshooting tips
Fix the export preset, align template conditions to real DG data, and test mixed shipments.
Fast path: audit the export filter preset that hides DG/hazmat content, then make DG fields mandatory when any line has UN number/proper shipping name/hazard class/packing group. Replace “shipment header hazmat” checks with a derived HasDangerousGoods rule, and prevent grouping from merging DG and non-DG items without DG determinants in the grouping key. Validate PDF export, packing list, invoice, and CSV/EDI outputs with a DG-only and mixed-order test pack.
Disclaimer: This information is AI-generated and intended for general guidance only. For advice specific to your shipping system, carriers, and regulatory mode, please consult a verified expert on Whizz-Tech before changing production export templates or compliance workflows.
Why does the dangerous goods line disappear only when I use a specific export filter preset?
Many systems apply export presets to both layout and data selection. A “Forwarder” preset may suppress compliance blocks, drop DG columns, or switch templates. If DG appears in preview but disappears in Export PDF/CSV, the preset is filtering out line-level DG data (UN number, proper shipping name, hazard class, packing group) or triggering a template rule that hides the DG section.
How do I fix “UN number missing” and “proper shipping name not printed” on invoice/packing list?
Ensure DG fields are pulled from the correct level (item line or package) and not dependent on a shipment header checkbox. Add a derived flag like HasDangerousGoods and make DG fields mandatory when it’s true. Update grouping keys so DG and non-DG items don’t merge in a way that drops DG fields.
Could the same export filter hide DG fields in EDI or carrier manifests too?
Yes. Export filters often drive multiple outputs: PDF packets, CSV/XML exports, and EDI mappings. If DG columns are blank in exports while the UI shows them, your export mapping/query is missing the join to DG tables or intentionally excludes “compliance” fields. Fixing the export dataset typically fixes EDI/carrier output too.
What should we test to confirm the fix is complete?
Test (1) DG-only shipment, (2) mixed DG + non-DG shipment, and (3) a case with Limited Quantity/lithium battery notes if applicable. Validate the commercial invoice, packing list, BOL/manifest, CSV/XML exports, and any EDI outputs all include UN number, proper shipping name, hazard class, and packing group consistently across export presets.