ANSI X12 850 – Purchase Order

advertisement
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
850 Purchase Order
PO
Functional Group ID=
Introduction:
This Draft Standard for Trial Use contains the format and establishes the data contents of the Purchase Order
Transaction Set (850) for use within the context of an Electronic Data Interchange (EDI) environment. The
transaction set can be used to provide for customary and established business and industry practice 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.
Notes:
Ariba Supplier Network (SN) receives Purchase Orders from Ariba Buyer in the form of cXML OrderRequest
documents. Suppliers are able to select their preferred method of receiving Purchase Orders.
As a service to Suppliers preferring to transact via EDI, Ariba SN maps to the ANSI X12 004010 850 Purchase
Order document. Suppliers can select EDI as their prefered method for receiving Purchase Orders.
Now, suppliers can also select EDI as a method for receiving Change and Cancel Orders.
The separator characters normally used are:
Segment Terminator:
~ (tilde)
Element Separator:
{ (left brace)
Sub-Element Separator: } (right brace)
Suppliers can contact Ariba SN Technical Support to request standard separators if they prefer.
Ariba Supplier Network does not require or accept interchange acknowledgements (TA1), but does require a 997 to
be returned for each functional group received (other than type FA).
On returning a 997, the following points should be noted:
- Sending AK1/AK9 only is not supported at this time. You MUST send an AK2/AK5 group for each transaction set
received within the group.
- Detailed 997s are not required, but are accepted. You can send AK3/AK4 within an AK2 group if you wish.
- ISA14 is set to 0, so do not send a TA1. It is not supported and will cause an error.
AK5 acknowledgement codes:
- Code "A" constitutes acceptance. The Purchase Order will be marked as Acknowledged and visible to your
customer.
- Code "E" is an EDI Compliance error. This is accepted with errors noted. Currently it will update the Purchase
Order status to Acknowledged, similar to code A.
- Code "R" represents rejection. Currently, this is the only AK5 acknowledgement code that will mark the Purchase
Order as Failed.
AK9 acknowledgement codes:
- The above codes apply. Code "P" is possible if not all AK5's are code "A".
In reading this Implementation Guide, the following usage codes are used:
Copyright (c) 2000 - 2003 Ariba, Inc.
1
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Status
----------------------Mandatory
Must Use
Recommended
Dependant
Not Recommended
Not Used
Segment
-----------M
Must Use
A
D
NR
X
Element
----------M
M (Required)
A (Advised)
D
NR
X
Mandatory means that X12 says it is mandatory, so the guideline is bound by that rule.
Must Use means that X12 says it is optional, but Ariba SN requires it.
Recommended means that X12 says it is optional, and Ariba SN considers it optional, but recommends that it be
used.
Dependant means that X12 has its usage dependant on other segments or elements, or by semantic notes, or that
Ariba SN describes semantics on which its dependency lies.
Not Recommended is the opposite of Recommended. The information might be technically allowed, but is probably
ignored.
Not Used segments and elements are not even shown in the guideline. In cases there they made need to be shown for
consistency, they are marked with an X.
Heading:
Page
No.
5
Pos.
No.
010
Seg.
ID
ST
Name
Transaction Set Header
Base
Status
M
User
Status
M
6
020
BEG
Beginning Segment for Purchase Order
M
M
8
040
CUR
Currency
O
Must Use
9
050
REF
Reference Identification
O
>1
10
060
PER
Administrative Communications Contact
O
3
12
110
CSH
Sales Requirements
O
1
13
120
SAC
Shipping Charges
O
1
15
125
CUR
Currency
O
1
16
285
TXI
Tax Information
O
1
17
295
N9
O
1
18
297
DTM
Max.Use
1
Notes and
Comments
1
1
LOOP ID - SAC
1
LOOP ID - N9
1
Reference Identification - Payment of
Purchase Order
Date/Time Reference
O
Must Use
1
LOOP ID - N9
1
19
295
N9
Reference Identification - Comments
O
20
300
MSG
Message Text
O
21
295
N9
1
Reference Identification - Extrinsics
O
1
22
300
MSG
Message Text
O
1000
Must Use
1000
LOOP ID - N9
998
LOOP ID - N1
1
23
310
N1
Bill-To Name
O
1
24
320
N2
Additional Name Information
O
2
25
330
N3
Address Information
O
2
26
340
N4
Geographic Location
O
1
Copyright (c) 2000 - 2003 Ariba, Inc.
Loop
Repeat
2
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
27
360
PER
Administrative Communications Contact
O
>1
LOOP ID - N1
1
29
310
N1
Ship-To Name
O
1
30
320
N2
Additional Name Information
O
2
31
330
N3
Address Information
O
2
32
340
N4
Geographic Location
O
1
33
360
PER
Administrative Communications Contact
O
>1
LOOP ID - N1
10
35
310
N1
Detailed Contact Information - Name
O
1
37
320
N2
Additional Name Information
O
2
38
330
N3
Address Information
O
2
39
340
N4
Geographic Location
O
1
40
360
PER
Administrative Communications Contact
O
>1
Detail:
Page
No.
Pos.
No.
Seg.
ID
Base
Status
42
010
PO1
Baseline Item Data
M
44
020
CUR
Currency of Unit Price
O
Name
LOOP ID - PO1
User
Status
M
Max.Use
1
050
PID
n1
1000
Product/Item Description
O
1
LOOP ID - PID
1000
47
050
PID
Product/Item Description - Classification
Details
O
1
49
100
REF
Reference Identification - Requisition ID
O
1
50
100
REF
Reference Identification - Supplier ID
O
1
51
110
PER
Administrative Communications Contact
O
3
53
130
SAC
Shipping Charge
O
1
55
135
CUR
Currency
O
LOOP ID - SAC
1
Must Use
1
LOOP ID - SAC
20
56
130
SAC
Account Distribution
O
1
58
135
CUR
Currency
O
1
59
210
DTM
Requested Delivery Date
O
1
60
291
TXI
Tax Information
O
1
LOOP ID - N9
1
61
330
N9
Reference Identification - URL
O
1
62
340
MSG
Message Text
O
1000
63
330
N9
Reference Identification - Comments
O
1
64
340
MSG
Message Text
O
1000
LOOP ID - N9
999
LOOP ID - N9
999
65
330
N9
Reference Identification - Extrinsics
O
66
340
MSG
Message Text
O
67
350
N1
1
Ship-To Name
O
1
68
360
N2
Additional Name Information
O
2
Must Use
1000
LOOP ID - N1
Copyright (c) 2000 - 2003 Ariba, Inc.
Notes and
Comments
1
LOOP ID - PID
45
Loop
Repeat
100000
1
3
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
69
370
N3
Address Information
O
2
70
380
N4
Geographic Location
O
1
71
400
PER
Administrative Communications Contact
O
3
LOOP ID - N1
10
73
350
N1
Name - Detailed Contact Information
O
1
75
360
N2
Additional Name Information
O
2
76
370
N3
Address Information
O
2
77
380
N4
Geographic Location
O
1
78
400
PER
Administrative Communications Contact
O
3
Summary:
Page
No.
Pos.
No.
Seg.
ID
Base
Status
80
010
CTT
Transaction Totals
O
81
020
AMT
Monetary Amount
O
82
030
SE
Transaction Set Trailer
M
Name
LOOP ID - CTT
User
Status
Max.Use
Loop
Repeat
1
Notes and
Comments
1
n2
Must Use
1
n3
M
1
Transaction Set Notes
1.
2.
3.
PO102 is required.
The number of line items (CTT01) is the accumulation of the number of PO1 segments. If used, hash total
(CTT02) is the sum of the value of quantities ordered (PO102) for each PO1 segment.
If AMT is used in the summary area, then AMT01 will = TT and AMT02 will indicate total transaction
amount as calculated by the sender.
Copyright (c) 2000 - 2003 Ariba, Inc.
4
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Notes:
ST Transaction Set Header
010
Heading
Mandatory
1
To indicate the start of a transaction set and to assign a control number
1
The transaction set identifier (ST01) is used by the translation routines of the
interchange partners to select the appropriate transaction set definition (e.g., 810
selects the Invoice Transaction Set).
Example: ST*850*0065~
Data Element Summary
Ref.
Des.
ST01
Data
Element
143
ST02
329
Base
User
Name
Attributes
Attributes
Transaction Set Identifier Code
M ID 3/3
M
Code uniquely identifying a Transaction Set
850
Purchase Order
Transaction Set Control Number
M AN 4/9
M
Identifying control number that must be unique within the transaction set functional group
assigned by the originator for a transaction set
Copyright (c) 2000 - 2003 Ariba, Inc.
5
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Notes:
BEG Beginning Segment for Purchase Order
020
Heading
Mandatory
1
To indicate the beginning of the Purchase Order Transaction Set and transmit identifying
numbers and dates
1
BEG05 is the date assigned by the purchaser to purchase order.
Examples:
BEG*00*NE*DO364**20000415~ (new order)
BEG*05*KN*ERP64390-V2**20020928~ (change order)
BEG*05*IN*ERP64390-V3**20020928~ (change order - internal)
BEG*03*KN*R159116**20020719~ (cancel order)
<OrderRequest>
<OrderRequestHeader>
Data Element Summary
Ref.
Des.
BEG01
Data
Element
353
Base
User
Name
Attributes
Attributes
Transaction Set Purpose Code
M ID 2/2
M
Code identifying purpose of transaction set
Ariba sends purchase orders as either "new", "update", or "delete". Orders being updated
are replacing a previous order. Some updates are marked as information only
(BEG02='IN').
<OrderRequest>
<OrderRequestHeader>
type (new | update | delete)
00
Original
type="new"
03
Delete
type="delete"
"new"
This is available only if EDI is selected for routing
"Change/Cancel Orders". If the customer sends a "Cancel Order"
from Ariba Buyer, then BEG01='03' and BEG03 contains the order
number to be deleted.
REF*PO (1/050) contains another copy of the purchase order
number, supporting up to 30 characters.
Code 03 for Delete is chosen to parallel the cXML type attribute
value "delete".
05
Replace
type="update"
This is available only if EDI is selected for routing
"Change/Cancel Orders". If the customer submits a change order
through Ariba Buyer, the effect is to copy all of the data and line
items from an existing order and then to create a new order having
the amendments.
Copyright (c) 2000 - 2003 Ariba, Inc.
6
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
The "Change Order" is not a manifest listing of changes, but is
rather a complete replacement of an earlier order. Typically the
new order number will be the original order number with
something like '-V2' appended. BEG01='05' to attest to this fact.
The original order number being replaced is found in REF*PW
(1/050). Ariba Buyer does not at this time send a revision number.
Note that BEG03 contains an order number up to 22 characters in
length. Some orders from Ariba Buyer have had longer order
numbers. When BEG01='05' or '03', REF*PO (1/050) is populated
with a second copy of the order number with up to 30 characters.
Although the cXML type attribute value is "update", code 05 for
Replace is used to better represent the action being taken. It is
necessary to completely replace an order previously received.
BEG02
92
Purchase Order Type Code
M ID 2/2
M
Code specifying the type of Purchase Order
Determines the purchase order type from Ariba. An order update has a version number and
can be marked as internal by the customer. Internal orders are identified with BEG02='IN'.
<OrderRequestHeader>
type="new"
IN
Information Copy
Used with BEG01=05 only to indicate that this order update is for
information only. The buyer has made some internal changes to
their PO. Such a PO update is sent for version number
accountability only. There are no changes affecting fulfillment.
OrderRequestHeader
isInternalVersion
(yes)
#IMPLIED
KN
BEG03
324
Purchase Order
Procurement instrument within the small
purchasing threshold
Used with BEG01='03' or '05' only. When BEG01='00', this field
continues to use 'NE' for backward compatibility.
NE
New Order
Used with BEG01='00' only to indicate a new purchase order.
Purchase Order Number
M AN 1/22
M
Identifying number for Purchase Order assigned by the orderer/purchaser
Ariba sends the PO Number from the Buyer.
<OrderRequestHeader>
orderID %string; #REQUIRED
BEG05
373
Date
Date expressed as CCYYMMDD
Ariba sends the PO Date from the Buyer
<OrderRequestHeader>
orderDate %datetime.tz;
Copyright (c) 2000 - 2003 Ariba, Inc.
7
M
DT 8/8
M
#REQUIRED
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
CUR Currency
040
Heading
Optional (Must Use)
1
To specify the currency (dollars, pounds, francs, etc.) used in a transaction
1 If CUR08 is present, then CUR07 is required.
2 If CUR09 is present, then CUR07 is required.
3 If CUR10 is present, then at least one of CUR11 or CUR12 is required.
4 If CUR11 is present, then CUR10 is required.
5 If CUR12 is present, then CUR10 is required.
6 If CUR13 is present, then at least one of CUR14 or CUR15 is required.
7 If CUR14 is present, then CUR13 is required.
8 If CUR15 is present, then CUR13 is required.
9 If CUR16 is present, then at least one of CUR17 or CUR18 is required.
10 If CUR17 is present, then CUR16 is required.
11 If CUR18 is present, then CUR16 is required.
12 If CUR19 is present, then at least one of CUR20 or CUR21 is required.
13 If CUR20 is present, then CUR19 is required.
14 If CUR21 is present, then CUR19 is required.
1 See Figures Appendix for examples detailing the use of the CUR segment.
Mandatory
Example: CUR*BY*USD~
Ariba sends the default currency for the order. This currency specifically represents the
total amount of the order found in AMT[3/020]
<OrderRequest>
<OrderRequestHeader>
<Total>
<Money>
currency %isoCurrencyCode;
#REQUIRED
Data Element Summary
Ref.
Des.
CUR01
Data
Element
98
CUR02
100
Base
User
Name
Attributes
Attributes
Entity Identifier Code
M ID 2/3
M
Code identifying an organizational entity, a physical location, property or an individual
BY
Buying Party (Purchaser)
Currency Code
M ID 3/3
M
Code (Standard ISO) for country in whose currency the charges are specified
These currencies serve as examples; they are not the only codes used. The currency code is
ISO 4217 compliant and Ariba SN writes here whatever is collected from any Ariba
Procurement Platform.
X12 also expects ISO 4217 conformance here, the same as
%isoCurrencyCode;
See http://www.unece.org/trade/rec/rec09en.htm
CAD
GBP
USD
XEU
Copyright (c) 2000 - 2003 Ariba, Inc.
Canadian Dollars
British Pound
US Dollars
European Monetary Coop Fund
8
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
REF Reference Identification
050
Heading
Optional
>1
To specify identifying information
1 At least one of REF02 or REF03 is required.
2 If either C04003 or C04004 is present, then the other is required.
3 If either C04005 or C04006 is present, then the other is required.
1 REF04 contains data relating to the value cited in REF02.
Used/Optional
Data Element Summary
Ref.
Des.
REF01
Data
Element
128
Name
Reference Identification Qualifier
Code qualifying the Reference Identification
PO
Purchase Order Number
Example: REF*PO*DO364~
Base
Attributes
M ID 2/3
User
Attributes
M
This is available to support purchase order numbers longer than 22
characters. Some purchase orders coming from Ariba Buyer have
longer numbers which are truncated in BEG03. The purchase order
number up to 30 characters is shown in this reference.
For backward compatibility, this REF is used only where
BEG01='03' or '05', and to state the current order number. In a
future release, it will always appear.
<OrderRequest>
<OrderRequestHeader>
orderNumber %string;
PP
PW
RQ
#IMPLIED
Purchase Order Revision Number
Example: REF*PP*2~
Reserved for Ariba Buyer to be sending the PO revision number.
Ariba Buyer does not currently support this attribute. This is a
placeholder for it.
Prior purchase order number
Used only with BEG01='05' to state the purchase order number
being replaced.
Purchase Requisition Number
Example: REF*RQ*R1492~
The buyer's system requisition id for this entire order. It might be
the same as orderID, and it might not be included at all. Must not
be included if requisitionID is specified at the line item level.
<OrderRequest>
<OrderRequestHeader>
requisitionID %string;
REF02
127
#IMPLIED
Reference Identification
X AN 1/30
O
Reference information as defined for a particular Transaction Set or as specified by the
Reference Identification Qualifier
Copyright (c) 2000 - 2003 Ariba, Inc.
9
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
PER Administrative Communications Contact
060
Heading
Optional
3
To identify a person or office to whom administrative communications should be directed
1 If either PER03 or PER04 is present, then the other is required.
2 If either PER05 or PER06 is present, then the other is required.
3 If either PER07 or PER08 is present, then the other is required.
Used/Optional
Example:
PER*BL*Tech Support*TE*18005551313*EM*tech.support@thebuyer.com~
PER*CR*Customer
Service*TE*18005551212*FX*13122842587*EM*customer.service@thebuyer.com~
Contact information from the Order Header is mapped here briefly. Contacts that involve
a PostalAddress or extensive details will appear in an N1 loop. We are limited here to
only three PER segments, so this section is reserved for short and quick contact
information.
<OrderRequest>
<OrderRequestHeader>
<Contact>
<Email> .. <Phone> .. <Fax>
Data Element Summary
Ref.
Des.
PER01
Data
Element
366
Base
User
Name
Attributes
Attributes
Contact Function Code
M ID 2/2
M
Code identifying the major duty or responsibility of the person or group named
AE
Corporate Purchasing Agent
role="purchasingAgent"
AM
Administrator
role="administrator"
BD
BL
Buyer Name or Department
Technical Department
role="technicalSupport"
CN
General Contact
role unspecified
CR
Customer Relations
role="customerService"
EB
Entered By
role="endUser"
SH
SR
Shipper Contact
Sales Representative or Department
role="sales"
PER02
93
SU
Supplier Contact
Name
Free-form name
Required Name tag.
Copyright (c) 2000 - 2003 Ariba, Inc.
10
O
AN 1/60
M
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
<Contact>
<Name>
PER03
365
PER04
364
PER05
365
PER06
364
PER07
365
PER08
364
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Copyright (c) 2000 - 2003 Ariba, Inc.
11
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
CSH Sales Requirements
110
Heading
Optional
1
To specify general conditions or requirements of the sale
1 If CSH02 is present, then CSH03 is required.
2 If either CSH06 or CSH07 is present, then the other is required.
3 If either CSH09 or CSH10 is present, then the other is required.
1 CSH03 is the maximum monetary amount value which the order must not exceed.
2 CSH04 is the account number to which the purchase amount is charged.
3 CSH05 is the date specified by the sender to be shown on the invoice.
4 CSH06 identifies the source of the code value in CSH07.
Used/Optional
Example: CSH*SC~
Present with CSH01="SC" if the Buyer has specified a "Ship Complete" requirement.
This implies that the Buyer is prepared to wait if necessary for complete fulfillment of an
order. Partial fulfillment will not be accepted.
<OrderRequest>
<OrderRequestHeader>
shipComplete(yes) #IMPLIED
="yes"
Data Element Summary
Ref.
Des.
CSH01
Data
Element
563
Base
Name
Attributes
Sales Requirement Code
O ID 1/2
Code to identify a specific requirement or agreement of sale
SC
Ship Complete
Copyright (c) 2000 - 2003 Ariba, Inc.
12
User
Attributes
O
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
SAC
Shipping Charges
120
SAC
Optional
Heading
Optional
1
To request or identify a service, promotion, allowance, or charge; to specify the amount
or percentage for the service, promotion, allowance, or charge
1 At least one of SAC02 or SAC03 is required.
2 If either SAC03 or SAC04 is present, then the other is required.
3 If either SAC06 or SAC07 is present, then the other is required.
4 If either SAC09 or SAC10 is present, then the other is required.
5 If SAC11 is present, then SAC10 is required.
6 If SAC13 is present, then at least one of SAC02 or SAC04 is required.
7 If SAC14 is present, then SAC13 is required.
8 If SAC16 is present, then SAC15 is required.
1 If SAC01 is "A" or "C", then at least one of SAC05, SAC07, or SAC08 is required.
2 SAC05 is the total amount for the service, promotion, allowance, or charge.
If SAC05 is present with SAC07 or SAC08, then SAC05 takes precedence.
3 SAC08 is the allowance or charge rate per unit.
4 SAC10 and SAC11 is the quantity basis when the allowance or charge quantity is
different from the purchase order or invoice quantity.
SAC10 and SAC11 used together indicate a quantity range, which could be a dollar
amount, that is applicable to service, promotion, allowance, or charge.
5 SAC13 is used in conjunction with SAC02 or SAC04 to provide a specific reference
number as identified by the code used.
6 SAC14 is used in conjunction with SAC13 to identify an option when there is more
than one option of the promotion.
7 SAC16 is used to identify the language being used in SAC15.
1 SAC04 may be used to uniquely identify the service, promotion, allowance, or
charge. In addition, it may be used in conjunction to further the code in SAC02.
2 In some business applications, it is necessary to advise the trading partner of the
actual dollar amount that a particular allowance, charge, or promotion was based on
to reduce ambiguity. This amount is commonly referred to as "Dollar Basis
Amount". It is represented in the SAC segment in SAC10 using the qualifier "DO" Dollars in SAC09.
Used/Optional
Example: SAC*C*G830***4680********21428339882**Fed-Ex 2 day*en~
In the header section, this represents a shipping cost in the order to the supplier. There
can be one of these for the entire order, or one per line item. This context represents one
for the order.
<OrderRequest>
<OrderRequestHeader>
<Shipping>
Data Element Summary
Ref.
Des.
SAC01
Data
Element
248
SAC02
1300
SAC05
610
Base
Name
Attributes
Allowance or Charge Indicator
M ID 1/1
Code which indicates an allowance or charge for the service specified
C
Charge
Service, Promotion, Allowance, or Charge Code
X ID 4/4
Code identifying the service, promotion, allowance, or charge
G830
Shipping and Handling
Amount
O N2 1/15
Monetary amount
User
Attributes
M
O
M
<Shipping>
<Money>
Copyright (c) 2000 - 2003 Ariba, Inc.
13
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
#PCDATA
SAC13
127
SAC15
352
Reference Identification
X AN 1/30
O
Reference information as defined for a particular Transaction Set or as specified by the
Reference Identification Qualifier
Description
X AN 1/80
M
A free-form description to clarify the related data elements and their content
Ariba SN can only accept one Description here. cXML allows for a ShortName to be
included with the Description. If the Description text is longer than 80 characters, and a
ShortName is available, then Ariba SN will map the ShortName here.
<Shipping>
<Description>
#PCDATA .. <ShortName>
SAC16
819
Language Code
O ID 2/3
M
Code designating the language used in text, from a standard code list maintained by the
International Standards Organization (ISO 639)
<Shipping>
<Description>
xml:lang %isoLangCode;
Copyright (c) 2000 - 2003 Ariba, Inc.
14
#REQUIRED
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
CUR
Currency
125
SAC
Optional
Heading
Optional
1
To specify the currency (dollars, pounds, francs, etc.) used in a transaction
1 If CUR08 is present, then CUR07 is required.
2 If CUR09 is present, then CUR07 is required.
3 If CUR10 is present, then at least one of CUR11 or CUR12 is required.
4 If CUR11 is present, then CUR10 is required.
5 If CUR12 is present, then CUR10 is required.
6 If CUR13 is present, then at least one of CUR14 or CUR15 is required.
7 If CUR14 is present, then CUR13 is required.
8 If CUR15 is present, then CUR13 is required.
9 If CUR16 is present, then at least one of CUR17 or CUR18 is required.
10 If CUR17 is present, then CUR16 is required.
11 If CUR18 is present, then CUR16 is required.
12 If CUR19 is present, then at least one of CUR20 or CUR21 is required.
13 If CUR20 is present, then CUR19 is required.
14 If CUR21 is present, then CUR19 is required.
1 See Figures Appendix for examples detailing the use of the CUR segment.
Used/Optional
Example: CUR*BY*USD~
Data Element Summary
Ref.
Des.
CUR01
Data
Element
98
CUR02
100
Base
User
Name
Attributes
Attributes
Entity Identifier Code
M ID 2/3
M
Code identifying an organizational entity, a physical location, property or an individual
BY
Buying Party (Purchaser)
Currency Code
M ID 3/3
M
Code (Standard ISO) for country in whose currency the charges are specified
See Note on Currency Codes with CUR[1/040].
Currency codes shown here are examples. Any ISO4217 code can be sent.
http://www.unece.org/trade/rec/rec09en.htm
CAD
Canadian Dollars
GBP
British Pound
USD
US Dollars
XEU
European Monetary Coop Fund
Copyright (c) 2000 - 2003 Ariba, Inc.
15
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
TXI Tax Information
285
Heading
Optional
1
To specify tax information
1 At least one of TXI02 TXI03 or TXI06 is required.
2 If either TXI04 or TXI05 is present, then the other is required.
3 If TXI08 is present, then TXI03 is required.
1 TXI02 is the monetary amount of the tax.
2 TXI03 is the tax percent expressed as a decimal.
3 TXI07 is a code indicating the relationship of the price or amount to the associated
segment.
Used/Optional
Example: TXI*TX*27.18~
cXML supplies tax information with an amount and a description. Ariba sends the tax
amount here. Taxes can be present at both the header and line item levels. Taxes at the
line item level are used to show a per line item breakdown.
<OrderRequest>
<OrderRequestHeader>
<Tax>
Data Element Summary
Ref.
Des.
TXI01
Data
Element
963
TXI02
782
Name
Tax Type Code
Code specifying the type of tax
TX
All Taxes
Total of all applicable taxes
Monetary Amount
Monetary amount
Copyright (c) 2000 - 2003 Ariba, Inc.
16
Base
Attributes
M ID 2/2
X
R 1/18
User
Attributes
M
M
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N9
Reference Identification - Payment of Purchase Order
295
N9
Optional
Heading
Optional
1
To transmit identifying information as specified by the Reference Identification Qualifier
1 At least one of N902 or N903 is required.
2 If N906 is present, then N905 is required.
3 If either C04003 or C04004 is present, then the other is required.
4 If either C04005 or C04006 is present, then the other is required.
1 N906 reflects the time zone which the time reflects.
2 N907 contains data relating to the value cited in N902.
Used/Optional
Example: N9*PSM*4510294818443233*Visa - Purchases~
Procurement card information is here. The expiry date goes in the DTM segment with
special formatting.
<OrderRequest>
<OrderRequestHeader>
<Payment>
Data Element Summary
Ref.
Des.
N901
Data
Element
128
N902
127
Base
User
Name
Attributes
Attributes
Reference Identification Qualifier
M ID 2/3
M
Code qualifying the Reference Identification
PSM
Credit Card
Reference Identification
X AN 1/30
M
Reference information as defined for a particular Transaction Set or as specified by the
Reference Identification Qualifier
<PCard>
number
N903
369
%number;
#REQUIRED
Free-form Description
Free-form descriptive text
<PCard>
name %string;
Copyright (c) 2000 - 2003 Ariba, Inc.
X
AN 1/45
O
#IMPLIED
17
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
DTM Date/Time Reference
297
N9
Optional
Heading
Optional (Must Use)
1
To specify pertinent dates and times
1 At least one of DTM02 DTM03 or DTM05 is required.
2 If DTM04 is present, then DTM03 is required.
3 If either DTM05 or DTM06 is present, then the other is required.
Mandatory
Example: DTM*036****UN*0432~
(This card expires in April 2032)
Procurement card expiry date is here. The expiration date is often used as a check on the
credit card number. They are traditionally stored as YYMM, but not necessarily. cXML
1.1 does not specify the syntax of the expiry date, so it will usually be "Unstructured"
(DTM05="UN"). Supplies should be able to submit DTM06 "as is" for verification
purposes.
Data Element Summary
Ref.
Des.
DTM01
Data
Element
374
DTM05
1250
DTM06
1251
Base
User
Name
Attributes
Attributes
Date/Time Qualifier
M ID 3/3
M
Code specifying type of date or time, or both date and time
036
Expiration
Date coverage expires
Date Time Period Format Qualifier
X ID 2/3
M
Code indicating the date format, time format, or date and time format
Normally this will be "UN". If cXML specifies that the expiry date is specifically YYMM,
then DTM05 will be "YM".
UN
Unstructured
YM
Year and Month Expressed in Format YYMM
Date Time Period
X AN 1/35
M
Expression of a date, a time, or range of dates, times or dates and times
Expiry date as YYMM
<PCard>
expiration
Copyright (c) 2000 - 2003 Ariba, Inc.
%date;
#REQUIRED
18
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N9
Reference Identification - Comments
295
N9
Optional
Heading
Optional
1
To transmit identifying information as specified by the Reference Identification Qualifier
1 At least one of N902 or N903 is required.
2 If N906 is present, then N905 is required.
3 If either C04003 or C04004 is present, then the other is required.
4 If either C04005 or C04006 is present, then the other is required.
1 N906 reflects the time zone which the time reflects.
2 N907 contains data relating to the value cited in N902.
Used/Optional
Example: N9*L1*Comment*en~
cXML provides one block of comments at the header level, which is mapped here.
cXML also has the ability to include an attachment here, but attachments are not mapped
to X12
<OrderRequest>
<OrderRequestHeader>
<Comments>
Data Element Summary
Ref.
Des.
N901
Data
Element
128
N902
127
N903
369
Base
User
Name
Attributes
Attributes
Reference Identification Qualifier
M ID 2/3
M
Code qualifying the Reference Identification
L1
Letters or Notes
Reference Identification
X AN 1/30
M
Reference information as defined for a particular Transaction Set or as specified by the
Reference Identification Qualifier
Always set to "Comment". Ariba writes a constant here because X12 requires that either
N902 or N903 is used, and the description is optional in cXML. By writing a constant,
Ariba avoids any compliance issues with X12.
Free-form Description
X AN 1/45
O
Free-form descriptive text
This is the language code attribute sent by cXML to describe the language used for the
comment. The code is ISO 639 compliant. Note that this code is optional and can be
supplied in lower case.
Comments
xml:lang
Copyright (c) 2000 - 2003 Ariba, Inc.
%xmlLangCode;
19
#IMPLIED
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
MSG
Message Text
300
N9
Optional
Heading
Optional (Must Use)
1000
To provide a free-form format that allows the transmission of text information
1 If MSG03 is present, then MSG02 is required.
1 MSG03 is the number of lines to advance before printing.
1 MSG02 is not related to the specific characteristics of a printer, but identifies top of
page, advance a line, etc.
2 If MSG02 is "AA - Advance the specified number of lines before print" then MSG03
is required.
Mandatory
Example: MSG*Be sure printer ink cartridges are properly sealed to avoid spillage.~
The actual comment text. The X12 mapping will try to preserve the line breaks from the
cXML as best it can. Each line break will automatically incur a new MSG segment, with
the exception of a blank line. If one line goes over the capacity of MSG01 then the line is
word-broken and a new MSG segment is created to continue the line. If the number of
lines exceed the occurrence limit of MSG, then the remainder of the comment text will
be truncated.
Any imbedded Attachments will be dropped. However, Ariba might include a text
representation that it is present. For example:
MSG*See the attached word document. [Attachment "specs.doc"]~
<Comments>
#PCDATA
<Attachment>
Data Element Summary
Ref.
Des.
MSG01
Data
Element
933
MSG02
934
Base
User
Name
Attributes
Attributes
Free-Form Message Text
M AN 1/264 M
Free-form message text
Printer Carriage Control Code
X ID 2/2
O
A field to be used for the control of the line feed of the receiving printer
If a line was broken by the limitation of MSG01, and a new segment is created for
continuation, then MSG02="LC", otherwise it is not used.
LC
Line Continuation
Copyright (c) 2000 - 2003 Ariba, Inc.
20
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N9
Reference Identification - Extrinsics
295
N9
Optional
Heading
Optional
1
To transmit identifying information as specified by the Reference Identification Qualifier
1 At least one of N902 or N903 is required.
2 If N906 is present, then N905 is required.
3 If either C04003 or C04004 is present, then the other is required.
4 If either C04005 or C04006 is present, then the other is required.
1 N906 reflects the time zone which the time reflects.
2 N907 contains data relating to the value cited in N902.
Used/Optional
Example: N9*ZZ**Packing Instructions~
Extrinsic information is well-formed XML provided by the buyer to define extra
information outside the scope of cXML's specifications. The content here is user-defined,
and in X12 should be regarded as comment information.
There are three rules to consider when looking at extrinsic information:
1. It is defined by the specific implementation of the Buyer and the Buyer's ERP system
to any Ariba B2B Procurement Platform. Two different Buyers might send the same
information in two distinct ways at this level. You cannot depend on the precise format.
2. Neither Ariba nor cXML control the exact content and formatting of Extrinsics. The
implementation is user-defined, and popular implementations thereof often migrate their
way into future versions of cXML. Treat this as comment information.
3. While every effort is made to preserve the integrity of Extrinsic information in the X12
implementation, it simply cannot be guaranteed. Non-printable characters cannot be
transported and any occurrences of our X12 control characters (i.e.. SegTerm, ElemSep,
CompSep) MUST BE TRANSLATED. Supplier side EDI Implementers should make
their respective departments aware of this.
<OrderRequest>
<OrderRequestHeader>
<Extrinsic>
Data Element Summary
Ref.
Des.
N901
Data
Element
128
N903
369
Name
Reference Identification Qualifier
Code qualifying the Reference Identification
ZZ
Mutually Defined
Free-form Description
Free-form descriptive text
Required name attribute to identify the Extrinsic.
<Extrinsic>
name %string;
Copyright (c) 2000 - 2003 Ariba, Inc.
Base
Attributes
M ID 2/3
X
AN 1/45
User
Attributes
M
O
#REQUIRED
21
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
MSG
Message Text
300
N9
Optional
Heading
Optional
1000
To provide a free-form format that allows the transmission of text information
1 If MSG03 is present, then MSG02 is required.
1 MSG03 is the number of lines to advance before printing.
1 MSG02 is not related to the specific characteristics of a printer, but identifies top of
page, advance a line, etc.
2 If MSG02 is "AA - Advance the specified number of lines before print" then MSG03
is required.
Used/Optional
Example: MSG*<Packing><UnitsPerCarton>512</UnitsPerCarton></Packing>~
MSG carries the actual Extrinsic data as accurately as possible. Where new lines are
started in cXML, new MSG segments are created (except for blank lines) in order to
preserve its integrity. If a line exceeds the capacity of MSG01, then a new MSG segment
is created and the Extrinsic text continues.
<Extrinsic>
ANY
Data Element Summary
Ref.
Des.
MSG01
Data
Element
933
MSG02
934
Base
User
Attributes
Attributes
M AN 1/264 M
Name
Free-Form Message Text
Free-form message text
Actual Extrinsic text.
Printer Carriage Control Code
X ID 2/2
O
A field to be used for the control of the line feed of the receiving printer
If a line from cXML is broken by MSG01's limitation, a new MSG segment is created with
MSG02="LC"
LC
Line Continuation
Copyright (c) 2000 - 2003 Ariba, Inc.
22
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N1
Bill-To Name
310
N1
Optional
Heading
Optional
1
To identify a party by type of organization, name, and code
1 At least one of N102 or N103 is required.
2 If either N103 or N104 is present, then the other is required.
1
This segment, used alone, provides the most efficient method of providing
organizational identification. To obtain this efficiency the "ID Code" (N104) must
provide a key to the table maintained by the transaction processing party.
2 N105 and N106 further define the type of entity in N101.
Used/Optional
Example: N1*BT*Corporate Office*92*001~
Header Level Bill-To Address Information
This is mandatory and sent only at the header level.
<OrderRequest>
<OrderRequestHeader>
<BillTo>
Data Element Summary
Ref.
Des.
N101
Data
Element
98
N102
93
Base
User
Name
Attributes
Attributes
Entity Identifier Code
M ID 2/3
M
Code identifying an organizational entity, a physical location, property or an individual
BT
Bill-to-Party
Name
X AN 1/60
M
Free-form name
Name associated by Buyer to this BillTo Address
<BillTo>
<Address>
<Name>
N103
66
N104
67
Identification Code Qualifier
X ID 1/2
O
Code designating the system/method of code structure used for Identification Code (67)
92
Assigned by Buyer or Buyer's Agent
Identification Code
X AN 2/80
O
Code identifying a party or other code
Address ID sent by the Buyer to identify this Bill-To, if it is present.
<BillTo>
<Address>
addressID
Copyright (c) 2000 - 2003 Ariba, Inc.
%string;
#IMPLIED
23
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N2
Additional Name Information
320
N1
Optional
Heading
Optional
2
To specify additional names or those longer than 35 characters in length
Used/Optional
Example:
N2*Roxanne Barber*Accounts Payable~
N2*The Buyer, Inc.~
In a PostalAddress, cXML considers DeliverTo to be optional, but can send many. Ariba
implements up to the first four here: two Name elements across two N2 segments.
The first two iterations of DeliverTo will occupy the first N2 segment and the third and
fourth iterations, if present, will occupy the second N2. Any further DeliverTo iterations
will be ignored.
<BillTo>
<Address>
<PostalAddress>
<DeliverTo>
Data Element Summary
Ref.
Des.
N201
Data
Element
93
N202
93
Base
Attributes
M AN 1/60
Name
Name
Free-form name
Name
Free-form name
Copyright (c) 2000 - 2003 Ariba, Inc.
O
24
AN 1/60
User
Attributes
M
O
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N3
Address Information
330
N1
Optional
Heading
Optional
2
To specify the location of the named party
Used/Optional
Example: N3*1 Buyer Parkway~
Street address information.
cXML requires one <Street> tag but can send many. Like the N2 above, Ariba SN
implements up to the first four: two elements across two segments.
<BillTo>
<Address>
<PostalAddress>
<Street>
Data Element Summary
Ref.
Des.
N301
Data
Element
166
N302
166
Base
Attributes
M AN 1/55
Name
Address Information
Address information
Address Information
Address information
Copyright (c) 2000 - 2003 Ariba, Inc.
O
25
AN 1/55
User
Attributes
M
O
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N4
Geographic Location
340
N1
Optional
Heading
Optional
1
To specify the geographic place of the named party
1 If N406 is present, then N405 is required.
1
A combination of either N401 through N404, or N405 and N406 may be adequate to
specify a location.
2 N402 is required only if city name (N401) is in the U.S. or Canada.
Used/Optional
Example: N4*Chicago*IL*35101*US~
Geographic information from the PostalAddress
cXML guarantees a City and Country. The State or Province code and the Postal Code
are optional.
<BillTo>
<Address>
<PostalAddress>
<City> .. <State> .. <PostalCode> .. <Country>
Data Element Summary
Ref.
Des.
N401
Data
Element
19
N402
156
N403
116
N404
26
Base
User
Name
Attributes
Attributes
City Name
O AN 2/30
M
Free-form text for city name
State or Province Code
O ID 2/2
O
Code (Standard State/Province) as defined by appropriate government agency
http://www.usps.gov/ncsc/lookups/abbr_state.txt
http://www.canadapost.ca/CPC2/addrm/addrguide/prov_symbols.html
Postal Code
O ID 3/15
O
Code defining international postal zone code excluding punctuation and blanks (zip code
for United States)
A US Zip Code can be five or nine digits. There will not be a separator present if the full
nine digit code is sent. A Canadian Postal Code is always formatted "A9A9A9". There will
not be a separator in the middle.
Country Code
O ID 2/3
M
Code identifying the country
Country code is ISO-3166 compliant. You can see a list here along with their respective
currency codes:
http://www.unece.org/trade/rec/rec09en.htm
<Country>
isoCountryCode
Copyright (c) 2000 - 2003 Ariba, Inc.
%isoCountryCode;
26
#REQUIRED
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
PER Administrative Communications Contact
360
N1
Optional
Heading
Optional
>1
To identify a person or office to whom administrative communications should be directed
1 If either PER03 or PER04 is present, then the other is required.
2 If either PER05 or PER06 is present, then the other is required.
3 If either PER07 or PER08 is present, then the other is required.
Used/Optional
Example:
PER*AP*AP Purchases
(Roxanne)*TE*13125551111*FX*13125552222*EM*Roxanne.Barber@thebuyer.com~
Contact information of Telephone, Fax, Email, and URL. cXML requires none, and only
one of each is allowed.
Each contact tag carries a name to identify itself. Where possible, Ariba SN groups those
with the same name together. If all four pieces are supplied, or if they carry distinct
names, then multiple PER segments are required.
The telephone number supplied with either Phone or Fax is broken down by components
by cXML. The number will be formatted appropriately here.
Note that a URL will be limited to the maximum length of the Communication Number
element.
<ShipTo>
<Address>
<Phone> .. <Fax> .. <Email> .. <URL>
Data Element Summary
Ref.
Des.
PER01
Data
Element
366
PER02
93
PER03
365
PER04
364
PER05
365
Base
User
Name
Attributes
Attributes
Contact Function Code
M ID 2/2
M
Code identifying the major duty or responsibility of the person or group named
AP
Accounts Payable Department
Name
O AN 1/60
O
Free-form name
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Copyright (c) 2000 - 2003 Ariba, Inc.
27
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
PER06
364
PER07
365
PER08
364
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Copyright (c) 2000 - 2003 Ariba, Inc.
28
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N1
Ship-To Name
310
N1
Optional
Heading
Optional
1
To identify a party by type of organization, name, and code
1 At least one of N102 or N103 is required.
2 If either N103 or N104 is present, then the other is required.
1
This segment, used alone, provides the most efficient method of providing
organizational identification. To obtain this efficiency the "ID Code" (N104) must
provide a key to the table maintained by the transaction processing party.
2 N105 and N106 further define the type of entity in N101.
Used/Optional
Example: N1*ST*San Jose Office*92*152~
Header Level Ship-To Address Information
This is optional at the header level. Ariba will send ShipTo Information either at the
header OR at the line item level, but not both. If it is absent here then it is required at the
line item level.
<OrderRequest>
<OrderRequestHeader>
<ShipTo>
Data Element Summary
Ref.
Des.
N101
Data
Element
98
N102
93
Base
User
Name
Attributes
Attributes
Entity Identifier Code
M ID 2/3
M
Code identifying an organizational entity, a physical location, property or an individual
ST
Ship To
Name
X AN 1/60
M
Free-form name
Name associated by Buyer to this ShipTo Address
<ShipTo>
<Address>
<Name>
N103
66
N104
67
Identification Code Qualifier
X ID 1/2
O
Code designating the system/method of code structure used for Identification Code (67)
92
Assigned by Buyer or Buyer's Agent
Identification Code
X AN 2/80
O
Code identifying a party or other code
Address ID sent by the Buyer to identify this ShipTo, if it is present.
<ShipTo>
<Address>
addressID
Copyright (c) 2000 - 2003 Ariba, Inc.
%string;
#IMPLIED
29
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N2
Additional Name Information
320
N1
Optional
Heading
Optional
2
To specify additional names or those longer than 35 characters in length
Used/Optional
Example:
N2*Maria Valenzuela*B1-2462~
N2*The Buyer, Inc.~
In a PostalAddress, cXML considers DeliverTo to be optional, but can send many. Ariba
implements up to the first four here: two Name elements across two N2 segments.
The first two iterations of DeliverTo will occupy the first N2 segment and the third and
fourth iterations, if present, will occupy the second N2. Any further DeliverTo iterations
will be ignored.
<ShipTo>
<Address>
<PostalAddress>
<DeliverTo>
Data Element Summary
Ref.
Des.
N201
Data
Element
93
N202
93
Base
Attributes
M AN 1/60
Name
Name
Free-form name
Name
Free-form name
Copyright (c) 2000 - 2003 Ariba, Inc.
O
30
AN 1/60
User
Attributes
M
O
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N3
Address Information
330
N1
Optional
Heading
Optional
2
To specify the location of the named party
Used/Optional
Example:
N3*1500 Buyer Way~
Street address information.
cXML requires one <Street> tag but can send many. Like the N2 above, Ariba SN
implements up to the first four: two elements across two segments.
<ShipTo>
<Address>
<PostalAddress>
<Street>
Data Element Summary
Ref.
Des.
N301
Data
Element
166
N302
166
Base
Attributes
M AN 1/55
Name
Address Information
Address information
Address Information
Address information
Copyright (c) 2000 - 2003 Ariba, Inc.
O
31
AN 1/55
User
Attributes
M
O
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N4
Geographic Location
340
N1
Optional
Heading
Optional
1
To specify the geographic place of the named party
1 If N406 is present, then N405 is required.
1
A combination of either N401 through N404, or N405 and N406 may be adequate to
specify a location.
2 N402 is required only if city name (N401) is in the U.S. or Canada.
Used/Optional
Example: N4*San Jose*CA*951103492*US~
Geographic information from the PostalAddress
cXML guarantees a City and Country. The State or Province code and the Postal Code
are optional.
<ShipTo>
<Address>
<PostalAddress>
<City> .. <State> .. <PostalCode> .. <Country>
Data Element Summary
Ref.
Des.
N401
Data
Element
19
N402
156
N403
116
N404
26
Base
User
Name
Attributes
Attributes
City Name
O AN 2/30
M
Free-form text for city name
State or Province Code
O ID 2/2
O
Code (Standard State/Province) as defined by appropriate government agency
http://www.usps.gov/ncsc/lookups/abbr_state.txt
http://www.canadapost.ca/CPC2/addrm/addrguide/prov_symbols.html
Postal Code
O ID 3/15
O
Code defining international postal zone code excluding punctuation and blanks (zip code
for United States)
A US Zip Code can be five or nine digits. There will not be a separator present if the full
nine digit code is sent. Canadian postal codes are six characters with no space.
Country Code
O ID 2/3
M
Code identifying the country
Country code is ISO-3166 compliant. You can see a list here along with their respective
currency codes:
http://www.unece.org/trade/rec/rec09en.htm
<Country>
isoCountryCode
Copyright (c) 2000 - 2003 Ariba, Inc.
%isoCountryCode;
32
#REQUIRED
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
PER Administrative Communications Contact
360
N1
Optional
Heading
Optional
>1
To identify a person or office to whom administrative communications should be directed
1 If either PER03 or PER04 is present, then the other is required.
2 If either PER05 or PER06 is present, then the other is required.
3 If either PER07 or PER08 is present, then the other is required.
Used/Optional
Example: PER*RE*Maria Primary*TE*14085551414*FX*14085551616*EM*Maria.Valenzuela@thebuyer.com~
Contact information of Telephone, Fax, Email, and URL. cXML requires none, and only
one of each is allowed.
Each contact tag carries a name to identify itself. Where possible, Ariba SN groups those
with the same name together. If all four pieces are supplied, or if they carry distinct
names, then multiple PER segments are required.
The telephone number supplied with either Phone or Fax is broken down by components
by cXML. The number will be formatted appropriately here.
Note that a URL will be limited to the maximum length of the Communication Number
element.
<ShipTo>
<Address>
<Phone> .. <Fax> .. <Email> .. <URL>
Data Element Summary
Ref.
Des.
PER01
Data
Element
366
PER02
93
PER03
365
PER04
364
PER05
365
PER06
364
Base
User
Name
Attributes
Attributes
Contact Function Code
M ID 2/2
M
Code identifying the major duty or responsibility of the person or group named
RE
Receiving Contact
Name
O AN 1/60
O
Free-form name
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Copyright (c) 2000 - 2003 Ariba, Inc.
33
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
PER07
365
PER08
364
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Copyright (c) 2000 - 2003 Ariba, Inc.
34
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N1
Detailed Contact Information - Name
310
N1
Optional
Heading
Optional
1
To identify a party by type of organization, name, and code
1 At least one of N102 or N103 is required.
2 If either N103 or N104 is present, then the other is required.
1
This segment, used alone, provides the most efficient method of providing
organizational identification. To obtain this efficiency the "ID Code" (N104) must
provide a key to the table maintained by the transaction processing party.
2 N105 and N106 further define the type of entity in N101.
Used/Optional
Example: N1*NG*Administration~
This section of N1 allows for detailed contact information, beyond what can be specified
in the PER[1/060] at the top, which is only intended for brief information.
Any contact that includes a PostalAddress must be specified here, along with contacts
requiring a variety of name tags for a specified role.
<OrderRequest>
<OrderRequestHeader>
<Contact>
<Name>
Data Element Summary
Ref.
Des.
N101
Data
Element
98
Base
User
Name
Attributes
Attributes
Entity Identifier Code
M ID 2/3
M
Code identifying an organizational entity, a physical location, property or an individual
60
Salesperson
Identification of individual that sold the product e.g. SSN,
salesperson id, etc.
role="sales"
A9
Sales Office
A business entity whose main activity is, or a
location at which, the sale of goods or
services takes place
role="customerService"
BY
Buying Party (Purchaser)
role="buyerCorporate"
CA
Carrier
role="carrierCorporate"
EN
End User
role="endUser"
KY
Technical Office
role="technicalSupport"
L5
Contact
role unspecified
NG
Administrator
role="administrator"
PD
Purchaser's Department Buyer
role="purchasingAgent"
RI
Copyright (c) 2000 - 2003 Ariba, Inc.
Remit To
35
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
role="remitTo"
SF
Ship From
role="shipFrom"
SO
Sold To If Different From Bill To
role="soldTo"
SU
Supplier/Manufacturer
role="supplierCorporate"
N102
93
Name
Free-form name
Copyright (c) 2000 - 2003 Ariba, Inc.
X
36
AN 1/60
O
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N2
Additional Name Information
320
N1
Optional
Heading
Optional
2
To specify additional names or those longer than 35 characters in length
Used/Optional
Example: N2*Elmira Gulch*2nd floor~
Ariba SN accepts up to four DeliverTo tags from cXML: two elements across two
segments.
<Contact>
<PostalAddress>
<DeliverTo>
Data Element Summary
Ref.
Des.
N201
Data
Element
93
N202
93
Base
Attributes
M AN 1/60
Name
Name
Free-form name
Name
Free-form name
Copyright (c) 2000 - 2003 Ariba, Inc.
O
37
AN 1/60
User
Attributes
M
O
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N3
Address Information
330
N1
Optional
Heading
Optional
2
To specify the location of the named party
Used/Optional
N3*The Buyer, Inc.*1 Buyer Parkway~
In cXML, Street is required if PostalAddress is present. Ariba SN maps a maximum of
four Street tags here: two elements across two segments.
<Contact>
<PostalAddress>
<Street>
Data Element Summary
Ref.
Des.
N301
Data
Element
166
N302
166
Base
Attributes
M AN 1/55
Name
Address Information
Address information
Address Information
Address information
Copyright (c) 2000 - 2003 Ariba, Inc.
O
38
AN 1/55
User
Attributes
M
O
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N4
Geographic Location
340
N1
Optional
Heading
Optional
1
To specify the geographic place of the named party
1 If N406 is present, then N405 is required.
1
A combination of either N401 through N404, or N405 and N406 may be adequate to
specify a location.
2 N402 is required only if city name (N401) is in the U.S. or Canada.
Used/Optional
N4*Chicago*IL*34592*US~
Geographic part of the address
<Contact>
<PostalAddress>
<City> .. <State> .. <PostalCode> .. <Country>
Data Element Summary
Ref.
Des.
N401
Data
Element
19
Base
Attributes
O AN 2/30
Name
City Name
Free-form text for city name
User
Attributes
M
<Contact>
<PostalAddress>
<City>
N402
156
State or Province Code
O ID 2/2
O
Code (Standard State/Province) as defined by appropriate government agency
http://www.usps.gov/ncsc/lookups/abbr_state.txt
http://www.canadapost.ca/CPC2/addrm/addrguide/prov_symbols.html
<Contact>
<PostalAddress>
<State>
N403
116
Postal Code
O ID 3/15
O
Code defining international postal zone code excluding punctuation and blanks (zip code
for United States)
<Contact>
<PostalAddress>
<PostalCode>
N404
26
Country Code
O ID 2/3
M
Code identifying the country
Country code is ISO-3166 compliant. You can see a list here along with their respective
currency codes:
http://www.unece.org/trade/rec/rec09en.htm
<Contact>
<PostalAddress>
<Country>
isoCountryCode
Copyright (c) 2000 - 2003 Ariba, Inc.
%isoCountryCode;
39
#REQUIRED
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
PER Administrative Communications Contact
360
N1
Optional
Heading
Optional
>1
To identify a person or office to whom administrative communications should be directed
1 If either PER03 or PER04 is present, then the other is required.
2 If either PER05 or PER06 is present, then the other is required.
3 If either PER07 or PER08 is present, then the other is required.
Used/Optional
Example:
PER*AM*Elmira - Admin*TE*18005551515*EM*Elmira.Gulch@thebuyer.com~
PER*AM**TE*18005552727*UR*http://admin.thebuyer.com~
Several PER's are allowed. The contact communications fragments are merged according
to their name attributes. Those with the same name are placed in the same segment.
<OrderRequest>
<OrderRequestHeader>
<Contact>
<Email> .. <Phone> .. <Fax> .. <URL>
Data Element Summary
Ref.
Des.
PER01
Data
Element
366
Base
User
Name
Attributes
Attributes
Contact Function Code
M ID 2/2
M
Code identifying the major duty or responsibility of the person or group named
The code used here depends on the role specified in N101.
AE
Corporate Purchasing Agent
role="purchasingAgent"
AM
Administrator
role="administrator"
BD
BL
Buyer Name or Department
Technical Department
role="technicalSupport"
CN
General Contact
role unspecified
CR
Customer Relations
role="customerService"
EB
Entered By
role="endUser"
SH
SR
Shipper Contact
Sales Representative or Department
role="sales"
PER02
93
SU
Name
Free-form name
Supplier Contact
O
AN 1/60
O
X
ID 2/2
O
<Contact>
<Phone> .. <Fax> .. <Email> .. <URL>
name %string; #IMPLIED
PER03
365
Communication Number Qualifier
Code identifying the type of communication number
EM
Electronic Mail
Copyright (c) 2000 - 2003 Ariba, Inc.
40
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
PER04
364
PER05
365
PER06
364
PER07
365
PER08
364
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Copyright (c) 2000 - 2003 Ariba, Inc.
41
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Notes:
PO1
Baseline Item Data
010
PO1
Mandatory
Detail
Mandatory
1
To specify basic and most frequently used line item data
1 If PO103 is present, then PO102 is required.
2 If PO105 is present, then PO104 is required.
3 If either PO106 or PO107 is present, then the other is required.
4 If either PO108 or PO109 is present, then the other is required.
5 If either PO110 or PO111 is present, then the other is required.
6 If either PO112 or PO113 is present, then the other is required.
7 If either PO114 or PO115 is present, then the other is required.
8 If either PO116 or PO117 is present, then the other is required.
9 If either PO118 or PO119 is present, then the other is required.
10 If either PO120 or PO121 is present, then the other is required.
11 If either PO122 or PO123 is present, then the other is required.
12 If either PO124 or PO125 is present, then the other is required.
1
2
3
See the Data Element Dictionary for a complete list of IDs.
PO101 is the line item identification.
PO106 through PO125 provide for ten different product/service IDs per each item.
For example: Case, Color, Drawing No., U.P.C. No., ISBN No., Model No., or SKU.
Example: PO1*5*25*RO*.64**VP*26409*MG*YZ323*MF*3M*C3*31201512~
Each <ItemOut> in the cXML <OrderRequest> incurs a PO1 loop. The minimum
information is the Quantity Ordered and the Supplier Part ID. You can receive that in a
single PO1 segment and nothing more. Additional details are optionally supplied by the
Buyer.
<OrderRequest>
<ItemOut>
Data Element Summary
Ref.
Des.
PO101
Data
Element
350
Base
User
Name
Attributes
Attributes
Assigned Identification
O AN 1/20
O
Alphanumeric characters assigned for differentiation within a transaction set
Position (counting from 1) of this item in an order. Used to maintain a reference between
items in create and update OrderRequest documents. Its use is recommended in
OrderRequest documents and no two lines can have the same lineNumber.
<ItemOut>
lineNumber
PO102
330
<ItemOut>
quantity
PO103
355
%uint;
#IMPLIED
Quantity Ordered
Quantity ordered
Number of units being ordered by the Buyer.
%r8;
X
R 1/15
O
#REQUIRED
Unit or Basis for Measurement Code
O ID 2/2
O
Code specifying the units in which a value is being expressed, or manner in which a
measurement has been taken
The UnitOfMeasure is required if ItemDetail is supplied by the Buyer. If it is not specified
in the cXML OrderRequest, Ariba does not map it. If it is not specified then the Buyer is
asserting that the Unit of Measure is not relevant to the item being ordered, and they simply
wish to buy (quantity) "whatevers".
All X12 codes are allowed here. The code from cXML is UN/CEFACT compliant, and is
translated by Ariba Network to an X12 equivalent.
<ItemOut>
<ItemDetail>
Copyright (c) 2000 - 2003 Ariba, Inc.
42
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
<UnitOfMeasure>
PO104
212
Refer to 004010 Data Element Dictionary for acceptable code values.
Unit Price
X R 1/17
O
Price per unit of product, service, commodity, etc.
This is the price per unit that the Buyer is prepared to pay. It is required only if ItemDetail
is supplied by the Buyer. If it is not supplied, then a supplier will be expected to honour a
previously agreed upon price; for example, a price advertised in a catalogue.
<ItemOut>
<ItemDetail>
<UnitPrice>
PO106
235
Product/Service ID Qualifier
X ID 2/2
O
Code identifying the type/source of the descriptive number used in Product/Service ID
(234)
MF
Manufacturer
<ItemOut>
<ItemDetail>
<ManufacturerName>
MG
Manufacturer's Part Number
This is optional, but can identify the item from another vantage
point.
<ItemOut>
<ItemDetail>
<ManufacturerPartID>
VP
Vendor's (Seller's) Part Number
SupplierPartID is mandatory. cXML guarantees this information
from the Buyer.
<ItemOut>
<ItemID>
<SupplierPartID>
PO107
234
PO108
235
PO109
234
PO110
235
PO111
234
PO112
235
PO113
234
Product/Service ID
X AN 1/48
O
Identifying number for a product or service
Product/Service ID Qualifier
X ID 2/2
O
Code identifying the type/source of the descriptive number used in Product/Service ID
(234)
MF
Manufacturer
MG
Manufacturer's Part Number
VP
Vendor's (Seller's) Part Number
Product/Service ID
X AN 1/48
O
Identifying number for a product or service
Product/Service ID Qualifier
X ID 2/2
O
Code identifying the type/source of the descriptive number used in Product/Service ID
(234)
MF
Manufacturer
MG
Manufacturer's Part Number
VP
Vendor's (Seller's) Part Number
Product/Service ID
X AN 1/48
O
Identifying number for a product or service
Product/Service ID Qualifier
X ID 2/2
O
Code identifying the type/source of the descriptive number used in Product/Service ID
(234)
MF
Manufacturer
MG
Manufacturer's Part Number
VP
Vendor's (Seller's) Part Number
Product/Service ID
X AN 1/48
O
Identifying number for a product or service
Copyright (c) 2000 - 2003 Ariba, Inc.
43
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
CUR
Currency of Unit Price
020
PO1
Mandatory
Detail
Optional
1
To specify the currency (dollars, pounds, francs, etc.) used in a transaction
1 If CUR08 is present, then CUR07 is required.
2 If CUR09 is present, then CUR07 is required.
3 If CUR10 is present, then at least one of CUR11 or CUR12 is required.
4 If CUR11 is present, then CUR10 is required.
5 If CUR12 is present, then CUR10 is required.
6 If CUR13 is present, then at least one of CUR14 or CUR15 is required.
7 If CUR14 is present, then CUR13 is required.
8 If CUR15 is present, then CUR13 is required.
9 If CUR16 is present, then at least one of CUR17 or CUR18 is required.
10 If CUR17 is present, then CUR16 is required.
11 If CUR18 is present, then CUR16 is required.
12 If CUR19 is present, then at least one of CUR20 or CUR21 is required.
13 If CUR20 is present, then CUR19 is required.
14 If CUR21 is present, then CUR19 is required.
1 See Figures Appendix for examples detailing the use of the CUR segment.
Used/Optional
Example: CUR*BY*USD~
Specifies the currency of the Unit Price (optionally) supplied by the Buyer. In cXML,
currency is a required attribute of the Money tag, from UnitPrice. UnitPrice is required if
ItemDetail is supplied.
<OrderRequest>
<ItemOut>
<ItemDetail>
<UnitPrice>
<Money>
currency
%isoCurrencyCode;
#REQUIRED
Data Element Summary
Ref.
Des.
CUR01
Data
Element
98
CUR02
100
Base
User
Name
Attributes
Attributes
Entity Identifier Code
M ID 2/3
M
Code identifying an organizational entity, a physical location, property or an individual
BY
Buying Party (Purchaser)
Currency Code
M ID 3/3
M
Code (Standard ISO) for country in whose currency the charges are specified
These currencies serve as examples; they are not the only codes used. The currency code is
ISO 4217 compliant and Ariba writes here whatever is collected from any Ariba B2B
Procurement Platform.
X12 also expects ISO 4217 conformance here, the same as %isoCurrencyCode;
See http://www.unece.org/trade/rec/rec09en.htm
Copyright (c) 2000 - 2003 Ariba, Inc.
44
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
PID
Product/Item Description
050
PID
Optional
Detail
Optional
1
To describe a product or process in coded or free-form format
1 If PID04 is present, then PID03 is required.
2 At least one of PID04 or PID05 is required.
3 If PID07 is present, then PID03 is required.
4 If PID08 is present, then PID04 is required.
5 If PID09 is present, then PID05 is required.
1 Use PID03 to indicate the organization that publishes the code list being referred to.
2 PID04 should be used for industry-specific product description codes.
3 PID08 describes the physical characteristics of the product identified in PID04. A
"Y" indicates that the specified attribute applies to this item; an "N" indicates it does
not apply. Any other value is indeterminate.
4 PID09 is used to identify the language being used in PID05.
1 If PID01 equals "F", then PID05 is used. If PID01 equals "S", then PID04 is used. If
PID01 equals "X", then both PID04 and PID05 are used.
2 Use PID06 when necessary to refer to the product surface or layer being described in
the segment.
3 PID07 specifies the individual code list of the agency specified in PID03.
Used/Optional
Example:
PID*F*GEN***3M Brand Scotch Tape****en~
PID*F****A cellophane strip bearing an adhesive coating on one side and wound
tightly****en~
PID*F****onto a roll. A frame surrounds the roll with a tearing edge protruding about
one****en~
PID*F****inch from the center of the roll's rotational axis.****en~
* Note that our PID looping group allows 1000 iterations in total. This can be divided
any way between Item Descriptions and Classifications. But 1000 is the combined limit.
The product description is required if ItemDetail is supplied by the Buyer. Each
<Description> tag can be interspersed with its own #PCDATA and <ShortName> tags.
The recommended practice is to put <ShortName> either at the beginning or at the end, if
it is present. But there is no rule in cXML enforcing that. The description text itself can
be quite long. ShortName is an optional child element which provides a short description
of fifty characters or less. Any ShortName will always produce its own PID segment,
with PID02="GEN". The regular description text does not mark PID02.
<OrderRequest>
<ItemOut>
<ItemDetail>
<Description>
Data Element Summary
Ref.
Des.
PID01
Data
Element
349
PID02
750
PID05
352
Base
User
Name
Attributes
Attributes
Item Description Type
M ID 1/1
M
Code indicating the format of a description
F
Free-form
Product/Process Characteristic Code
O ID 2/3
O
Code identifying the general class of a product or process characteristic
Set to "GEN" for a ShortName, unused for regular description text.
GEN
General Description
Description
X AN 1/80
O
A free-form description to clarify the related data elements and their content
Copyright (c) 2000 - 2003 Ariba, Inc.
45
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Description text or the ShortName contents
<Description>
#PCDATA .. <ShortName>
PID09
819
Language Code
O ID 2/3
O
Code designating the language used in text, from a standard code list maintained by the
International Standards Organization (ISO 639)
<Description>
xml:lang %xmlLangCode;
Copyright (c) 2000 - 2003 Ariba, Inc.
46
#REQUIRED
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
PID
Product/Item Description - Classification Details
050
PID
Optional
Detail
Optional
1
To describe a product or process in coded or free-form format
1 If PID04 is present, then PID03 is required.
2 At least one of PID04 or PID05 is required.
3 If PID07 is present, then PID03 is required.
4 If PID08 is present, then PID04 is required.
5 If PID09 is present, then PID05 is required.
1 Use PID03 to indicate the organization that publishes the code list being referred to.
2 PID04 should be used for industry-specific product description codes.
3 PID08 describes the physical characteristics of the product identified in PID04. A
"Y" indicates that the specified attribute applies to this item; an "N" indicates it does
not apply. Any other value is indeterminate.
4 PID09 is used to identify the language being used in PID05.
1 If PID01 equals "F", then PID05 is used. If PID01 equals "S", then PID04 is used. If
PID01 equals "X", then both PID04 and PID05 are used.
2 Use PID06 when necessary to refer to the product surface or layer being described in
the segment.
3 PID07 specifies the individual code list of the agency specified in PID03.
Used/Optional
Example: PID*S*MAC*UN*31201512***SPSC~
* Note that our PID looping group allows 1000 iterations in total. This can be divided
any way between Item Descriptions and Classifications. But 1000 is the combined limit.
Item classifications are required by cXML 1.1 to adhere to the UN/SPSC standard
(www.unspsc.org). If <ItemDetail> is supplied, then at least one <Classification> tag is
required. The first classification is mapped to PO1 for convenience. Multiple
classifications are required to be unique.
<OrderRequest>
<ItemOut>
<ItemDetail>
<Classification>
Data Element Summary
Ref.
Des.
PID01
Data
Element
349
PID02
750
PID03
559
PID04
751
Base
User
Name
Attributes
Attributes
Item Description Type
M ID 1/1
M
Code indicating the format of a description
S
Structured (From Industry Code List)
Product/Process Characteristic Code
O ID 2/3
M
Code identifying the general class of a product or process characteristic
MAC
Material Classification
Class of material, e.g. prime, secondary, etc.
Agency Qualifier Code
X ID 2/2
M
Code identifying the agency assigning the code values
AS
Assigned by Seller
Used if domain attribute does not equal "UNSPSC"
UN
United Nations (UN)
Used if domain attribute equals "UNSPSC"
Product Description Code
X AN 1/12
M
A code from an industry code list which provides specific data about a product
characteristic
Copyright (c) 2000 - 2003 Ariba, Inc.
47
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Classification data
<Classification>
#PCDATA
PID07
822
Source Subqualifier
O AN 1/15
M
A reference that indicates the table or text maintained by the Source Qualifier
If domain attribute equals "UNSPSC" (which it should), then this is "SPSC", so that the
PID03/PID07 combination make up "UN/SPSC". If domain does not equal "UNSPSC",
then PID07 contains the domain attribute value sent by the buyer and assigned by the
seller.
Copyright (c) 2000 - 2003 Ariba, Inc.
48
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
REF
Reference Identification - Requisition ID
100
PO1
Mandatory
Detail
Optional
1
To specify identifying information
1 At least one of REF02 or REF03 is required.
2 If either C04003 or C04004 is present, then the other is required.
3 If either C04005 or C04006 is present, then the other is required.
1 REF04 contains data relating to the value cited in REF02.
Used/Optional
Example: REF*RQ*4592782~
The line item level Requisition Id is an optional attribute of <ItemOut>. It can be
specified in the order header, or at the line item level, but not both.
<OrderRequest>
<ItemOut>
requisitionID
%string;
#IMPLIED
Data Element Summary
Ref.
Des.
REF01
Data
Element
128
REF02
127
Base
User
Name
Attributes
Attributes
Reference Identification Qualifier
M ID 2/3
M
Code qualifying the Reference Identification
RQ
Purchase Requisition Number
Reference Identification
X AN 1/30
M
Reference information as defined for a particular Transaction Set or as specified by the
Reference Identification Qualifier
Requisition Id value
Copyright (c) 2000 - 2003 Ariba, Inc.
49
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
REF
Reference Identification - Supplier ID
100
PO1
Mandatory
Detail
Optional
1
To specify identifying information
1 At least one of REF02 or REF03 is required.
2 If either C04003 or C04004 is present, then the other is required.
3 If either C04005 or C04006 is present, then the other is required.
1 REF04 contains data relating to the value cited in REF02.
Used/Optional
Example: REF*ZA*352948107*DUNS~
Supplier identification is optionally provided for completeness. Since a supplier is
receiving the Purchase Order, this value should always be their own recognized
identification. EDI Implementers can use this as a second verification that the PO was
truly intended for this supplier.
<OrderRequest>
<ItemOut>
<SupplierID>
Data Element Summary
Ref.
Des.
REF01
Data
Element
128
REF02
127
Base
User
Name
Attributes
Attributes
Reference Identification Qualifier
M ID 2/3
M
Code qualifying the Reference Identification
ZA
Supplier
Reference Identification
X AN 1/30
O
Reference information as defined for a particular Transaction Set or as specified by the
Reference Identification Qualifier
Supplier identification
<SupplierID>
#PCDATA
REF03
352
Description
X AN 1/80
O
A free-form description to clarify the related data elements and their content
Required domain attribute value to indicate what this identification represents.
<SupplierID>
domain %string;
Copyright (c) 2000 - 2003 Ariba, Inc.
#REQUIRED
50
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
PER Administrative Communications Contact
110
PO1
Mandatory
Detail
Optional
3
To identify a person or office to whom administrative communications should be directed
1 If either PER03 or PER04 is present, then the other is required.
2 If either PER05 or PER06 is present, then the other is required.
3 If either PER07 or PER08 is present, then the other is required.
Used/Optional
PER*BL*Tech Support*TE*18005553737*EM*tech.support@thebuyer.com~
PER*CR*Customer
Service*TE*18005554141*FX*13125551827*EM*customer.service@thebuyer.com~
* Refer to implementation notes for PER[1/060]; they are almost identical.
Contact information from the Line Item is mapped here briefly. Contacts that involve a
PostalAddress or extensive details will appear in an N1 loop. We are limited here to only
three PER segments, so this section is reserved for short and quick contact information.
<OrderRequest>
<ItemOut>
<Contact>
<Phone> .. <Fax> .. <Email> .. <URL>
Data Element Summary
Ref.
Des.
PER01
Data
Element
366
PER02
93
PER03
365
Base
User
Name
Attributes
Attributes
Contact Function Code
M ID 2/2
M
Code identifying the major duty or responsibility of the person or group named
AE
Corporate Purchasing Agent
role="purchasingAgent"
AM
Administrator
role="administrator"
BL
Technical Department
role="technicalSupport"
CN
General Contact
(role unspecified)
CR
Customer Relations
role="customerService"
EB
Entered By
role="endUser"
SR
Sales Representative or Department
role="sales"
Name
O AN 1/60
O
Free-form name
Required Name tag. Where possible, contact information will be grouped with a matching
name.
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Copyright (c) 2000 - 2003 Ariba, Inc.
51
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
PER04
364
PER05
365
PER06
364
PER07
365
PER08
364
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Copyright (c) 2000 - 2003 Ariba, Inc.
52
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
SAC
Shipping Charge
130
SAC
Optional
Detail
Optional
1
To request or identify a service, promotion, allowance, or charge; to specify the amount
or percentage for the service, promotion, allowance, or charge
1 At least one of SAC02 or SAC03 is required.
2 If either SAC03 or SAC04 is present, then the other is required.
3 If either SAC06 or SAC07 is present, then the other is required.
4 If either SAC09 or SAC10 is present, then the other is required.
5 If SAC11 is present, then SAC10 is required.
6 If SAC13 is present, then at least one of SAC02 or SAC04 is required.
7 If SAC14 is present, then SAC13 is required.
8 If SAC16 is present, then SAC15 is required.
1 If SAC01 is "A" or "C", then at least one of SAC05, SAC07, or SAC08 is required.
2 SAC05 is the total amount for the service, promotion, allowance, or charge.
If SAC05 is present with SAC07 or SAC08, then SAC05 takes precedence.
3 SAC08 is the allowance or charge rate per unit.
4 SAC10 and SAC11 is the quantity basis when the allowance or charge quantity is
different from the purchase order or invoice quantity.
SAC10 and SAC11 used together indicate a quantity range, which could be a dollar
amount, that is applicable to service, promotion, allowance, or charge.
5 SAC13 is used in conjunction with SAC02 or SAC04 to provide a specific reference
number as identified by the code used.
6 SAC14 is used in conjunction with SAC13 to identify an option when there is more
than one option of the promotion.
7 SAC16 is used to identify the language being used in SAC15.
1 SAC04 may be used to uniquely identify the service, promotion, allowance, or
charge. In addition, it may be used in conjunction to further the code in SAC02.
2 In some business applications, it is necessary to advise the trading partner of the
actual dollar amount that a particular allowance, charge, or promotion was based on
to reduce ambiguity. This amount is commonly referred to as "Dollar Basis
Amount". It is represented in the SAC segment in SAC10 using the qualifier "DO" Dollars in SAC09.
Used/Optional
Example: SAC*C*G830***4680********4812489789**2 day express*en~
In the detail section, this represents a shipping cost for this one line item to the supplier.
There can be one of these for the entire order, or one per line item. This context
represents one for the line item.
Shipping charges can be applied either at the header, for the entire order, or at the line
item level. But not both.
<OrderRequest>
<ItemOut>
<Shipping>
Data Element Summary
Ref.
Des.
SAC01
Data
Element
248
SAC02
1300
SAC05
610
Base
Name
Attributes
Allowance or Charge Indicator
M ID 1/1
Code which indicates an allowance or charge for the service specified
C
Charge
Service, Promotion, Allowance, or Charge Code
X ID 4/4
Code identifying the service, promotion, allowance, or charge
G830
Shipping and Handling
Amount
O N2 1/15
Copyright (c) 2000 - 2003 Ariba, Inc.
53
User
Attributes
M
O
O
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Monetary amount
<Shipping>
<Money>
#PCDATA
SAC13
127
SAC15
352
Reference Identification
X AN 1/30
O
Reference information as defined for a particular Transaction Set or as specified by the
Reference Identification Qualifier
Description
X AN 1/80
O
A free-form description to clarify the related data elements and their content
Ariba SN accepts only one Description here. cXML allows for a ShortName to be included
with the Description. If the Description text is longer than 80 characters, and a ShortName
is available, then Ariba SN maps the ShortName here.
<Shipping>
<Description>
#PCDATA .. <ShortName>
SAC16
819
Language Code
O ID 2/3
O
Code designating the language used in text, from a standard code list maintained by the
International Standards Organization (ISO 639)
<Shipping>
<Description>
xml:lang %isoLangCode;
Copyright (c) 2000 - 2003 Ariba, Inc.
54
#REQUIRED
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
CUR
Currency
135
SAC
Optional
Detail
Optional (Must Use)
1
To specify the currency (dollars, pounds, francs, etc.) used in a transaction
1 If CUR08 is present, then CUR07 is required.
2 If CUR09 is present, then CUR07 is required.
3 If CUR10 is present, then at least one of CUR11 or CUR12 is required.
4 If CUR11 is present, then CUR10 is required.
5 If CUR12 is present, then CUR10 is required.
6 If CUR13 is present, then at least one of CUR14 or CUR15 is required.
7 If CUR14 is present, then CUR13 is required.
8 If CUR15 is present, then CUR13 is required.
9 If CUR16 is present, then at least one of CUR17 or CUR18 is required.
10 If CUR17 is present, then CUR16 is required.
11 If CUR18 is present, then CUR16 is required.
12 If CUR19 is present, then at least one of CUR20 or CUR21 is required.
13 If CUR20 is present, then CUR19 is required.
14 If CUR21 is present, then CUR19 is required.
1 See Figures Appendix for examples detailing the use of the CUR segment.
Mandatory
Example: CUR*BY*USD~
Data Element Summary
Ref.
Des.
CUR01
Data
Element
98
CUR02
100
Base
User
Name
Attributes
Attributes
Entity Identifier Code
M ID 2/3
M
Code identifying an organizational entity, a physical location, property or an individual
BY
Buying Party (Purchaser)
Currency Code
M ID 3/3
M
Code (Standard ISO) for country in whose currency the charges are specified
These currencies serve as examples; they are not the only codes used. The currency code is
ISO 4217 compliant and Ariba writes here whatever is collected from any Ariba B2B
Procurement Platform.
X12 also expects ISO 4217 conformance here, the same as %isoCurrencyCode;
See http://www.unece.org/trade/rec/rec09en.htm
CAD
Canadian Dollars
GBP
British Pound
USD
US Dollars
XEU
European Monetary Coop Fund
Copyright (c) 2000 - 2003 Ariba, Inc.
55
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
SAC
Account Distribution
130
SAC
Optional
Detail
Optional
1
To request or identify a service, promotion, allowance, or charge; to specify the amount
or percentage for the service, promotion, allowance, or charge
1 At least one of SAC02 or SAC03 is required.
2 If either SAC03 or SAC04 is present, then the other is required.
3 If either SAC06 or SAC07 is present, then the other is required.
4 If either SAC09 or SAC10 is present, then the other is required.
5 If SAC11 is present, then SAC10 is required.
6 If SAC13 is present, then at least one of SAC02 or SAC04 is required.
7 If SAC14 is present, then SAC13 is required.
8 If SAC16 is present, then SAC15 is required.
1 If SAC01 is "A" or "C", then at least one of SAC05, SAC07, or SAC08 is required.
2 SAC05 is the total amount for the service, promotion, allowance, or charge.
If SAC05 is present with SAC07 or SAC08, then SAC05 takes precedence.
3 SAC08 is the allowance or charge rate per unit.
4 SAC10 and SAC11 is the quantity basis when the allowance or charge quantity is
different from the purchase order or invoice quantity.
SAC10 and SAC11 used together indicate a quantity range, which could be a dollar
amount, that is applicable to service, promotion, allowance, or charge.
5 SAC13 is used in conjunction with SAC02 or SAC04 to provide a specific reference
number as identified by the code used.
6 SAC14 is used in conjunction with SAC13 to identify an option when there is more
than one option of the promotion.
7 SAC16 is used to identify the language being used in SAC15.
1 SAC04 may be used to uniquely identify the service, promotion, allowance, or
charge. In addition, it may be used in conjunction to further the code in SAC02.
2 In some business applications, it is necessary to advise the trading partner of the
actual dollar amount that a particular allowance, charge, or promotion was based on
to reduce ambiguity. This amount is commonly referred to as "Dollar Basis
Amount". It is represented in the SAC segment in SAC10 using the qualifier "DO" Dollars in SAC09.
Used/Optional
Example:
SAC*N*B840***9800********07-D84-422-E11*1*Project: 07, Cost Center: D84,
Department: 422, Account: E11~
SAC*N*B840***2700********07-G18-422-E11*2*Project: 07, Cost Center: G18,
Department: 422, Account: E11~
Here the buyer has requested a two way split on the charges. The buyer's account number
is comprised of four segments. For reference purposes, Ariba SN expands the account
number with the account segment names in the description element, SAC15, as space
allows. The Option Number element, SAC14, shows the sequential occurrence of
<Distribution> tags.
Out of the $125 total, $98 is to be charged to one account and $27 to another. The
account number segmentation is implied by the buyer's internal system.
Buyers can optionally specify a list of accounts showing how they want the charges for
this line item distributed on their invoice. If present, suppliers are expected to invoice
according to these accounting guidelines.
<OrderRequest>
<ItemOut>
Copyright (c) 2000 - 2003 Ariba, Inc.
56
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
<Distribution>
Data Element Summary
Ref.
Des.
SAC01
Data
Element
248
SAC02
1300
SAC05
610
Base
Name
Attributes
Allowance or Charge Indicator
M ID 1/1
Code which indicates an allowance or charge for the service specified
N
No Allowance or Charge
Service, Promotion, Allowance, or Charge Code
X ID 4/4
Code identifying the service, promotion, allowance, or charge
B840
Customer Account Identification
G/L Account
Amount
O N2 1/15
Monetary amount
Specific amount of extended price to be applied to this account.
User
Attributes
M
M
M
<Distribution>
<Charge>
<Money>
SAC13
127
Reference Identification
X AN 1/30
M
Reference information as defined for a particular Transaction Set or as specified by the
Reference Identification Qualifier
Whole account number. This is all account segment id's concatenated together.
This number is used to designate the administrative budget center against which the
transaction is to be charged in the Buying Organization's accounting classification coding
structure. In some organizations this field will contain an account number, a department
code, a project number and/or a cost center.
<Distribution>
<Accounting>
<AccountingSegment> .. <Segment>
id %string; #REQUIRED
* The "id" attribute from all <Segment> or <AccountingSegment> tags
enumerated under Accounting are concatenated to form a complete
account number.
SAC14
SAC15
770
352
Option Number
O AN 1/20
M
A unique number identifying available promotion or allowance options when more than
one is offered
Integer representing the sequential occurrence of the <Distribution> tag for this line item.
This number is not explicitly stated in the cXML body, but rather is implied by tag
sequencing. This number is generated by the EDI mapping process.
Description
X AN 1/80
M
A free-form description to clarify the related data elements and their content
= "LISA" (Line Item Split Accounting)
Copyright (c) 2000 - 2003 Ariba, Inc.
57
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
CUR
Currency
135
SAC
Optional
Detail
Optional
1
To specify the currency (dollars, pounds, francs, etc.) used in a transaction
1 If CUR08 is present, then CUR07 is required.
2 If CUR09 is present, then CUR07 is required.
3 If CUR10 is present, then at least one of CUR11 or CUR12 is required.
4 If CUR11 is present, then CUR10 is required.
5 If CUR12 is present, then CUR10 is required.
6 If CUR13 is present, then at least one of CUR14 or CUR15 is required.
7 If CUR14 is present, then CUR13 is required.
8 If CUR15 is present, then CUR13 is required.
9 If CUR16 is present, then at least one of CUR17 or CUR18 is required.
10 If CUR17 is present, then CUR16 is required.
11 If CUR18 is present, then CUR16 is required.
12 If CUR19 is present, then at least one of CUR20 or CUR21 is required.
13 If CUR20 is present, then CUR19 is required.
14 If CUR21 is present, then CUR19 is required.
1 See Figures Appendix for examples detailing the use of the CUR segment.
Used/Optional
Example: CUR*BY*USD~
Data Element Summary
Ref.
Des.
CUR01
Data
Element
98
CUR02
100
Base
User
Name
Attributes
Attributes
Entity Identifier Code
M ID 2/3
M
Code identifying an organizational entity, a physical location, property or an individual
BY
Buying Party (Purchaser)
Currency Code
M ID 3/3
M
Code (Standard ISO) for country in whose currency the charges are specified
Copyright (c) 2000 - 2003 Ariba, Inc.
58
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
DTM Requested Delivery Date
210
PO1
Mandatory
Detail
Optional
1
To specify pertinent dates and times
1 At least one of DTM02 DTM03 or DTM05 is required.
2 If DTM04 is present, then DTM03 is required.
3 If either DTM05 or DTM06 is present, then the other is required.
Used/Optional
Example: DTM*002*20000415~
Requested delivery date is an optional attribute of the <ItemOut> tag from cXML. It
represents the "Need-By" date in any Ariba B2B Procurement Platform. It will be
mapped here if it is supplied.
<OrderRequest>
<ItemOut>
requestedDeliveryDate
%date;
#IMPLIED
Data Element Summary
Ref.
Des.
DTM01
Data
Element
374
DTM02
373
Base
Name
Attributes
Date/Time Qualifier
M ID 3/3
Code specifying type of date or time, or both date and time
002
Delivery Requested
Date
X DT 8/8
Date expressed as CCYYMMDD
User
Attributes
M
O
Requested delivery date
Copyright (c) 2000 - 2003 Ariba, Inc.
59
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
TXI
Tax Information
291
PO1
Mandatory
Detail
Optional
1
To specify tax information
1 At least one of TXI02 TXI03 or TXI06 is required.
2 If either TXI04 or TXI05 is present, then the other is required.
3 If TXI08 is present, then TXI03 is required.
1 TXI02 is the monetary amount of the tax.
2 TXI03 is the tax percent expressed as a decimal.
3 TXI07 is a code indicating the relationship of the price or amount to the associated
segment.
Used/Optional
Example: TXI*TX*27.18~
cXML supplies tax information with an amount and a description. Ariba sends the tax
amount here. Taxes can be present at both the header and line item levels. Taxes at the
line item level are used to show a per line item breakdown.
If specific tax information is not present, then suppliers are expected to calculate and
apply required taxes. If buyers are specifying tax amounts, then they have done this
calculation on their side, and an error might result in an acknowledgment either
recalculating this properly or non-fulfillment pending correction.
<OrderRequest>
<ItemOut>
<Tax>
Data Element Summary
Ref.
Des.
TXI01
Data
Element
963
TXI02
782
Name
Tax Type Code
Code specifying the type of tax
TX
All Taxes
Total of all applicable taxes
Monetary Amount
Monetary amount
Copyright (c) 2000 - 2003 Ariba, Inc.
60
Base
Attributes
M ID 2/2
X
R 1/18
User
Attributes
M
M
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N9
Reference Identification - URL
330
N9
Optional
Detail
Optional
1
To transmit identifying information as specified by the Reference Identification Qualifier
1 At least one of N902 or N903 is required.
2 If N906 is present, then N905 is required.
3 If either C04003 or C04004 is present, then the other is required.
4 If either C04005 or C04006 is present, then the other is required.
1 N906 reflects the time zone which the time reflects.
2 N907 contains data relating to the value cited in N902.
Used/Optional
Example: N9*URL*URL*Catalog Entry~
If ItemDetail is supplied, there is one optional URL the Buyer can send to reference the
item. What the URL refers to, if specified, is mapped in N903. The URL itself is mapped
to the MSG segment.
<OrderRequest>
<ItemOut>
<ItemDetail>
<URL>
Data Element Summary
Ref.
Des.
N901
Data
Element
128
N902
127
N903
369
Base
User
Name
Attributes
Attributes
Reference Identification Qualifier
M ID 2/3
M
Code qualifying the Reference Identification
URL
Uniform Resource Locator
Reference Identification
X AN 1/30
M
Reference information as defined for a particular Transaction Set or as specified by the
Reference Identification Qualifier
Ariba writes constant "URL" here because either element 2 or 3 is required, and our data
for element 3 is optional. This is to prevent an X12 compliance error.
Application Value List:
URL
Free-form Description
X AN 1/45
O
Free-form descriptive text
"name" attribute value, if present.
<URL>
name
Copyright (c) 2000 - 2003 Ariba, Inc.
%string;
#IMPLIED
61
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
MSG
Message Text
340
N9
Optional
Detail
Optional
1000
To provide a free-form format that allows the transmission of text information
1 If MSG03 is present, then MSG02 is required.
1 MSG03 is the number of lines to advance before printing.
1 MSG02 is not related to the specific characteristics of a printer, but identifies top of
page, advance a line, etc.
2 If MSG02 is "AA - Advance the specified number of lines before print" then MSG03
is required.
Used/Optional
Example: MSG*http://www.thesupplier.com/catalog?itemid=26409~
<OrderRequest>
<ItemOut>
<ItemDetail>
<URL>
#PCDATA
Data Element Summary
Ref.
Des.
MSG01
Data
Element
933
Base
User
Attributes
Attributes
M AN 1/264 M
Name
Free-Form Message Text
Free-form message text
URL data value
Copyright (c) 2000 - 2003 Ariba, Inc.
62
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N9
Reference Identification - Comments
330
N9
Optional
Detail
Optional
1
To transmit identifying information as specified by the Reference Identification Qualifier
1 At least one of N902 or N903 is required.
2 If N906 is present, then N905 is required.
3 If either C04003 or C04004 is present, then the other is required.
4 If either C04005 or C04006 is present, then the other is required.
1 N906 reflects the time zone which the time reflects.
2 N907 contains data relating to the value cited in N902.
Used/Optional
Example: N9*L1*Comment*en~
cXML provides one block of comments at the header level, which is mapped here.
cXML also has the ability to include an attachment here, but attachments are not mapped
to X12
<OrderRequest>
<ItemOut>
<Comments>
Data Element Summary
Ref.
Des.
N901
Data
Element
128
N902
127
N903
369
Base
User
Name
Attributes
Attributes
Reference Identification Qualifier
M ID 2/3
M
Code qualifying the Reference Identification
L1
Letters or Notes
Reference Identification
X AN 1/30
O
Reference information as defined for a particular Transaction Set or as specified by the
Reference Identification Qualifier
Always set to "Comment". Ariba writes a constant here because X12 requires that either
N902 or N903 is used, and the description is optional in cXML. By writing a constant,
Ariba avoids any compliance issues with X12.
Application Value List:
Comment
Free-form Description
X AN 1/45
O
Free-form descriptive text
This is the language code attribute sent by cXML to describe the language used for the
comment. The code is ISO 639 compliant. Note that this code is optional and can be
supplied in lower case.
<Comments>
xml:lang
Copyright (c) 2000 - 2003 Ariba, Inc.
%xmlLangCode;
63
#IMPLIED
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
MSG
Message Text
340
N9
Optional
Detail
Optional
1000
To provide a free-form format that allows the transmission of text information
1 If MSG03 is present, then MSG02 is required.
1 MSG03 is the number of lines to advance before printing.
1 MSG02 is not related to the specific characteristics of a printer, but identifies top of
page, advance a line, etc.
2 If MSG02 is "AA - Advance the specified number of lines before print" then MSG03
is required.
Used/Optional
Example:
MSG*Do not wrap with adhesive tape;~
MSG*It leaves a sticky residue*LC~
(LC was shown here for demonstration. It wouldn't actually be used on two short lines,
but only when a line exceeds the 264 char limit of MSG01.)
The actual comment text. The X12 mapping will try to preserve the line breaks from the
cXML as best it can. Each line break will automatically incur a new MSG segment, with
the exception of a blank line. If one line goes over the capacity of MSG01 then the line is
word-broken and a new MSG segment is created to continue the line. If the number of
lines exceed the occurrence limit of MSG, then the remainder of the comment text will
be truncated.
Any imbedded Attachments will be dropped. However, Ariba might include a text
representation that it is present. For example:
MSG*See the attached word document. [Attachment "specs.doc"]~
<OrderRequest>
<ItemOut>
<Comments>
#PCDATA .. <Attachment>
Data Element Summary
Ref.
Des.
MSG01
Data
Element
933
MSG02
934
Base
User
Name
Attributes
Attributes
Free-Form Message Text
M AN 1/264 M
Free-form message text
Printer Carriage Control Code
X ID 2/2
O
A field to be used for the control of the line feed of the receiving printer
If a line was broken by the limitation of MSG01, and a new segment is created for
continuation, then MSG02="LC", otherwise it is not used.
LC
Line Continuation
Copyright (c) 2000 - 2003 Ariba, Inc.
64
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N9
Reference Identification - Extrinsics
330
N9
Optional
Detail
Optional
1
To transmit identifying information as specified by the Reference Identification Qualifier
1 At least one of N902 or N903 is required.
2 If N906 is present, then N905 is required.
3 If either C04003 or C04004 is present, then the other is required.
4 If either C04005 or C04006 is present, then the other is required.
1 N906 reflects the time zone which the time reflects.
2 N907 contains data relating to the value cited in N902.
Used/Optional
Example: N9*ZZ**Size Information~
Extrinsic information is well-formed XML provided by the buyer to define extra
information outside the scope of cXML's specifications. The content here is user-defined,
and in X12 should be regarded as comment information.
There are three rules to consider when looking at extrinsic information:
1. It is defined by the specific implementation of the Buyer and the Buyer's ERP system
to any Ariba B2B Procurement Platform. Two different Buyers might send the same
information in two distinct ways at this level. You cannot depend on the precise format.
2. Neither Ariba nor cXML control the exact content and formatting of Extrinsics. The
implementation is user-defined, and popular implementations thereof often migrate their
way into future versions of cXML. Treat this as comment information.
3. While every effort is made to preserve the integrity of Extrinsic information in the X12
implementation, it simply cannot be guaranteed. Non-printable characters cannot be
transported and any occurrences of our X12 control characters (i.e.. SegTerm, ElemSep,
CompSep) MUST BE TRANSLATED. Supplier side EDI Implement ors should make
their respective departments aware of this.
<OrderRequest>
<ItemOut>
<ItemDetail>
<Extrinsic>
Data Element Summary
Ref.
Des.
N901
Data
Element
128
N903
369
Name
Reference Identification Qualifier
Code qualifying the Reference Identification
ZZ
Mutually Defined
Free-form Description
Free-form descriptive text
Required name attribute to identify the Extrinsic.
<Extrinsic>
name %string;
Copyright (c) 2000 - 2003 Ariba, Inc.
Base
Attributes
M ID 2/3
X
AN 1/45
User
Attributes
M
O
#REQUIRED
65
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
MSG
Message Text
340
N9
Optional
Detail
Optional (Must Use)
1000
To provide a free-form format that allows the transmission of text information
1 If MSG03 is present, then MSG02 is required.
1 MSG03 is the number of lines to advance before printing.
1 MSG02 is not related to the specific characteristics of a printer, but identifies top of
page, advance a line, etc.
2 If MSG02 is "AA - Advance the specified number of lines before print" then MSG03
is required.
Mandatory
Example:
MSG*<Size UnitOfMeasure="cm">~
MSG* <Height>14</Height>~
MSG* <Width>23</Width>~
MSG* <Depth>12.4</Depth>~
MSG*</Size>~
MSG carries the actual Extrinsic data as accurately as possible. Where new lines are
started in cXML, new MSG segments are created (except for blank lines) in order to
preserve its integrity. If a line exceeds the capacity of MSG01, then a new MSG segment
is created and the Extrinsic text continues.
<OrderRequest>
<ItemOut>
<ItemDetail>
<Extrinsic>
ANY
Data Element Summary
Ref.
Des.
MSG01
Data
Element
933
MSG02
934
Base
User
Attributes
Attributes
M AN 1/264 M
Name
Free-Form Message Text
Free-form message text
Printer Carriage Control Code
X ID 2/2
O
A field to be used for the control of the line feed of the receiving printer
If a line from cXML is broken by MSG01's limitation, a new MSG segment is created with
MSG02="LC"
LC
Line Continuation
Copyright (c) 2000 - 2003 Ariba, Inc.
66
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N1
Ship-To Name
350
N1
Optional
Detail
Optional
1
To identify a party by type of organization, name, and code
1 At least one of N102 or N103 is required.
2 If either N103 or N104 is present, then the other is required.
1
This segment, used alone, provides the most efficient method of providing
organizational identification. To obtain this efficiency the "ID Code" (N104) must
provide a key to the table maintained by the transaction processing party.
2 N105 and N106 further define the type of entity in N101.
Used/Optional
Example: N1*ST*San Jose Office*92*152~
Line Item Level Ship-To Address Information
This is optional at the line item level. Ariba will send ShipTo Information either at the
header OR at the line item level, but not both. If it is absent here then it is required at the
header level.
<OrderRequest>
<ItemOut>
<ShipTo>
Data Element Summary
Ref.
Des.
N101
Data
Element
98
N102
93
N103
66
N104
67
Base
User
Name
Attributes
Attributes
Entity Identifier Code
M ID 2/3
M
Code identifying an organizational entity, a physical location, property or an individual
ST
Ship To
Name
X AN 1/60
O
Free-form name
Identification Code Qualifier
X ID 1/2
O
Code designating the system/method of code structure used for Identification Code (67)
92
Assigned by Buyer or Buyer's Agent
Identification Code
X AN 2/80
O
Code identifying a party or other code
Copyright (c) 2000 - 2003 Ariba, Inc.
67
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N2
Additional Name Information
360
N1
Optional
Detail
Optional
2
To specify additional names or those longer than 35 characters in length
Used/Optional
Example:
N2*Maria Valenzuela*B1-2462~
N2*The Buyer, Inc.~
In a PostalAddress, cXML considers DeliverTo to be optional, but can send many. Ariba
SN implements up to the first four here: two Name elements across two N2 segments.
The first two iterations of DeliverTo will occupy the first N2 segment and the third and
fourth iterations, if present, will occupy the second N2. Any further DeliverTo iterations
will be ignored.
<ShipTo>
<Address>
<PostalAddress>
<DeliverTo>
Data Element Summary
Ref.
Des.
N201
Data
Element
93
N202
93
Base
Attributes
M AN 1/60
Name
Name
Free-form name
Name
Free-form name
Copyright (c) 2000 - 2003 Ariba, Inc.
O
68
AN 1/60
User
Attributes
M
O
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N3
Address Information
370
N1
Optional
Detail
Optional
2
To specify the location of the named party
Used/Optional
N3*1500 Buyer Way~
Street address information.
cXML requires one <Street> tag but can send many. Like the N2 above, AribaSN
implements up to the first four: two elements across two segments.
<ShipTo>
<Address>
<PostalAddress>
<Street>
Data Element Summary
Ref.
Des.
N301
Data
Element
166
N302
166
Base
Attributes
M AN 1/55
Name
Address Information
Address information
Address Information
Address information
Copyright (c) 2000 - 2003 Ariba, Inc.
O
69
AN 1/55
User
Attributes
M
O
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N4
Geographic Location
380
N1
Optional
Detail
Optional
1
To specify the geographic place of the named party
1 If N406 is present, then N405 is required.
1
A combination of either N401 through N404, or N405 and N406 may be adequate to
specify a location.
2 N402 is required only if city name (N401) is in the U.S. or Canada.
Used/Optional
Example: N4*San Jose*CA*95110*US~
Geographic information from the PostalAddress
cXML guarantees a City and Country. The State or Province code and the Postal Code
are optional.
<ShipTo>
<Address>
<PostalAddress>
<City> .. <State> .. <PostalCode> .. <Country>
Data Element Summary
Ref.
Des.
N401
Data
Element
19
Base
Attributes
O AN 2/30
Name
City Name
Free-form text for city name
User
Attributes
M
<PostalAddress>
<City>
N402
156
State or Province Code
O ID 2/2
O
Code (Standard State/Province) as defined by appropriate government agency
http://www.usps.gov/ncsc/lookups/abbr_state.txt
http://www.canadapost.ca/CPC2/addrm/addrguide/prov_symbols.html
<PostalAddress>
<State>
N403
116
Postal Code
O ID 3/15
O
Code defining international postal zone code excluding punctuation and blanks (zip code
for United States)
A US Zip Code can be five or nine digits. There will not be a separator present if the full
nine digit code is sent. A Canadian Postal Code is always formatted "A9A9A9". There will
not be a separator in the middle.
<PostalAddress>
<PostalCode>
N404
26
Country Code
O ID 2/3
M
Code identifying the country
Country code is ISO-3166 compliant. You can see a list here along with their respective
currency codes:
http://www.unece.org/trade/rec/rec09en.htm
<PostalAddress>
<Country>
isoCountryCode
Copyright (c) 2000 - 2003 Ariba, Inc.
%isoCountryCode;
70
#REQUIRED
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
PER Administrative Communications Contact
400
N1
Optional
Detail
Optional
3
To identify a person or office to whom administrative communications should be directed
1 If either PER03 or PER04 is present, then the other is required.
2 If either PER05 or PER06 is present, then the other is required.
3 If either PER07 or PER08 is present, then the other is required.
Used/Optional
Example: PER*RE*Maria Primary*TE*14085551824*FX*14085552001*EM*Maria.Valenzuela@thebuyer.com~
Contact information of Telephone, Fax, Email, and URL. cXML requires none, and only
one of each is allowed.
Each contact tag carries a name to identify itself. Where possible, Ariba SN groups those
with the same name together. If all four pieces are supplied, or if they carry distinct
names, then multiple PER segments are required.
The telephone number supplied with either Phone or Fax is broken down by components
by cXML. The number will be formatted appropriately here.
Note that a URL will be limited to the maximum length of the Communication Number
element.
<ShipTo>
<Address>
<Phone> .. <Fax> .. <Email> .. <URL>
Data Element Summary
Ref.
Des.
PER01
Data
Element
366
PER02
93
PER03
365
PER04
364
PER05
365
PER06
364
Base
User
Name
Attributes
Attributes
Contact Function Code
M ID 2/2
M
Code identifying the major duty or responsibility of the person or group named
RE
Receiving Contact
Name
O AN 1/60
O
Free-form name
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Copyright (c) 2000 - 2003 Ariba, Inc.
71
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
PER07
365
PER08
364
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Copyright (c) 2000 - 2003 Ariba, Inc.
72
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N1
Name - Detailed Contact Information
350
N1
Optional
Detail
Optional
1
To identify a party by type of organization, name, and code
1 At least one of N102 or N103 is required.
2 If either N103 or N104 is present, then the other is required.
1
This segment, used alone, provides the most efficient method of providing
organizational identification. To obtain this efficiency the "ID Code" (N104) must
provide a key to the table maintained by the transaction processing party.
2 N105 and N106 further define the type of entity in N101.
Used/Optional
Example: N1*A9*Devereux~
This section of N1 allows for detailed contact information, beyond what can be specified
in the PER[2/110] at the top, which is only intended for brief information.
Any contact that includes a PostalAddress must be specified here, along with contacts
requiring a variety of name tags for a specified role.
<OrderRequest>
<ItemOut>
<Contact>
Data Element Summary
Ref.
Des.
N101
Data
Element
98
N102
93
Base
User
Name
Attributes
Attributes
Entity Identifier Code
M ID 2/3
M
Code identifying an organizational entity, a physical location, property or an individual
60
Salesperson
Identification of individual that sold the product e.g. SSN,
salesperson id, etc.
role="sales"
A9
Sales Office
A business entity whose main activity is, or a location at which, the
sale of goods or services takes place
role="customerService"
BY
Buying Party (Purchaser)
CA
Carrier
EN
End User
role="endUser"
KY
Technical Office
role="technicalSupport"
L5
Contact
(role unspecified)
NG
Administrator
role="administrator"
PD
Purchaser's Department Buyer
role="purchasingAgent"
RI
Remit To
SF
Ship From
SO
Sold To If Different From Bill To
SU
Supplier/Manufacturer
Name
X AN 1/60
O
Copyright (c) 2000 - 2003 Ariba, Inc.
73
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Free-form name
Copyright (c) 2000 - 2003 Ariba, Inc.
74
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N2
Additional Name Information
360
N1
Optional
Detail
Optional
2
To specify additional names or those longer than 35 characters in length
Used/Optional
Example: N2*Stefanie Devereux*Executive Sales Manager~
Ariba SN accepts up to four DeliverTo tags from cXML: two elements across two
segments.
<OrderRequest>
<ItemOut>
<Contact>
<PostalAddress>
<DeliverTo>
Data Element Summary
Ref.
Des.
N201
Data
Element
93
N202
93
Base
Attributes
M AN 1/60
Name
Name
Free-form name
Name
Free-form name
Copyright (c) 2000 - 2003 Ariba, Inc.
O
75
AN 1/60
User
Attributes
M
O
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N3
Address Information
370
N1
Optional
Detail
Optional
2
To specify the location of the named party
Used/Optional
N3*The Buyer, Inc.*1 Buyer Parkway~
In cXML, Street is required if PostalAddress is present. Ariba SN maps a maximum of
four Street tags here: two elements across two segments.
<OrderRequest>
<ItemOut>
<Contact>
<PostalAddess>
<Street>
Data Element Summary
Ref.
Des.
N301
Data
Element
166
N302
166
Base
Attributes
M AN 1/55
Name
Address Information
Address information
Address Information
Address information
Copyright (c) 2000 - 2003 Ariba, Inc.
O
76
AN 1/55
User
Attributes
M
O
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
N4
Geographic Location
380
N1
Optional
Detail
Optional
1
To specify the geographic place of the named party
1 If N406 is present, then N405 is required.
1
A combination of either N401 through N404, or N405 and N406 may be adequate to
specify a location.
2 N402 is required only if city name (N401) is in the U.S. or Canada.
Used/Optional
Example: N4*Chicago*IL*34592*US~
Geographic part of the address
<OrderHeader>
<ItemOut>
<Contact>
<PostalAddress>
<City> .. <State> .. <PostalCode> .. <Country>
Data Element Summary
Ref.
Des.
N401
Data
Element
19
Base
Attributes
O AN 2/30
Name
City Name
Free-form text for city name
User
Attributes
M
<PostalAddress>
<City>
N402
156
State or Province Code
O ID 2/2
O
Code (Standard State/Province) as defined by appropriate government agency
http://www.usps.gov/ncsc/lookups/abbr_state.txt
http://www.canadapost.ca/CPC2/addrm/addrguide/prov_symbols.html
<PostalAddress>
<State>
N403
116
Postal Code
O ID 3/15
O
Code defining international postal zone code excluding punctuation and blanks (zip code
for United States)
A US Zip Code can be five or nine digits. A Canadian Postal Code is always formatted
"A9A9A9".
<PostalAddress>
<PostalCode>
N404
26
Country Code
Code identifying the country
<PostalAddress>
<Country>
isoCountryCode
Copyright (c) 2000 - 2003 Ariba, Inc.
O
%isoCountryCode
77
ID 2/3
M
#REQUIRED
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
PER Administrative Communications Contact
400
N1
Optional
Detail
Optional
3
To identify a person or office to whom administrative communications should be directed
1 If either PER03 or PER04 is present, then the other is required.
2 If either PER05 or PER06 is present, then the other is required.
3 If either PER07 or PER08 is present, then the other is required.
Used/Optional
Example:
PER*CR*Stefanie - Sales*TE*18005552429*EM*Stefanie.Devereux@thebuyer.com~
PER*CR**TE*18005558288*UR*http://www.thebuyer.com/Sales/~
Several PER's are allowed. The contact communications fragments are merged according
to their name attributes. Those with the same name are placed in the same segment.
<OrderRequest>
<ItemOut>
<Contact>
<Email> .. <Phone> .. <Fax> .. <URL>
Data Element Summary
Ref.
Des.
PER01
Data
Element
366
PER02
93
Base
User
Name
Attributes
Attributes
Contact Function Code
M ID 2/2
M
Code identifying the major duty or responsibility of the person or group named
AE
Corporate Purchasing Agent
AM
Administrator
BL
Technical Department
CN
General Contact
CR
Customer Relations
EB
Entered By
SR
Sales Representative or Department
Name
O AN 1/60
O
Free-form name
<Email> .. <Phone> .. <Fax> .. <URL>
name %string; #IMPLIED
PER03
365
PER04
364
PER05
365
PER06
364
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Copyright (c) 2000 - 2003 Ariba, Inc.
78
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
PER07
365
PER08
364
Complete communications number including country or area code when applicable
Communication Number Qualifier
X ID 2/2
O
Code identifying the type of communication number
EM
Electronic Mail
FX
Facsimile
TE
Telephone
UR
Uniform Resource Locator (URL)
Communication Number
X AN 1/80
O
Complete communications number including country or area code when applicable
Copyright (c) 2000 - 2003 Ariba, Inc.
79
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
CTT Transaction Totals
010
CTT
Optional
Summary
Optional
1
To transmit a hash total for a specific element in the transaction set
1 If either CTT03 or CTT04 is present, then the other is required.
2 If either CTT05 or CTT06 is present, then the other is required.
1
This segment is intended to provide hash totals to validate transaction completeness
and correctness.
Used/Optional
Example: CTT*15*151~
Data Element Summary
Ref.
Des.
CTT01
Data
Element
354
CTT02
347
Base
User
Name
Attributes
Attributes
Number of Line Items
M N0 1/6
M
Total number of line items in the transaction set
Hash Total
O R 1/10
O
Sum of values of the specified data element. All values in the data element will be summed
without regard to decimal points (explicit or implicit) or signs. Truncation will occur on the
left most digits if the sum is greater than the maximum size of the hash total of the data
element. Example: -.0018 First occurrence of value being hashed. .18 Second occurrence of
value being hashed. 1.8 Third occurrence of value being hashed. 18.01 Fourth occurrence
of value being hashed. --------- 1855 Hash total prior to truncation. 855 Hash total after
truncation to three-digit field.
Copyright (c) 2000 - 2003 Ariba, Inc.
80
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
Usage Notes:
Notes:
AMT Monetary Amount
020
CTT
Optional
Summary
Optional (Must Use)
1
To indicate the total monetary amount
Mandatory
Example: AMT*TT*322.18~
Transaction total for the entire Purchase Order. This is what the Buyer is expecting to
pay.
<OrderRequest>
<OrderRequestHeader>
<Total>
<Money>
#PCDATA
Data Element Summary
Ref.
Des.
AMT01
Data
Element
522
AMT02
782
Name
Amount Qualifier Code
Code to qualify amount
TT
Total Transaction Amount
Monetary Amount
Monetary amount
Copyright (c) 2000 - 2003 Ariba, Inc.
81
Base
Attributes
M ID 1/3
M
R 1/18
User
Attributes
M
M
Revision 6, June 2003
Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
Segment:
Position:
Loop:
Level:
Usage:
Max Use:
Purpose:
Syntax Notes:
Semantic Notes:
Comments:
SE Transaction Set Trailer
030
Summary
Mandatory
1
To indicate the end of the transaction set and provide the count of the transmitted
segments (including the beginning (ST) and ending (SE) segments)
1
SE is the last segment of each transaction set.
Data Element Summary
Ref.
Des.
SE01
Data
Element
96
SE02
329
Base
User
Name
Attributes
Attributes
Number of Included Segments
M N0 1/10
M
Total number of segments included in a transaction set including ST and SE segments
Transaction Set Control Number
M AN 4/9
M
Identifying control number that must be unique within the transaction set functional group
assigned by the originator for a transaction set
Copyright (c) 2000 - 2003 Ariba, Inc.
82
Revision 6, June 2003
Download