Skip to content
EDI 300 — EDI TransactionPublished Nov 7, 2026

EDI 300 Ocean Booking Request: Spec and Sample

EDI 300 explained: the ocean booking request, its B1, Y1, Y2, R4 and L0 segments, a live sample, and how it leads to the 301, 304, 310 and 315.

The EDI 300 is where an ocean shipment starts. Before a container is released, loaded or billed, someone has to ask the carrier for space. The 300 is that request in electronic form: how many boxes, what size, from where, to where, around which date, and what is going in them. The carrier answers with a 301 confirmation and a booking number, and every later ocean document hangs off that number.

This guide covers what the 300 carries, where it sits in the ocean flow, every segment you will map, a live sample for two 40-foot high cube containers from Shanghai to Southern California, how it differs from the 301 and the motor-carrier 204, and the errors that turn into rolled bookings and wrong equipment.

What Is an EDI 300?

An EDI 300 is the Reservation (Booking Request) (Ocean) transaction set defined by ASC X12, used to request space on an ocean carrier's vessel for a shipment. It names the cargo, the equipment wanted, the places of receipt, loading, discharge and delivery, and the dates the shipper is working to. The 300 travels in functional group RO (the GS01 value), which it shares with the 301 confirmation and the 303 booking cancellation.

Authoritative references for 300 work:

  • The X12 transaction set catalog defines the 300 structure, segment order and loops
  • Stedi's X12 004010 reference for the 300 lists the segments, elements and code values for release 004010
  • The UN/LOCODE list maintained by UNECE supplies the five-character location codes (such as CNSHA and USLAX) most carriers expect in the R4 segments
  • Each ocean carrier publishes its own 300 implementation guide, which sets the references, equipment codes and service codes it accepts

Who sends it? Whoever controls the booking: an exporter shipping on its own contract, an importer booking freight on a buyer-controlled move, or a forwarder or NVOCC booking on behalf of either.

Who receives it? The ocean carrier, directly or through a booking portal or network that passes the 300 on.

When is it sent? Days or weeks before the sailing, once the cargo and the ready date are known. A changed request goes as another 300 with a change action, and a cancellation usually goes as a 303.

Why does it matter? The booking reserves the space and the equipment. If the container type, count or origin is wrong on the 300, the carrier confirms the wrong thing, the wrong empties are released, or the cargo misses its vessel.

The Ocean Document Flow: 300, 301, 304, 310, 315 and 322

SetX12 nameUsually sent byWhat it does
300Reservation (Booking Request) (Ocean)Shipper, importer, forwarder or NVOCCAsks the carrier for space
301Confirmation (Ocean)Ocean carrierConfirms, changes or declines the booking and returns the booking number
303Booking Cancellation (Ocean)Shipper, importer, forwarder or NVOCCCancels a booking
304Shipping InstructionsShipper, importer, forwarder or NVOCCGives the details for the bill of lading
310Freight Receipt and Invoice (Ocean)Ocean carrierReturns the bill of lading data and the freight charges
315Status Details (Ocean)Ocean carrierReports container events to the shipper or consignee
322Terminal Operations and Intermodal Ramp ActivityMarine terminal or rail rampReports container events at the terminal to the carrier or railroad

A typical full-container-load move runs: 300 booking request, 301 confirmation with the booking number and empty release, empty pickup and gate-in, 304 shipping instructions before the documentation cutoff, 310 bill of lading and charges, then 315 events through to empty return. Terminals report their own gate and vessel moves to the carrier on 322s, and those events often feed the carrier's 315s. Carriers differ in which sets they support, so treat the sequence as typical rather than fixed.

Interactive Example: 300 for Two 40-Foot High Cubes, Shanghai to Ontario, California

A US importer, Cascade Home Imports, books two 40-foot high cube containers of wooden furniture parts with an ocean carrier (SCAC BLUQ). The supplier in Shanghai is the shipper. B1 carries the importer's shipment reference and a new-request action code. G61 gives the booking desk to call. Y1 asks for a sailing around 3 November and names the carrier and mode. Y2 requests two 45G1 containers without chassis on pier-to-house service. N9 carries the purchase order. The R4 loops give the place of receipt, the port of loading with the requested departure, the port of discharge and the place of delivery. L0 and L5 describe 1,240 cartons, 18,420 kg and 58.4 cubic meters. All names, numbers and codes for the parties, carrier and cargo are fictional, and the same shipment runs through the 301, 304, 310 and 315 samples on this site.

