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.
COSTCO D.99B

COSTCO — EDIFACT Container Stuffing Confirmation Message (D.99B)

The COSTCO message confirms the stuffing (loading) of a container, sent by a container depot operator or a consolidator: it fixes the actual contents (commodities, weight, seals), stuffing date and references to the upcoming booking and B/L. This page summarises the segment structure as published by UN/CEFACT for directory D.99B.

Purpose

The COSTCO message confirms the stuffing (loading) of a container, sent by a container depot operator or a consolidator: it fixes the actual contents (commodities, weight, seals), stuffing date and references to the upcoming booking and B/L.

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

Segment structure

The COSTCO D.99B message has 55 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.

Pos.TagNameSRep.
0010UNHMessage headerM1
0020BGMBeginning of messageM1
0030DTMDate/time/periodC×9
0040FTXFree textC×9
0050  SG1Group (×9)C×9
0060  RFFReferenceM1
0070  DTMDate/time/periodC×9
0080    SG2Group (×1)M1
0090    TDTDetails of transportM1
0100    DTMDate/time/periodC×9
0110      SG3Group (×9)C×9
0120      LOCPlace/location identificationM1
0130      DTMDate/time/periodC×9
0140        SG4Group (×9)M×9
0150        NADName and addressM1
0160          SG5Group (×9)C×9
0170          CTAContact informationM1
0180          COMCommunication contactC×9
0190            SG6Group (×999)M×999
0200            EQDEquipment detailsM1
0210            RFFReferenceC×9
0220            DTMDate/time/periodC×9
0230            TSRTransport service requirementsC×9
0240            DIMDimensionsC×9
0250            SELSeal numberC×9
0260            EQAAttached equipmentC×9
0270            HANHandling instructionsC×9
0280            NADName and addressC×9
0290              SG7Group (×999)M×999
0300              CNIConsignment informationM1
0310              RFFReferenceC×9
0320                SG8Group (×999)C×999
0330                GIDGoods item detailsM1
0340                HANHandling instructionsC×9
0350                TMPTemperatureC×9
0360                RNGRange detailsC×9
0370                FTXFree textC×9
0380                MEAMeasurementsC×9
0390                PCIPackage identificationC×9
0400                DOCDocument/message detailsC×9
0410                  SG9Group (×999)M×999
0420                  SGPSplit goods placementM1
0430                  MEAMeasurementsC×9
0440                    SG10Group (×99)C×99
0450                    DGSDangerous goodsM1
0460                    FTXFree textC×9
0470                    MEAMeasurementsC×9
0480                      SG11Group (×9)C×9
0490                      CTAContact informationM1
0500                      COMCommunication contactC×9
0510                        SG12Group (×999)C×999
0520                        SGPSplit goods placementM1
0530                        MEAMeasurementsC×9
0540                        CNTControl totalC1
0550UNTMessage trailerM1

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 COSTCO 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

  • COM in the header section (status C, repeat ×9) — not present at the top of the corresponding D.96A section.

Status changes (M ↔ C)

  • LOC (header): status C in D.96A → M in D.99B.
  • CTA (header): status C in D.96A → M in D.99B.
  • CNT (header): status M in D.96A → C in D.99B.

Max-repeat changes

  • RFF (header): repeat ×9 in D.96A → ×1 in D.99B.
  • LOC (header): repeat ×9 in D.96A → ×1 in D.99B.
  • CTA (header): repeat ×9 in D.96A → ×1 in D.99B.

Structural example

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

edifact costco-d99b-example.edi
UNB+UNOC:3+5410000000123:14+5410000000456:14+260514:1430+CTRL099001'
UNH+1+COSTCO:D:99B:UN'
BGM+267+COSTCO-2026-0152+9'
DTM+137:202605141430:203'
DTM+138:202605141200:203'
FTX+AAI+++Stuffing completed - high cube container - 24 pallets'
UNT+6+1'
UNZ+1+CTRL099001'

Common errors

  • Misaligned UNH tokens — The UNH+...+COSTCO: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: COSTCO D.96A, COSTCO D.01B, COSTCO D.10A, COSTCO D.16B, COSTCO D.21B, COSTCO D.24A, COSTCO D.97A, COSTCO D.00B, COSTCO D.02B, COSTCO D.05A, COSTCO D.08A, COSTCO D.13B, COSTCO D.18B, COSTCO D.20B.

← All EDIFACT versions