ediverse Explore the platform

Spotlight PEPPOL BIS Billing 3.0 The EU e-invoicing mandate is here — France Sept 2026, Belgium Jan 2026, Germany 2025.
DESADV D.99B

DESADV — EDIFACT Despatch Advice (ASN) (D.99B)

The DESADV (Despatch Advice) message announces the shipment of goods to a delivery point, including pack, pallet and SSCC details. It is the universal Advance Shipping Notice outside North America. This page summarises the segment structure as published by UN/CEFACT for directory D.99B.

Purpose

The DESADV (Despatch Advice) message announces the shipment of goods to a delivery point, including pack, pallet and SSCC details. It is the universal Advance Shipping Notice outside North America.

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 desadv_c.htm hosted on service.unece.org.

Segment structure

The DESADV D.99B message has 38 header entries, 75 detail entries and 2 summary entries (segments and groups combined). Groups are shown in bold and their members are indented by actual nesting depth.

Pos.TagNameSRep.
0010UNHMessage headerM1
0020BGMBeginning of messageM1
0030DTMDate/time/periodC×10
0040ALIAdditional informationC×5
0050MEAMeasurementsC×5
0060MOAMonetary amountC×5
0070CUXCurrenciesC×9
0080  SG1Group (×10)C×10
0090  RFFReferenceM1
0100  DTMDate/time/periodC1
0110    SG2Group (×99)C×99
0120    NADName and addressM1
0130    LOCPlace/location identificationC×10
0140      SG3Group (×10)C×10
0150      RFFReferenceM1
0160      DTMDate/time/periodC1
0170        SG4Group (×10)C×10
0180        CTAContact informationM1
0190        COMCommunication contactC×5
0200          SG5Group (×10)C×10
0210          TODTerms of delivery or transportM1
0220          LOCPlace/location identificationC×5
0230          FTXFree textC×5
0240            SG6Group (×10)C×10
0250            TDTDetails of transportM1
0260            PCDPercentage detailsC×6
0270            TMDTransport movement detailsC1
0280              SG7Group (×10)C×10
0290              LOCPlace/location identificationM1
0300              DTMDate/time/periodC×10
0310                SG8Group (×10)C×10
0320                EQDEquipment detailsM1
0330                MEAMeasurementsC×5
0340                SELSeal numberC×25
0350                EQAAttached equipmentC×5
0360                  SG9Group (×10)C×10
0370                  HANHandling instructionsM1
0380                  FTXFree textC×10

Detail

Pos.TagNameSRep.
0390  SG10Group (×9999)C×9999
0400  CPSConsignment packing sequenceM1
0410  FTXFree textC×5
0420  QVRQuantity variancesC×9
0430    SG11Group (×9999)C×9999
0440    PACPackageM1
0450    MEAMeasurementsC×10
0460    QTYQuantityC×10
0470      SG12Group (×10)C×10
0480      HANHandling instructionsM1
0490      FTXFree textC×10
0500        SG13Group (×1000)C×1000
0510        PCIPackage identificationM1
0520        RFFReferenceC1
0530        DTMDate/time/periodC×5
0540          SG14Group (×99)C×99
0550          GIRRelated identification numbersM1
0560          DTMDate/time/periodC×5
0570            SG15Group (×99)C×99
0580            GINGoods identity numberM1
0590            DLMDelivery limitationsC×10
0600              SG16Group (×99)C×99
0610              CODComponent detailsM1
0620              MEAMeasurementsC×9
0630              QTYQuantityC×9
0640              PCDPercentage detailsC×9
0650                SG17Group (×9999)C×9999
0660                LINLine itemM1
0670                PIAAdditional product idC×10
0680                IMDItem descriptionC×25
0690                MEAMeasurementsC×10
0700                QTYQuantityC×10
0710                ALIAdditional informationC×10
0720                GINGoods identity numberC×100
0730                GIRRelated identification numbersC×100
0740                DLMDelivery limitationsC×100
0750                DTMDate/time/periodC×5
0760                NADName and addressC×99
0770                TDTDetails of transportC1
0780                TMDTransport movement detailsC1
0790                HANHandling instructionsC×20
0800                FTXFree textC×99
0810                MOAMonetary amountC×5
0820                  SG18Group (×99)C×99
0830                  RFFReferenceM1
0840                  NADName and addressC1
0850                  CTAContact informationC1
0860                  DTMDate/time/periodC1
0870                    SG19Group (×9999)C×9999
0880                    DGSDangerous goodsM1
0890                    QTYQuantityC1
0900                    FTXFree textC×5
0910                      SG20Group (×100)C×100
0920                      LOCPlace/location identificationM1
0930                      NADName and addressC1
0940                      DTMDate/time/periodC1
0950                      QTYQuantityC×10
0960                        SG21Group (×1000)C×1000
0970                        SGPSplit goods placementM1
0980                        QTYQuantityC×10
0990                          SG22Group (×9999)C×9999
1000                          PCIPackage identificationM1
1010                          DTMDate/time/periodC×5
1020                          MEAMeasurementsC×10
1030                          QTYQuantityC1
1040                            SG23Group (×10)C×10
1050                            GINGoods identity numberM1
1060                            DLMDelivery limitationsC×100
1070                              SG24Group (×10)C×10
1080                              HANHandling instructionsM1
1090                              FTXFree textC×5
1100                              GINGoods identity numberC×1000
1110                                SG25Group (×10)C×10
1120                                QVRQuantity variancesM1
1130                                DTMDate/time/periodC×5