Use the Plain English tab for a readable summary, or click any segment to break it down element by element.

Live exampleOcean CarrierEDI 300

Importer 300 Ocean Booking Request (2 x 40ft HC, Shanghai to Ontario CA)

A booking request to an ocean carrier for two 40-foot high cube containers of furniture parts: the shipment reference and new-request action in B1, a booking desk contact in G61, the requested sailing in Y1, container count, type and service in Y2, the PO in N9, shipper and consignee, the four routing points in R4, and the cargo in L0/L5

Document
300 Reservation (Booking Request) (Ocean)
From / to
CASCADEHOMEIMP → BLUQ
Segments
23
Interchange date
Oct 16, 2026

Raw EDI (X12)

1
ISA*00* *00* *ZZ*CASCADEHOMEIMP *02*BLUQ *261016*1015*U*00401*000003001*0*P*>~
2
GS*RO*CASCADEHOMEIMP*BLUQ*20261016*1015*3001*X*004010~
3
ST*300*0001~
4
B1**CHI2610160412**N~
5
G61*IC*OCEAN BOOKINGS DESK*TE*9095550142~
6
Y1*20261103**BLUQ*O~
7
Y2*2*R*PH*45G1~
8
N9*PO*4500918832~
9
N1*SH*LINHAI WOODCRAFT CO LTD~
10
N4*SHANGHAI**201800*CN~
11
N1*CN*CASCADE HOME IMPORTS LLC~
12
N4*ONTARIO*CA*91761*US~
13
R4*R*UN*CNSHA*SHANGHAI*CN~
14
R4*L*UN*CNSHA*SHANGHAI*CN~
15
DTM*369*20261103~
16
R4*D*UN*USLAX*LOS ANGELES*US~
17
R4*E*UN*USONT*ONTARIO*US~
18
LX*1~
19
L0*1***18420*G*58.4*X*1240*CTN**K~
20
L5*1*WOODEN FURNITURE PARTS~
21
SE*19*0001~
22
GE*1*3001~
23
IEA*1*000003001~

Human-Readable

Interchange

Sender ID(ZZ)CASCADEHOMEIMP
Receiver ID(02)BLUQ
Date261016
Time1015
Standards IDU
Version00401
Control Number000003001
Acknowledgment RequestedNo
UsageProduction
Included Groups (IEA01)1

Functional Group

Functional IDRORO
SenderCASCADEHOMEIMP
ReceiverBLUQ
Date20261016
Time1015
Control Number3001
Agency CodeX
Version004010
Transactions1
Reported Transaction Count (GE01)1

Transaction 300

Reservation (Booking Request) (Ocean)
Transaction Type300
Control Number0001
Segments, ST to SE19
Count in SE0119 (matches)

Segment Detail

B1Beginning Segment for Booking or Pick-up/Delivery
B102Shipment Identification NumberCHI2610160412
B104Reservation Action CodeN
G61Contact
G6101Contact Function CodeIC
G6102NameOCEAN BOOKINGS DESK
G6103Communication Number QualifierTE
G6104Communication Number9095550142
Y1Space Reservation Request
Y101Sailing/Flight Date Estimated20261103
Y103Standard Carrier Alpha CodeBLUQ
Y104Transportation Method/Type CodeO
Y2Container Details
Y201Number of Containers2
Y202Container Type Request CodeR
Y203Type of Service CodePH
Y204Equipment Type45G1
N9Reference Identification
N901Reference Identification QualifierPO
N902Reference Identification4500918832
N1Party Identification
N101Entity CodeSH
N102NameLINHAI WOODCRAFT CO LTD
N4Geographic Location
N401CitySHANGHAI
N403Postal Code201800
N404CountryCN
N1Party Identification
N101Entity CodeCN
N102NameCASCADE HOME IMPORTS LLC
N4Geographic Location
N401CityONTARIO
N402State/ProvinceCA
N403Postal Code91761
N404CountryUS
R4Port or Terminal
R401Port or Terminal Function CodeR
R402Location QualifierUN
R403Location IdentifierCNSHA
R404Port NameSHANGHAI
R405Country CodeCN
R4Port or Terminal
R401Port or Terminal Function CodeL
R402Location QualifierUN
R403Location IdentifierCNSHA
R404Port NameSHANGHAI
R405Country CodeCN
DTMDate/Time Reference
DTM01Date Qualifier369
DTM02Date20261103
R4Port or Terminal
R401Port or Terminal Function CodeD
R402Location QualifierUN
R403Location IdentifierUSLAX
R404Port NameLOS ANGELES
R405Country CodeUS
R4Port or Terminal
R401Port or Terminal Function CodeE
R402Location QualifierUN
R403Location IdentifierUSONT
R404Port NameONTARIO
R405Country CodeUS
LXAssigned Number
LX01Assigned Number1
L0Line Item - Quantity and Weight
L001Lading Line Item Number1
L004Weight18420
L005Weight QualifierG
L006Volume58.4
L007Volume Unit QualifierX
L008Lading Quantity1240
L009Packaging Form CodeCTN
L011Weight Unit CodeK
L5Description, Marks and Numbers
L501Lading Line Item Number1
L502Lading DescriptionWOODEN FURNITURE PARTS
1 functional group1 transactionControl #000003001Valid

