HANMOV — EDIFACT Cargo / Goods Handling and Movement Message (D.99B)
The HANMOV message describes the cargo handling and movement operations within a logistics site — terminal, warehouse, port or airport hub: lifting orders, internal moves, inter-terminal transfers. It bridges WMS / TOS systems with their operational resources. This page summarises the segment structure as published by UN/CEFACT for directory D.99B.
Purpose
The HANMOV message describes the cargo handling and movement operations within a logistics site — terminal, warehouse, port or airport hub: lifting orders, internal moves, inter-terminal transfers. It bridges WMS / TOS systems with their operational resources.
This page focuses on the structure published by UN/CEFACT for directory D.99B. The segments listed, their status (M / C), position and repetition factor are extracted from the official file hanmov_c.htm hosted on service.unece.org.
Segment structure
The HANMOV D.99B message has 89 header entries, 0 detail entries and 0 summary entries (segments and groups combined). Groups are shown in bold and their members are indented by actual nesting depth.
Header
| Pos. | Tag | Name | S | Rep. |
|---|---|---|---|---|
0010 | UNH | Message header | M | 1 |
0020 | BGM | Beginning of message | M | 1 |
0030 | DTM | Date/time/period | C | ×9 |
0040 | HAN | Handling instructions | C | ×9 |
0050 | FTX | Free text | C | ×9 |
0060 | CNT | Control total | C | ×9 |
0070 | CUX | Currencies | C | ×9 |
0080 | SG1 | Group (×9) | C | ×9 |
0090 | TCC | Transport charge/rate calculations | M | 1 |
0100 | LOC | Place/location identification | C | ×9 |
0110 | FTX | Free text | C | ×9 |
0120 | CUX | Currencies | C | ×9 |
0130 | SG2 | Group (×9) | C | ×9 |
0140 | RFF | Reference | M | 1 |
0150 | DTM | Date/time/period | C | ×9 |
0160 | SG3 | Group (×9) | C | ×9 |
0170 | NAD | Name and address | M | 1 |
0180 | LOC | Place/location identification | C | ×9 |
0190 | DOC | Document/message details | C | ×9 |
0200 | SG4 | Group (×9) | C | ×9 |
0210 | RFF | Reference | M | 1 |
0220 | DTM | Date/time/period | C | ×9 |
0230 | SG5 | Group (×9) | C | ×9 |
0240 | CTA | Contact information | M | 1 |
0250 | COM | Communication contact | C | ×9 |
0260 | SG6 | Group (×9) | C | ×9 |
0270 | TDT | Details of transport | M | 1 |
0280 | DTM | Date/time/period | C | ×9 |
0290 | LOC | Place/location identification | C | ×9 |
0300 | RFF | Reference | C | ×9 |
0310 | SG7 | Group (×99) | C | ×99 |
0320 | LIN | Line item | M | 1 |
0330 | PIA | Additional product id | C | ×9 |
0340 | IMD | Item description | C | ×99 |
0350 | HAN | Handling instructions | C | ×9 |
0360 | TCC | Transport charge/rate calculations | C | ×9 |
0370 | SG8 | Group (×9) | C | ×9 |
0380 | NAD | Name and address | M | 1 |
0390 | SG9 | Group (×1) | C | 1 |
0400 | CTA | Contact information | M | 1 |
0410 | COM | Communication contact | C | ×9 |
0420 | MEA | Measurements | C | ×9 |
0430 | QTY | Quantity | C | ×9 |
0440 | GIN | Goods identity number | C | ×99 |
0450 | GIR | Related identification numbers | C | ×99 |
0460 | DTM | Date/time/period | C | ×9 |
0470 | FTX | Free text | C | ×9 |
0480 | SG10 | Group (×9) | C | ×9 |
0490 | RFF | Reference | M | 1 |
0500 | DTM | Date/time/period | C | 1 |
0510 | LOC | Place/location identification | C | ×9 |
0520 | SG11 | Group (×99) | C | ×99 |
0530 | PAC | Package | M | 1 |
0540 | MEA | Measurements | C | ×9 |
0550 | QTY | Quantity | C | ×9 |
0560 | SG12 | Group (×9) | C | ×9 |
0570 | PCI | Package identification | M | 1 |
0580 | GIN | Goods identity number | C | ×9 |
0590 | SG13 | Group (×99) | C | ×99 |
0600 | GID | Goods item details | M | 1 |
0610 | HAN | Handling instructions | C | 1 |
0620 | CST | Customs status of goods | C | 1 |
0630 | TMP | Temperature | C | 1 |
0640 | RNG | Range details | C | 1 |
0650 | LOC | Place/location identification | C | ×9 |
0660 | MOA | Monetary amount | C | ×9 |
0670 | PIA | Additional product id | C | ×9 |
0680 | FTX | Free text | C | ×9 |
0690 | NAD | Name and address | C | ×9 |
0700 | MEA | Measurements | C | ×9 |
0710 | DIM | Dimensions | C | ×9 |
0720 | RFF | Reference | C | ×9 |
0730 | PCI | Package identification | C | ×9 |
0740 | SG14 | Group (×9) | C | ×9 |
0750 | DOC | Document/message details | M | 1 |
0760 | DTM | Date/time/period | C | ×9 |
0770 | SGP | Split goods placement | C | ×9 |
0780 | TCC | Transport charge/rate calculations | C | ×9 |
0790 | SG15 | Group (×9) | C | ×9 |
0800 | DGS | Dangerous goods | M | 1 |
0810 | FTX | Free text | C | ×9 |
0820 | MEA | Measurements | C | ×9 |
0830 | SG16 | Group (×9) | C | ×9 |
0840 | EQD | Equipment details | M | 1 |
0850 | EQN | Number of units | C | 1 |
0860 | SEL | Seal number | C | 1 |
0870 | EQA | Attached equipment | C | ×99 |
0880 | RFF | Reference | C | ×9 |
0890 | UNT | Message trailer | M | 1 |
Detail
No segment in this section.
Summary
No segment in this section.
Changes vs D.96A
Top-level differences between D.96A and D.99B for the HANMOV message (segments directly inside header / detail / summary, ignoring nested groups). The comparison is indicative: a given tag may have evolved inside nested groups without showing up in this synthesis.
No top-level differences detected between D.96A and D.99B for this message. Differences are then limited to nested groups and code lists.
Structural example
Minimal example of an HANMOV D.99B message with mandatory segments only. The goal is to show the exact version declared in UNH (HANMOV:D:99B:UN) — not to replicate a full business case (see the HANMOV D.96A page for an annotated example).
UNB+UNOC:3+5410000000123:14+5410000000456:14+260514:1430+CTRL099001'
UNH+1+HANMOV:D:99B:UN'
BGM+266+HANMOV-2026-1004+9'
DTM+137:202605141430:203'
HAN+L:::Lifting and inland transfer'
FTX+AAI+++Move 24 containers from yard Block A to rail siding R2'
LOC+5+FRLEH::6'
LOC+11+FRTGV::6'
UNT+8+1'
UNZ+1+CTRL099001' Common errors
- Misaligned UNH tokens — The
UNH+...+HANMOV:D:99B:UNtoken must reflect exactly the directory in use — a mismatch between the UNH release and the release agreed with the partner is rejected by every strict validator. - Wrong UNT segment count — The value after
UNT+must include UNH and UNT themselves. By far the most common sender-side error, regardless of the directory in use. - Stale code lists — Between D.96A and D.99B, several code lists received new qualifiers (DTM status, RFF qualifier, NAD codes…). Reusing an older directory’s code tables triggers warnings or even rejections depending on the partner’s strict-conformance mode.
Related messages
Other versions of this message available on ediverse.io: HANMOV D.96A, HANMOV D.01B, HANMOV D.10A, HANMOV D.16B, HANMOV D.21B, HANMOV D.24A, HANMOV D.97A, HANMOV D.00B, HANMOV D.02B, HANMOV D.05A, HANMOV D.08A, HANMOV D.13B, HANMOV D.18B, HANMOV D.20B.