Вы находитесь на странице: 1из 82

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.

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

020

BEG

Beginning Segment for Purchase Order

040

CUR

Currency

Must Use

050

REF

Reference Identification

>1

10

060

PER

Administrative Communications Contact

12

110

CSH

Sales Requirements

13

120

SAC

Shipping Charges

15

125

CUR

Currency

16

285

TXI

Tax Information

17

295

N9

18

297

DTM

Max.Use
1

Notes and
Comments

1
1

LOOP ID - SAC

LOOP ID - N9

Reference Identification - Payment of


Purchase Order
Date/Time Reference

Must Use

LOOP ID - N9

19

295

N9

Reference Identification - Comments

20

300

MSG

Message Text

21

295

N9

Reference Identification - Extrinsics

22

300

MSG

Message Text

1000

Must Use

1000

LOOP ID - N9

998

LOOP ID - N1

23

310

N1

Bill-To Name

24

320

N2

Additional Name Information

25

330

N3

Address Information

26

340

N4

Geographic Location

Copyright (c) 2000 - 2003 Ariba, Inc.

Loop
Repeat

Revision 6, June 2003

Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
27

360

PER

Administrative Communications Contact

>1

LOOP ID - N1

29

310

N1

Ship-To Name

30

320

N2

Additional Name Information

31

330

N3

Address Information

32

340

N4

Geographic Location

33

360

PER

Administrative Communications Contact

>1

LOOP ID - N1

10

35

310

N1

Detailed Contact Information - Name

37

320

N2

Additional Name Information

38

330

N3

Address Information

39

340

N4

Geographic Location

40

360

PER

Administrative Communications Contact

>1

Detail:
Page
No.

Pos.
No.

Seg.
ID

Base
Status

42

010

PO1

Baseline Item Data

44

020

CUR

Currency of Unit Price

Name
LOOP ID - PO1

User
Status
M

Max.Use
1

050

PID

n1
1000

Product/Item Description

LOOP ID - PID

1000

47

050

PID

Product/Item Description - Classification


Details

49

100

REF

Reference Identification - Requisition ID

50

100

REF

Reference Identification - Supplier ID

51

110

PER

Administrative Communications Contact

53

130

SAC

Shipping Charge

55

135

CUR

Currency

LOOP ID - SAC

1
Must Use

LOOP ID - SAC

20

56

130

SAC

Account Distribution

58

135

CUR

Currency

59

210

DTM

Requested Delivery Date

60

291

TXI

Tax Information

LOOP ID - N9

61

330

N9

Reference Identification - URL

62

340

MSG

Message Text

1000

63

330

N9

Reference Identification - Comments

64

340

MSG

Message Text

1000

LOOP ID - N9

999

LOOP ID - N9

999

65

330

N9

Reference Identification - Extrinsics

66

340

MSG

Message Text

67

350

N1

Ship-To Name

68

360

N2

Additional Name Information

Must Use

1000

LOOP ID - N1

Copyright (c) 2000 - 2003 Ariba, Inc.

Notes and
Comments

LOOP ID - PID
45

Loop
Repeat
100000

Revision 6, June 2003

Ariba, Inc. cXML 1.2: ANSI X12 004010 850 Purchase Order Implementation Guidelines
69

370

N3

Address Information

70

380

N4

Geographic Location

71

400

PER

Administrative Communications Contact

LOOP ID - N1

10

73

350

N1

Name - Detailed Contact Information

75

360

N2

Additional Name Information

76

370

N3

Address Information

77

380

N4

Geographic Location

78

400

PER

Administrative Communications Contact

Summary:
Page
No.

Pos.
No.

Seg.
ID

Base
Status

80

010

CTT

Transaction Totals

81

020

AMT

Monetary Amount

82

030

SE

Transaction Set Trailer

Name
LOOP ID - CTT

User
Status

Max.Use

Loop
Repeat
1

Notes and
Comments

n2

Must Use

n3

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.

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.

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.

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.

DT 8/8

#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

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.

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

AN 1/60

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

<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

R 1/18

User
Attributes
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.

AN 1/45

#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

AN 1/45

User
Attributes
M

#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.

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.

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.

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.

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.

36

AN 1/60

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.

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.

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

ID 2/2

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

R 1/15

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

<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

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

R 1/18

User
Attributes
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

AN 1/45

User
Attributes
M

#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.

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.

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.

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.

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.

%isoCountryCode

77

ID 2/3

#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

R 1/18

User
Attributes
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

Вам также может понравиться