300 Structure at a Glance

The table follows X12 release 004010 and lists the segments most bookings use. The standard has more, including authentication (Y6), priority (Y7), route preferences (R2A), equipment attributes (EA), hazardous material (H1, H2) and remarks (K1).

AreaSegmentNameUsage in the standardNotes
HeadingSTTransaction Set HeaderMandatoryST01 = 300
HeadingB1Beginning Segment for Booking or Pick-up/DeliveryMandatoryShipment reference and reservation action
HeadingG61ContactOptional, up to 3Booking contact
HeadingY1Space Reservation RequestMandatoryRequested sailing date, carrier, mode
Heading loopY2 / W09Container Details, Equipment and TemperatureMandatory, up to 10Container count, type, service; reefer settings in W09
HeadingN9Reference IdentificationOptional, up to 100PO and other references
Heading loopN1 / N2 / N3 / N4 / G61Name and addressMandatory, up to 10Shipper, consignee and other parties
Heading loopR4 / DTMPort or Terminal, Date/TimeMandatory, up to 20Receipt, loading, discharge and delivery points
HeadingH3Special Handling InstructionsOptional, up to 6Handling requirements
Detail loopLXAssigned NumberRepeats up to 999One loop per cargo line
Detail loopN7Equipment DetailsOptionalSpecific equipment, when known
Detail loopL0 / L5 / L4Quantity and Weight, Description, MeasurementOptionalThe cargo
DetailV1Vessel IdentificationOptional, up to 2A requested vessel, when the shipper has one in mind
SummarySETransaction Set TrailerMandatorySegment count and control number

"Optional" in the standard is often "required" in a carrier's guide. Many carriers insist on a contact, the commodity and the weight on every booking.

Key Segments Explained

B1: Beginning Segment for Booking or Pick-up/Delivery

B1**CHI2610160412**N~
ElementNameExampleWhat it means
B101Standard Carrier Alpha CodeA SCAC; the standard describes it as the carrier sending the transmission, so it is often empty on a 300 sent by a shipper
B102Shipment Identification NumberCHI2610160412The sender's reference for this shipment. The standard says it must not contain blanks or special characters
B103DateThe booking date; carriers fill it on the 301
B104Reservation Action CodeNN new, U change, R delete. The carrier uses A, B, C and D on the 301

Keep B102 unique per booking request. The carrier echoes it on the 301, and it is the only key you have until the booking number comes back.

Y1: Space Reservation Request

Y1*20261103**BLUQ*O~
ElementNameExampleWhat it means
Y101Sailing/Flight Date Estimated20261103The sailing date you are asking for
Y102DateThe date the shipment is available at origin, qualified by Y109. The two travel together
Y103Standard Carrier Alpha CodeBLUQThe carrier you are booking with
Y104Transportation Method/Type CodeOO containerized ocean
Y108Tariff Service CodeA rating service code, when the carrier's guide asks for one

The requested sailing is a request. The carrier's 301 tells you the vessel and date it actually gave you, and the two often differ.

Y2: Container Details

