850 Purchase Order

Download this document in Word format from the following link:
Walmart.com Drop Ship Vendor_850_4010_EDI.docx

Functional Group PO

This Draft Standard for Trial Use contains the format and establishes the data contents of the Purchase Order Transaction Set (850) for use in an Electronic Data Interchange (EDI) environment. The transaction set can be used to provide for customary and established business and industry practices relative to the placement of purchase orders for goods and services. This transaction set should not be used to convey purchase order changes or purchase order acknowledgment information.

Heading

PosIdSegment NameReqMax UseRepeatNotesUsage
010STTransaction Set HeaderM1Must use
020BEGBeginning Segment for Purchase OrderM1Must use
050REFReference IdentificationO>1Must use
090CTPPricing InformationO>1Must use
110CSHSales RequirementsO5Must use
150DTMDate/Time ReferenceO10Must use
LOOP ID – N91000
295N9Reference IdentificationO1LOOP ID – N9Must use
300MSGMessage TextO1000LOOP ID – N9Must use
LOOP ID – N1200
310N1NameO1LOOP ID – N1Must use
330N3Address InformationO2LOOP ID – N1Must use
340N4Geographic LocationO>1LOOP ID – N1Must use
350REFReference IdentificationO12LOOP ID – N1Dependent
360PERAdministrative Communications ContactO>1LOOP ID – N1Dependent
390TD5Carrier Details (Routing Sequence/Transit Time)O12LOOP ID – N1Dependent

Detail

PosIdSegment NameReqMax UseRepeatNotesUsage
LOOP ID – P01100000
010P01Baseline Item DataM1LOOP ID – P01Must use
LOOP ID – PID1000
050PIDProduct/Item DescriptionO1LOOP ID – PIDMust use
LOOP ID – SAC25
130SACService, Promotion, Allowance, or Charge InformationO1LOOP ID – SACMust use
LOOP ID – N91000
330N9Reference IdentificationO1LOOP ID – N9Dependent
340MSGMessage TextO1000LOOP ID – N9Dependent

Summary

PosIdSegment NameReqMax UseRepeatNotesUsage
LOOP ID – CTT1
010CTTTransaction TotalsO1N3/010Must use
030SETransaction Set TrailerM1Must use

Notes

  • N3/010: The number of line items (CTT01) is the accumulation of the number of PO1 segments.

Sample Spec 850 Files


S2HS2SPAYPALGIFT CARDDISCOUNTGIFTWRAPS2HS2SPAYPALGIFT CARDDISCOUNTGIFTWRAP

ISA*00* *00* *01*12571829 *12*8478505336*070413*1811*U*00401*000000014*0*T*>
GS*PO*12571829*8478505336*20070413*1811*000000007*X*004010
ST*850*0001
BEG*00*DS*12635837**20070413
REF*CO*8890500613298
CTP*RS**41.28*1*EA
CSH*SC
DTM*806*20180412
DTM*002*20180416
DTM*010*20180412
N9*ZZ*MARKETINGMSG
MSG*0*AA*1
MSG*0*AA*2
MSG*0*AA*3
MSG*0*AA*4
N9*ZZ*RETURNSMSG
MSG*0*AA*1
MSG*0*AA*2
MSG*0*AA*3
MSG*0*AA*4
N9*ZZ*LASTDELIVERYMSG
MSG*0*AA*1
MSG*0*AA*2
MSG*0*AA*3
MSG*0*AA*4
N1*ST*Tom Smith
N3*12323 ABC Street*
N4*lowell*MA*01854*USA
REF*4N*MC-1114
REF*OD*71324148259778701029
PER*RE*Tom Smith*TE*9780032345
TD5*O*93*02*********SG
PO1*1*1*EA*23.50*QE*BP*3335027*UP*0083645300100*VP*SW-306 PID*F****Star Wars Darth Vader Lightsaber - Episode III, .45 Scaled Re SAC*N*D340******33.63****15
SAC*N*G830******5.97****15
SAC*N*H850******1.68****15
CTT*1
SE*40*0001
GE*1*000000007
IEA*1*000000014

ST Transaction Set Header

To indicate the start of a transaction set and to assign a control number.
Usage Option: Must Use

  • Pos: 010
  • Max: 1
  • Heading – Mandatory
  • Loop: N/A
  • Elements: 2

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
ST01143Transaction Set Identifier CodeMID3/3
ST02329Transaction Set Control NumberMAN4/9

