X12 355 — U.S. Customs Acceptance / Rejection
The 355 is the CBP response to a 352 (manifest) or a 309 (import manifest): acceptance, hold or rejection, with reason code and expected action.
Purpose
The 355 documents the CBP decision on a received manifest: 1AN = Accepted, 1AT = Hold, 1AC = Rejected, plus a long list of finer codes (Cargo Examination, Documentation Required). It indicates the source document, manifest number, and the action the carrier must take.
It is the status reconciliation instrument of the ACE chain. Acknowledged by 997 (no business response — the 355 is itself a response). It is used across modes: motor (CBP truck manifests), air (cargo screening), ocean, rail.
Envelope structure
The 355 travels within the three X12 envelope levels (ISA/IEA,
GS/GE with functional group AY, and ST/SE).
Didactic example in release 004010:
ISA*00* *00* *ZZ*USCBPACE *ZZ*ACMECARRIER *260514*1600*U*00401*000000355*0*P*>~
GS*AY*USCBPACE*ACMECARRIER*20260514*1600*1*X*004010~
ST*355*0001~
M10*ACME LINES*A*1234567*EAST*ACME-EAST-005*M*20260514~
P4*USNYC*20260520~
N9*MA*MAN-2026-NYC-0098~
NA*1AN*MAN-2026-NYC-0098~
N7*MSCU*4501230*22G1~
NA*1AN*BL-2026-EAST-998~
N7*MSCU*7782314*42G1~
NA*1AT*BL-2026-EAST-999*Cargo Examination Required~
SE*10*0001~
GE*1*1~
IEA*1*000000355~ Common segments
- Header —
ST,M10(Manifest Identifying Info),P4(Port). - Decision — repeated
NA(Cross-Reference Equipment): status code (1AN, 1AT, 1AC), reference document. - Unit details —
N7(Equipment) +NAfor unit-level decisions, accepting Accept / Hold mix inside a single manifest. - Reason — free-text in
NA03or qualified reason code. - Summary —
SE.
Common pitfalls
- 1AT is not a rejection: Hold-for-exam does not mean the manifest is broken; the carrier must present the container for inspection, not re-send the 352. Confusing both wastes hours.
- Sliding code list: the
NA01code list evolves (new Hold codes post-9/11, post-COVID); a frozen parser ignores new codes and masks critical holds. - Partial response: a 355 can accept some units and hold others inside the same manifest — an all-or-nothing parser misses container-level holds.
Related transactions
Documentation
The code 355 and the name U.S. Customs Acceptance / Rejection are public and listed on x12.org/products/transaction-sets. The complete structure of loops, qualifiers and code lists is distributed by DISA via the proprietary Implementation Guides (TR3). ediverse.io covers only public concepts, the envelope and didactic examples.