Y2*2*R*PH*45G1~
ElementNameExampleWhat it means
Y201Number of Containers2How many containers of this type
Y202Container Type Request CodeRR containers only, C containers with chassis, W chassis only, S shipper to provide
Y203Type of Service CodePHThe extent of service: PH pier-to-house, PP pier-to-pier, HH house-to-house, CY container yard, DD door to door and others
Y204Equipment Type45G1A four-character equipment type; 45G1 is the ISO 6346 size-type code for a 40-foot high cube general-purpose container
Y205Transportation Method/Type CodeMode, when different from Y1

Send one Y2 per container type, so a booking for two 40-foot high cubes and one 20-foot standard carries two Y2 loops. Which equipment type codes a carrier accepts in Y204 (ISO size-type codes or older four-digit codes) and how it reads the Y203 service codes against its own CY and door terms is set by its guide. For refrigerated cargo, a W09 follows the Y2 with the minimum and maximum temperature and the unit.

N9: Reference Identification

N9*PO*4500918832~
QualifierMeaningWhy you need it
POPurchase order numberTies the booking to the order the goods are on
CRCustomer reference numberYour own booking or shipment reference
CTContract numberThe service contract the booking moves under, when the carrier asks for it

Which N9 qualifiers the carrier stores and returns differs by carrier. Send the purchase order on the booking anyway: when it comes back on the 301, 310 and 315, matching gets much easier.

N1 Loop: Parties

N1*SH*LINHAI WOODCRAFT CO LTD~
N4*SHANGHAI**201800*CN~
N1*CN*CASCADE HOME IMPORTS LLC~
N4*ONTARIO*CA*91761*US~

N101 gives the role: SH shipper, CN consignee, and in many guides a booking party, forwarder or notify party as well. The 300 only needs enough to book the space. The full names and addresses that will print on the bill of lading go on the 304 shipping instructions.

R4 Loop: Port or Terminal

R4*R*UN*CNSHA*SHANGHAI*CN~
R4*L*UN*CNSHA*SHANGHAI*CN~
DTM*369*20261103~
R4*D*UN*USLAX*LOS ANGELES*US~
R4*E*UN*USONT*ONTARIO*US~
ElementNameExampleWhat it means
R401Port or Terminal Function CodeLR place of receipt, L port of loading, D port of discharge, E place of delivery
R402Location QualifierUNUN means R403 is a UN/LOCODE
R403Location IdentifierCNSHAThe location code
R404Port NameSHANGHAIName
R405Country CodeCNCountry

The standard requires at least one R4. The DTM after an R4 dates the request at that point: here 369, estimated departure date. The place of receipt and place of delivery decide how much inland moving the carrier does, so they must agree with the service code in Y203.

L0 and L5: Cargo

L0*1***18420*G*58.4*X*1240*CTN**K~
L5*1*WOODEN FURNITURE PARTS~
ElementNameExampleWhat it means
L001Lading Line Item Number1Line number, shared with L5
L004 / L005Weight, Weight Qualifier18420 / GGross weight
L006 / L007Volume, Volume Unit Qualifier58.4 / XX cubic meters, E cubic feet
L008 / L009Lading Quantity, Packaging Form Code1240 / CTN1,240 cartons
L011Weight Unit CodeKKilograms
L502Lading DescriptionWOODEN FURNITURE PARTSThe commodity

The weight on a booking is an estimate. Carriers use it to plan the vessel, and the final figure comes later on the 304.

EDI 300 vs 301, 303, 304 and 204

DocumentModeSent byPurpose
300 Reservation (Booking Request) (Ocean)OceanShipper, importer, forwarder or NVOCCRequests space and equipment
301 Confirmation (Ocean)OceanOcean carrierConfirms the booking and releases empties
303 Booking Cancellation (Ocean)OceanBooking partyCancels a booking
304 Shipping InstructionsOceanBooking partyBill of lading details, after the booking
204 Motor Carrier Load TenderTruckShipperOffers a truck load to a carrier

The 300 and the 204 do a similar job: one party asks a carrier to take a shipment. The 204 tenders a specific load with stops and appointments and is answered by a 990. The 300 reserves space on a sailing and equipment at origin, and is answered by a 301 with a booking number. Neither one is a bill of lading. On ocean moves the bill of lading data goes on the 304 and comes back on the 310.