BEG Beginning Segment for Purchase Order

To indicate the beginning of the Purchase Order Transaction Set and transmit identifying numbers and dates.

  • Pos: 020
  • Max: 1
  • Heading – Mandatory
  • Loop: N/A
  • Elements: 4
  • Usage Option: Must use

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
BEG01353Transaction Set Purpose CodeMID2/200Original
BEG0292Purchase Order Type CodeMID2/2DSDropship
BEG03324Purchase Order NumberMAN1/22
BEG05373DateMDT8/8Date the Purchase Order was created

REF Reference Identification 1

To specify identifying information.
Usage Option: Must use

  • Pos: 050
  • Max: >1
  • Heading – Optional
  • Loop: N/A
  • Elements: 2

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
REF01128Reference Identification QualifierMID2/3COCustomer Order Number
REF02127Reference IdentificationXAN1/30

Segment Notes

Contains the customer's order number (13-digit numeric). Note: This number can not be unique across all Purchase Orders.

REF Reference Identification 2

To specify identifying information.
Usage Option: Must use (only for Site to Store Orders)

  • Pos: 050
  • Max: >1
  • Heading – Optional
  • Loop: N/A
  • Elements: 2

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
REF01128Reference Identification QualifierMID2/3STWalmart Store Number
REF02127Reference IdentificationXAN1/30

Segment Notes

Contains the Walmart Store Number for ship-to-store orders.

REF Reference Identification 3

To specify identifying information.
Usage Option: Must use

  • Pos: 050
  • Max: >1
  • Heading – Optional
  • Loop: N/A
  • Elements: 2

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
REF01128Reference Identification QualifierMID2/3IAInternal Vendor Number
REF02127Reference IdentificationXAN1/30

Segment Notes

Walmart Assigned Internal Vendor Number. This is not used even though it always sends in the order file.

REF Reference Identification 4

To specify identifying information.
Usage Option: Optional

  • Pos: 050
  • Max: >1
  • Heading – Optional
  • Loop: N/A
  • Elements: 2

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
REF01128Reference Identification QualifierMID2/3VRFacility ID Number
REF02127Reference IdentificationXAN1/30

Segment Notes

Walmart.com Assigned Facility ID Number. This segment will be sent only if the vendor has multiple ship points or Facilities. REF-02 has the Facility Number from where the order is to be shipped.

CTP Pricing Information

To specify pricing information

  • Pos: 090
  • Max: >1
  • Heading – Optional
  • Loop: N/A
  • Elements: 4

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
CTP01687Class of Trade CodeMID2/2RSResale
CTP03212Unit PriceMR1/17
CTP04380QuantityMR1/15
CTP05C001Component Unit of MeasureOTComp
355MID2/2EAEach

Segment Notes

Contains the total retail amount of this Purchase Order. It can be used to validate the data consistency of this message.

  • Total retail price for this Purchase Order, including all lines, charges, and adjustments. Note: For gift orders, this value is zero.
  • Always 1 unit quantity.

Usage Option: Must use

CSH Sales Requirements

To specify general conditions or requirements of the sale
Usage Option: Must use

  • Pos: 110
  • Max: 5
  • Heading – Optional
  • Loop: N/A
  • Elements: 1

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
CSH01563Sales Requirement CodeOID2/2P2Ship as soon as possible

Segment Notes

Contains a code used to suppress split shipments within a facility. Use one of the following values:

  • P2: Ship as soon as possible
  • SC: Ship Complete

DTM Date/Time Reference

To specify pertinent dates and times
Usage Option: Must use

  • Pos: 150
  • Max: 10
  • Heading – Optional
  • Loop: N/A
  • Elements: 2

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
DTM01374Date/Time QualifierMID3/3see Notes
DTM02373DateXDT8/8

Segment Notes

There is always a DTM segment containing the date the order was placed (DTM01 = “806”). There can be a DTM segment containing a date on which the customer has requested the item be delivered (DTM01 = “002”). This option is not supported by all suppliers. Other values are as follows:

  • 002: Delivery Requested
  • 806: Customer Order
  • 010: Expected Ship Date (optional)
  • 009: Order Processing Date (optional)

N9 Reference Identification

To transmit identifying information as specified by the Reference Identification Qualifier.
Usage Option: Must use

  • Pos: 295
  • Max: 1
  • Heading – Optional
  • Loop: N9
  • Elements: 2

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
N901128Reference Identification QualifierMID2/3ZZMutually Defined
N902127Reference IdentificationXAN1/30see notes