Summary

Pos.TagNameSRep.
1140CNTControl totalC×5
1150UNTMessage trailerM1

Changes vs D.96A

Top-level differences between D.96A and D.99B for the DESADV 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.

Segments added vs D.96A

  • CUX in the header section (status C, repeat ×9) — not present at the top of the corresponding D.96A section.
  • TMD in the header section (status C, repeat ×1) — not present at the top of the corresponding D.96A section.
  • COD in the detail section (status M, repeat ×1) — not present at the top of the corresponding D.96A section.
  • PCD in the detail section (status C, repeat ×9) — not present at the top of the corresponding D.96A section.
  • TDT in the detail section (status C, repeat ×1) — not present at the top of the corresponding D.96A section.
  • TMD in the detail section (status C, repeat ×1) — not present at the top of the corresponding D.96A section.
  • CTA in the detail section (status C, repeat ×1) — not present at the top of the corresponding D.96A section.

Status changes (M ↔ C)

  • QVR (detail): status M in D.96A → C in D.99B.
  • GIR (detail): status C in D.96A → M in D.99B.

Max-repeat changes

  • QVR (detail): repeat ×1 in D.96A → ×9 in D.99B.
  • GIR (detail): repeat ×99 in D.96A → ×1 in D.99B.
  • NAD (detail): repeat ×1 in D.96A → ×99 in D.99B.

Structural example

Minimal example of an DESADV D.99B message with mandatory segments only. The goal is to show the exact version declared in UNH (DESADV:D:99B:UN) — not to replicate a full business case (see the DESADV D.96A page for an annotated example).

edifact desadv-d99b-example.edi
UNB+UNOC:3+5410000000123:14+5410000000456:14+260514:1430+CTRL099001'
UNH+1+DESADV:D:99B:UN'
BGM+351+ASN9001+9'
DTM+137:20260514:102'
DTM+11:20260515:102'
NAD+SU+5410000000456::9'
NAD+BY+5410000000123::9'
CPS+1'
PAC+1++201'
PCI+33E'
GIN+BJ+340000000000000001'
LIN+1++3520000001234:EN'
QTY+12:10'
UNT+13+1'
UNZ+1+CTRL099001'

Common errors

  • Misaligned UNH tokens — The UNH+...+DESADV:D:99B:UN token 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.

Other versions of this message available on ediverse.io: DESADV D.96A, DESADV D.01B, DESADV D.10A, DESADV D.16B, DESADV D.21B, DESADV D.24A, DESADV D.97A, DESADV D.00B, DESADV D.02B, DESADV D.05A, DESADV D.08A, DESADV D.13B, DESADV D.18B, DESADV D.20B.

X12 functional equivalent: X12 856.

← All EDIFACT versions