Common 300 Errors and How to Prevent Them

ErrorWhat happensPrevention
Wrong equipment type codeThe carrier rejects the booking or releases the wrong containersLoad the carrier's accepted Y204 codes and validate before sending
Duplicate shipment referencesA second request overwrites or is confused with the firstGenerate a unique B102 per request and keep it for the life of the booking
Changes sent as new requestsTwo bookings for the same cargoSend changes with B104 = U against the same B102, or as the carrier's guide says
Location codes missing or in the wrong schemeBooking falls out to manual handlingUse the qualifier and code type the carrier expects in R402 and R403, usually UN/LOCODE
Service code disagrees with the routeCarrier quotes or plans the wrong inland legsCheck that Y203 matches the place of receipt and place of delivery you sent
No 301 backYou assume space you do not haveAlert when a 300 has no 301 within the time your carrier normally answers
No PO on the bookingContainers cannot be traced to orders laterSend the PO in N9 and keep it on the 304

300 Implementation Checklist

Before your first live 300 to an ocean carrier:

  • Get the carrier's 300 implementation guide and confirm the X12 version in GS08 (004010 is common) and the RO functional group
  • Confirm how it wants changes and cancellations: a 300 with a change code, a 303, or both
  • Load its accepted equipment type codes and service codes
  • Agree which location code scheme it uses in R4
  • Decide which references you send in N9, and check which ones it echoes on the 301
  • Send the 300 from the same system that holds your purchase orders, so the PO numbers are right
  • Confirm the 997 the carrier returns for each 300, and the 301 you expect back
  • Test a new booking, a change, a cancellation, a mixed-equipment booking and a reefer booking if you ship refrigerated cargo

Our EDI document types reference shows where ocean sets sit beside the 850 purchase order and the 856 ASN. The SCAC code glossary entry explains the carrier codes in Y1 and the envelope.

Where OrderSync Fits

A booking is only as good as the order behind it. The quantities, weights and purchase order numbers on a 300 come from the orders your customers sent you, or the orders you placed with your suppliers, and those arrive as EDI 850s, PDFs, emails and spreadsheets.

OrderSync reads inbound orders in any format, matches customers, items and units to your catalog, and outputs clean ERP data or valid X12, so the PO numbers on your bookings point at accurate orders. Paste any 300 into the free EDI inspector to see it parsed segment by segment with a plain-English summary and any structural errors explained, or book a 15-minute walkthrough to see your own orders processed.

Frequently Asked Questions

What is an EDI 300?

The EDI 300 Reservation (Booking Request) (Ocean) is the X12 transaction used to ask an ocean carrier for space on a sailing. It carries the requested sailing date, the number and type of containers, the service, the parties, the origin and destination points, and the cargo description and weight.

What is the difference between EDI 300 and EDI 301?

The 300 is the booking request sent to the carrier. The 301 is the carrier's answer: it accepts, conditionally accepts, counters or declines the request, and when space is given it returns the booking number, the sailing and the empty container release.

Who sends the EDI 300?

Whoever controls the booking: an exporter on its own freight contract, an importer on a buyer-controlled move, or a forwarder or NVOCC booking for a customer. It goes to the ocean carrier, directly or through a booking portal or network.

Which segment holds the container count and type in a 300?

The Y2 segment. Y201 is the number of containers, Y202 says whether containers, chassis or both are wanted, Y203 is the type of service and Y204 is the four-character equipment type code. A booking with more than one container type sends one Y2 per type.

How do I change or cancel an EDI 300 booking?

Changes usually go as another 300 with the reservation action code in B104 set to U, using the same shipment reference. Cancellations go as a 303 Booking Cancellation, or with the delete code R where the carrier allows it. The carrier's guide says which it accepts.

What functional group and version does the 300 use?

The 300 travels in functional group RO, the value in GS01, shared with the 301 and 303. Many carrier guides use X12 release 004010, and the version for a given carrier is named in GS08.

What happens after the 300?

The carrier sends a 301 with the booking number. The shipper picks up the empties, loads them and sends a 304 with the shipping instructions. The carrier returns a 310 with the bill of lading data and charges, and 315 status messages follow the containers to delivery.

James Darby
Last updated: 11/7/2026

Related Resources