Segment Notes

The N9 segments with N9-01=ZZ are always sent in the order file. This is not to be used. Presently, the N9-02 always contains the following values.

  • RETURNSMSG: Returns Message
  • MARKETINGMSG: Marketing Message
  • LASTDELIVERYMSG: Last Delivery Message

MSG Message Text 1

To provide a free-form format that allows the transmission of text information.
Usage Option: Must use

  • Pos: 300
  • Max: 1000
  • Heading – Optional
  • Loop: N9
  • Elements: 3

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
MSG01933Free-Form Message TextMAN1/264
MSG02934Printer Carriage Control CodeXID2/2AAAdvance the Specified Number of Lines before Print
MSG031470NumberON01/9Message Line Number (1 to 4)

Segment Notes

  • The MSG segments with MSG-02=AA are always sent in the order file. This is not to be used
  • Each message can have four lines and contain up to 100 characters of data per line

N1 Name

To identify a party by type of organization, name, and code.
Usage Option: Must use

  • Pos: 310
  • Max: 1
  • Heading – Optional
  • Loop: N1
  • Elements: 2

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
N10198Entity Identifier CodeMID2/3see notes
N10293NameXAN1/60

Segment Notes

This loop contains three addresses related to this Purchase Order, and this segment (N101) defines the type of data to follow. The codes for N101 that are available are BT, RT, ST, and FD.

  • BT: Bill-to-party – The N1 loop when N101=BT (Bill To) address is optional
  • RT: Returned to
  • ST: Ship To – The N1 loop when N101=ST (Ship to) address is always sent in the 850.
  • FD: Physical Address – FD is used to specify the physical address of a Walmart facility for the case of orders using ship codes 81 and 91 (Wal-Mart transportation ). In that case, the optional N103/N104 elements are populated to provide the Walmart ID number for the facility, and N102 will be populated with ‘RDC’ or ‘WPM’ for this case.

N3 Address Information

To specify the location of the named party.
Usage Option: Must use

  • Pos: 330
  • Max: 2
  • Heading – Optional
  • Loop: N1
  • Elements: 2

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
N301166Address InformationMAN1/55
N302166Address InformationOAN1/55

N4 Geographic Location

To specify the geographic place of the named party.
Usage Option: Must use

  • Pos: 340
  • Max: >1
  • Heading – Optional
  • Loop: N1
  • Elements: 4

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
N40119City NameOAN2/30
N402156State or Province CodeOID2/2
N403116Postal CodeOID3/15
N40426Country CodeOID2/3see notes
N405309Location QualifierXID1/2GLsee notes
N406310Location QualifierOAN1/30GLNsee notes

Segment Notes

  • N404: Use the ISA ALPHA-3 Country Code.
  • N405: GL used only for Integrated Shipping (backhaul)
  • N406: GLN (Global Location Number of the facility) used only for Integrated Shipping (backhaul)

REF Reference Identification 5

To specify identifying information.
Usage Option: Dependent

  • Pos: 350
  • Max: 12
  • Heading – Optional
  • Loop: N1
  • Elements: 3

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
REF01128Reference Identification QualifierMID2/3see notes
REF02127Reference IdentificationXAN1/30see notes
REF04C040Reference IdentifierOComp2/3ZZMutually Defined

Segment Notes

  • REF01 = “4N”: Description of billing payment method. For gift orders, this is replaced by non-descriptive text.
  • REF01 = “OD”: Returns TC Number
  • REF01 = “PN”: Returns Permit Number. Additional data is populated in REF04.
  • REF01 = “PHC”: Returns Method Code of “RC” (Not pre-paid), “RP” (pre-paid) or “RS” (return to vendor).
  • REF04 Only used if REF01 = “PN”

PER Administrative Communications Contact

To identify a person or office to whom administrative communications should be directed.
Usage Option: Dependent

  • Pos: 360
  • Max: >1
  • Heading – Optional
  • Loop: N1
  • Elements: 6

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
PER01366Contact Function CodeMID2/2see notes
PER0293NameOAN1/60
PER03365Communication Number QualifierXID2/2TETelephone
PER04364Communication NumberXAN1/80
PER05365Communication Number QualifierXID2/2EMElectronic Mail
PER06364Communication NumberXAN1/80

Segment Notes

  • Segment mandatory with PER01 = “BI” for N101 = “BT”
  • Segment mandatory with PER01 = “RE” for N101 = “ST”

For the PER01 Contact Function Code, use one of the following:

  • BI: Bill Inquiry Contact
  • RE: Receiving Contact

TD5 Carrier Details (Routing Sequence/Transit Time)

To specify the carrier and sequence of routing and provide transit time information.
Usage Option: Dependent

  • Pos: 390
  • Max: 12
  • Heading – Optional
  • Loop: N1
  • Elements: 6

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
TD501133Routing Sequence CodeOID1/2OOrigin Carrier (Air, Motor, or Ocean)
TD50266Identification Code QualifierXID1/293Code assigned by the organization originating the transaction set
TD50367Identification CodeXAN2/80see notes
TD507309Location QualifierOID1/2ISIn Store (see notes)
TD508310Location IdentifierXAN1/30see notes
TD512284Service Level CodeXID2/2see notes

Segment Notes

If the customer chooses in-store pickup, then TD507 and TD508 are required to specify the store number. All suppliers do not support this delivery method.

  • TD508 value is the store number if TD507 = ‘IS’

TD512 is the service level chosen by the customer for this order. TD512 can use one of the following codes:

  • ND: Next Day Air
  • SE: Second Day
  • SG: Standard Ground
  • ZZ: Mutually Defined
  • DF: Value Shipping

TD503 can use one of the following codes:

CMIDXMLCarrier Method NameCARRIER
99UPS Second Day AirUPS
1717Common CarrierCommon Carrier
1818FedEx FreightFedEx
1919FedEx Express Saver (3-Day Service)FedEx
2020FedEx GroundFedEx
2121FedEx Priority OvernightFedEx
2222FedEx 2-DayFedEx
2424FedEx Standard Overnight (PM Delivery)FedEx
3131USPS Priority MailUSPS
4343Pilot Freight Basic DeliveryPilot
6565FedEx Smartpost Over 1lbSmartpost
6666FedEx Smartpost Under 1lbSmartpost
6767FedEx Home DeliveryFedEx
6820FedEx GroundFedEx
7979FedEx Ground – S2SFedEx
8080UPS Ground – S2SUPS
8282Seko WorldwideSeko
9090Yellow Freight System – S2SYRC
9797UPS Second Day Air – S2SUPS
9898DownloadsIn-Store Pickup
14343Pilot Freight Room of Choice DeliveryPilot
15555Estes Forwarding Worldwide Basic DeliveryEstes
22322FedEx 2-DayFedEx
24343Pilot Freight White-GlovePilot
25555Estes Forwarding Worldwide Glove DeliveryEstes
26767FedEx Home DeliveryFedEx
35555Estes Forwarding Worldwide Room of Choice DeliveryEstes
44343Pilot Freight Unattended DeliveryPilot
5012UPS GroundUPS
545146NSD for DSVNon-Stop Delivery
676120FedEx Ground Cold SplitFedEx
676267FedEx Home Delivery Cold SplitFedEx
676320FedEx Ground Cold SplitFedEx
676467FedEx Home Delivery Cold SplitFedEx
6766801FedEx Ground Hot SplitFedEx
6767802FedEx Home Delivery Hot SplitFedEx
6768801FedEx Ground Hot SplitFedEx
6769802FedEx Home Delivery Hot SplitFedEx

PO1 Baseline Item Data

To specify basic and most frequently used line item data
Usage Option: Must Use

  • Pos: 010
  • Max: 1
  • Detail – Mandatory
  • Loop: PO1
  • Elements: 11

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
PO101350Assigned IdentificationOAN1/20see notes
PO102330Quantity OrderedXR1/15
PO103355Unit or Basis for Measurement CodeOID2/2EAEach
PO104212Unit PriceXR1/17
PO105639Basis of Unit Price CodeOID2/2QEQuoted Price per Each
PO106235Product/Service ID QualifierXID2/2BPBuyer's Part Number
PO107234Product/Service IDXAN1/48Walmart.com item SKU
PO108235Product/Service ID QualifierXID2/2UPU.P.C. Consumer Package Code (1-5-5-1)
PO109234Product/Service IDXAN1/48Walmart Item UPC
PO110235Product/Service ID QualifierXID2/2VPVendor's (Seller’s) Part Number
PO111234Product/Service IDXAN1/48Supplier's item SKU

Segment Notes

PO101 is a unique identifier for this Purchase Order Line. This number is necessary when responding with a status update or shipping notification.

PID Product/Item Description

To describe a product or process in coded or free-form format.
Usage Option: Must Use

  • Pos: 050
  • Max: 1
  • Detail – Optional
  • Loop: PID
  • Elements: 2

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
PID01349Item Description TypeMID1/1FFree-form
PID05352DescriptionXAN1/80Item description

Segment Notes

SAC Service, Promotion, Allowance, or Charge Information

To request or identify a service, promotion, allowance, or charge; to specify the amount or percentage for the service, promotion, allowance, or charge.
Usage Option: Must Use

  • Pos: 130
  • Max: 1
  • Detail – Optional
  • Loop: SAC
  • Elements: 5

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
SAC01248Allowance or Charge IndicatorMID1/1NNo Allowance or Charge
SAC021300Service, Promotion, Allowance, or Charge CodeXID4/4see notes
SAC08118RateOR1/9see notes
SAC12331Allowance or Charge Method of Handling CodeOID2/215Information Only
SAC15352DescriptionXAN1/80see notes

Segment Notes

  • SAC02 can have one of several values listed as follows:
    • D340: Goods and Services Charge. Charge to the customer for each item – always present.
    • G830: Shipping and Handling. Charge to the customer for shipping and handling – always present.
    • H000: Special Allowance – Allowance to the customer for customer service adjustment or promotion – present only if non-zero.
    • H151: Special Services – Charge to the customer for value-added service – present only if non-zero.
    • H850: Tax – Charge to the customer for sales tax – always present.
  • SAC08 should be the retail price per unit. For gift orders, this value is zero.
  • SAC15: A free-text description is supplied if SAC02 is “H000” or “H151”

N9 Reference Identification 2

To transmit identifying information as specified by the Reference Identification Qualifier Usage Option: Dependent

  • Pos: 330
  • Max: 1
  • Detail – Optional
  • Loop: N9
  • Elements: 4

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
N901128Reference Identification QualifierMID2/3see notes
N902127Reference IdentificationXAN1/30see notes
N903369Free-form descriptionXAN1/45see notes
N907128Reference Identification QualifierMID2/355Sequence Number – see notes

Segment Notes

  • N901 can be one of the following values:
    • QY: Service Performed Code
    • S2: Data Source
  • N902: If N901 = “QY”, then N902 is a value-added service code as defined by Walmart.com:
    • VGM: Gift Message (Four lines)
    • VGT: Gift Tag (to/from)
    • VGW: Gift Wrapping
    • VSR: Signature on Delivery
  • N903: If N901 = “S2”, then this is the name of a dynamic data element
  • N907: If N901 = “QY”, then this contains a unique sequence number for each value-added service request

MSG Message Text 2

To provide a free-form format that allows the transmission of text information
Usage Option: Dependent

  • Pos: 340
  • Max: 1000
  • Detail – Optional
  • Loop: N9
  • Elements: 1

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
MSG01933Free-form message textMAN1/264see notes

Segment Notes

If N901 = “QY”, then there is one MSG element for each value-added service data element. MSG01 will contain a name/value pair separated by a “|” character (e.g. “LINE1|Hi Mom”). There will 4 MSG segments containing 4 lines of text when N9-02=VGM. When N9-02=VSR ,MSG-01 =SOD|Y for signature on delivery

If N901 = “S2”, then there are MSG segments containing the dynamic-data value corresponding to the N903 dynamic-data name. The data will be split into 264 character blocks, so there can be one or many MSG segments depending on the length of the data.

CTT Transaction Totals

To transmit a hash total for a specific element in the transaction set
Usage Option: Must Use

  • Pos: 010
  • Max: 1
  • Summary – Optional
  • Loop: CTT
  • Elements: 1

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
CTT01354Number of Line Items (count of PO1 elements)MN01/6

SE Transaction Set Trailer

To indicate the end of the transaction set and provide the count of the transmitted segments (including the beginning (ST) and ending (SE) segments)
Usage Option: Must Use

  • Pos: 030
  • Max: 1
  • Summary – Mandatory
  • Loop: N/A
  • Elements: 2

Element Summary

RefIdElement NameReqTypeMin/MaxCodeName
SE0196Number of Included SegmentsMN01/10
SE02329Transaction Set Control NumberMAN4/94