Purchase Order Guidelines (.csv)
See How To Use this Guide before selecting the below fields.
The following outlines the TL_CSV_PTPO_PurchaseOrder_IB message guidelines. These fields are sent by the sender to TraceLink.

Data Element | Occurs | Format | Length | Enums | Req | Description |
---|---|---|---|---|---|---|
CSV_PurchaseOrder | 1...1 | - | - | - | M | Purchase Order (PO) root record. |
ControlFileHeader | 1...1 | - | - | - | M | CSV file control header record. |
Flag | 1...1 | String | 6/6 | - | M | Control file code identifying record = HEADER.1 |
Version | 1...1 | String | 0/* | - | M | Version of CSV transaction.2 |
FileSenderNumber | 1...1 | String | 0/* | - | M | File sender company ID - Customer ID.3 |
FileReceiverNumber | 1...1 | String | 0/* | - | M | File receiver company ID - Supplier Site ID.4 |
UsageIndicator | 1...1 | String | 0/* | UsageIndicator | M | Identifies test or production data.5 |
FileTransactionType | 0...1 | String | 0/* | TransactionType | O | File transaction type = PURCHASEORDER.6 |
FileControlNumber | 0...1 | String | 0/* | - | O | Unique file control ID number.7 |
FileDate | 0...1 | Date | 8/8 | - | O | Date file generated in format YYYYMMDD.8 |
FileTime | 0...1 | Time | 6/6 | - | O | Time file generated in format HHMMSS.9 |
PurchaseOrder_HeaderRecord | 1...1 | - | - | - | M | PO header record. |
Flag | 1...1 | String | 6/6 | - | M | Transaction header record code = DOCHDR.10 |
OrderLevelAction | 0...1 | String | 0/* | HeaderActionCode | O | Action to be triggered in receiving system. |
PurchaseOrderNumber | 0...1 | String | 0/* | - | O | PO number.11 |
PurchaseOrderDate | 0...1 | Date | 8/8 | - | O | PO date in format YYYYMMDD.12 |
RequestedDeliveryDate | 0...1 | Date | 8/8 | - | O | Requested delivery date in format YYYYMMDD.13 |
OrderAcknowledgementRequired | 0...1 | String | 0/* | - | O | Order acknowledgment flag. |
OrderAcknowledgementStatus | 0...1 | String | 0/* | - | O | Order wide acknowledgment status. |
OrderCurrency | 0...1 | String | 0/* | CurrencyCodeType | O | Order currency.14 |
ExchangeRate | 0...1 | String | 0/* | - | O | Exchange rate if foreign currency. |
TermsOfPaymentCode | 0...1 | String | 0/* | - | O | Terms of payment.15 |
OrderDocumentType | 0...1 | String | 0/* | - | O | Identifies type of order in file. |
ShippingConditions | 0...1 | String | 0/* | - | O | Shipping conditions code for whole order. |
ShippingConditionsDescription | 0...1 | String | 0/* | - | O | Shipping conditions description. |
RecipientNumber | 0...1 | String | 0/* | - | O | Customer's partner number for order recipient.16 |
SalesOrderNumber | 0...1 | String | 0/* | - | O | Sales order number. |
SalesOrderDate | 0...1 | Date | 8/8 | - | O | Sales order date in format YYYYMMDD. |
SupplierInternalPurchaseOrderNumber | 0...1 | String | 0/* | - | O | Supplier's internal or alternate PO number.17 |
HeaderRecord_PartnerAddressGroup | 1...* | - | - | - | M | Partner ID and address data. |
Flag | 1...1 | String | 7/7 | - | M | Header partner records code = PARTNER.18 |
PartnerTypeHandlingCode | 0...1 | String | 0/* | PartnerTypeHandlingCode | O | Partner type qualifier code.19 |
PartnerNumber | 0...1 | String | 0/* | - | O | Customer ID.20 |
AlternatePartnerNumber | 0...1 | String | 0/* | - | O | Alternate partner ID. |
PartnerName1 | 0...1 | String | 0/* | - | O | Name (line 1).21 |
PartnerName2 | 0...1 | String | 0/* | - | O | Name (line 2). |
PartnerStreetAddress1 | 0...1 | String | 0/* | - | O | Main street address.22 |
PartnerStreetAddress2 | 0...1 | String | 0/* | - | O | Street address (line 2). |
PartnerCity | 0...1 | String | 0/* | - | O | City.23 |
PartnerRegionCode | 0...1 | String | 0/* | - | O | State, province, or region.24 |
PartnerPostalCode | 0...1 | String | 0/* | - | O | Postal code.25 |
PartnerCountry | 0...1 | String | 0/* | CountryCode | O | 2-char ISO country key.26 |
PartnerISOLanguageKey | 0...1 | String | 0/* | - | O | ISO language key.27 |
PartnerContactTelephone | 0...1 | String | 0/* | - | O | Contact telephone number.28 |
PartnerContactFax | 0...1 | String | 0/* | - | O | Contact fax number.29 |
HeaderRecord_AdditionalDocumentsGroup | 0...* | - | - | - | O | Group stores additional document type numbers and dates in PO. |
Flag | 1...1 | String | 12/12 | - | M | Additional header document type record code = HDRDOCUMENTS.30 |
DocumentTypeHandlingCode | 0...1 | String | 0/* | DocumentType | O | Document type qualifier code.31 |
DocumentNumber | 0...1 | String | 0/* | - | O | Document ID number.32 |
DocumentDate | 0...1 | String | 0/* | - | O | Date document issued.33 |
HeaderRecord_AdditionalDatesGroup | 0...* | - | - | - | O | Group records additional date types. |
Flag | 1...1 | String | 8/8 | - | M | Additional header date type record code = HDRDATES.34 |
DateTypeHandlingCode | 0...1 | String | 0/* | DateType | O | Date type qualifier code. |
Date | 0...1 | String | 0/* | - | O | Unique text identifier.35 |
Time | 0...1 | String | 0/* | - | O | Customer ID number.36 |
PO_Header_DeliveryTermsTypeGrp | 0...* | - | - | - | O | Delivery terms for order. |
Flag | 1...1 | String | 11/11 | - | M | Delivery terms type record code = HDRDELIVERY.37 |
DeliveryTypeHandlingCode | 0...1 | String | 0/* | DeliveryTypes | O | Delivery type qualifier code.38 |
DeliveryTermsCode | 0...1 | String | 0/* | - | O | Delivery terms code.39 |
DeliveryTermsDescription | 0...1 | String | 0/* | - | O | Delivery terms code description.40 |
DeliveryPriority | 0...1 | String | 0/* | - | O | Customer ID number. |
HeaderRecord_PaymentTerms | 0...* | - | - | - | O | Payment terms for order. |
Flag | 1...1 | String | 7/7 | - | M | Payment terms type record code = PAYMENT.41 |
PaymentTermsHandlingCode | 0...1 | String | 0/* | PaymentTerms | O | Payment terms qualifier code. |
PaymentTermsInDays | 0...1 | String | 0/* | - | O | Payment terms in number of days. |
PaymentTermsPercent | 0...1 | String | 0/* | - | O | Payment terms in percent. |
PaymentTermsDescription | 0...1 | String | 0/* | - | O | Description of payment terms. |
HeaderRecord_OrganizationTypeGroup | 0...* | - | - | - | O | Organization groups. |
Flag | 1...1 | String | 12/12 | - | M | Organization entity type record code = ORGANIZATION.42 |
OrganizationTypeHandlingCode | 0...1 | String | 0/* | OrgType | O | Organization type qualifier code.43 |
OrganizationType | 0...1 | String | 0/* | - | O | Payment terms in number of days.44 |
HeaderRecord_AdditionalDataGroup | 0...* | - | - | - | O | Payment terms for order. |
Flag | 1...1 | String | 13/13 | - | M | Additional data type record code = HDRADDITIONAL.45 |
AdditionalDataHandlingCode | 0...1 | String | 0/* | - | O | Additional data qualifier code. |
AdditionalData | 0...1 | String | 0/* | - | O | Additional data element. |
AdditionalDataText | 0...1 | String | 0/* | - | O | Additional data text. |
HeaderRecord_FreeTextGroup | 0...* | - | - | - | O | - |
Flag | 1...1 | String | 7/7 | - | M | Free text type header record code = HDRTEXT.46 |
FreeTextHandlingCode | 0...1 | String | 0/* | - | O | Free text record qualifier code.47 |
FreeTextObject | 0...1 | String | 0/* | - | O | Free text business document object.48 |
FreeTextLanguageKey | 0...1 | String | 0/* | - | O | Language key for text.49 |
FreeTextContents | 0...1 | String | 0/* | - | O | Free text contents.50 |
FreeTextFormat | 0...1 | String | 0/* | - | O | Format for text block: continuous text flow (*) or line break (/).51 |
PurchaseOrder_ItemDetails | 1...* | - | - | - | M | Materials consumed item details records. |
Flag | 1...1 | String | 11/11 | - | M | Transaction item details record code = ITEMDETAILS.52 |
LineItemNumber | 0...1 | String | 0/* | - | O | Line item number.53 |
ItemAction | 0...1 | String | 0/* | ItemActionCode | O | Identifies action taken on item. Relevant for PO acknowledgment. |
ItemAcknowledgementStatus | 0...1 | String | 0/* | - | O | Acknowledgment status for item. Relevant for PO acknowledgment. |
AcknowledgementRequired | 0...1 | String | 0/* | - | O | Acknowledgment of PO required flag. |
CustomerMaterialNumber | 0...1 | String | 0/* | - | O | Customer material number.54 |
MaterialDescription | 0...1 | String | 0/* | - | O | Customer material description.55 |
SupplierMaterialNumber | 0...1 | String | 0/* | - | O | Supplier material number.56 |
CustomerLotNumber | 0...1 | String | 0/* | - | O | Customer lot or batch number.57 |
TotalItemQuantityOrdered | 0...1 | String | 0/* | - | O | Total quantity ordered.58 |
TotalQuantityUnitOfMeasure | 0...1 | String | 0/* | UnitOfMeasure | O | Unit of measure for quantity ordered.59 |
ItemUnitPrice | 0...1 | String | 0/* | - | O | Unit price for item.60 |
PricingUnitNumerator | 0...1 | String | 0/* | - | O | Pricing unit per used to calculate item net price.61 |
ItemNetValue | 0...1 | String | 0/* | - | O | Net value of item.62 |
ItemGrossPrice | 0...1 | String | 0/* | - | O | Gross price for item including surcharges, discounts, and taxes.63 |
ItemCurrency | 0...1 | String | 0/* | CurrencyCodeType | O | Line item currency.64 |
ItemNetWeight | 0...1 | String | 0/* | - | O | Total net weight for item. |
NetWeightUnitOfMeasure | 0...1 | String | 0/* | UnitOfMeasure | C | Unit of measure for net weight.
![]() |
ItemMaterialClass | 0...1 | String | 0/* | - | O | Material class or group code for item.65 |
PurchaseOrderNumber | 0...1 | String | 0/* | - | O | Referenced PO number. |
PurchaseOrderLineItemNumber | 0...1 | String | 0/* | - | O | Referenced PO line item number. |
RejectionReasonCode | 0...1 | String | 0/* | - | O | Code identifying reason item was rejected. Only relevant for PO Acknowledgment. |
RejectionReasonCodeDescription | 0...1 | String | 0/* | - | O | Description of rejection reason code. Only relevant for PO Acknowledgment. |
ItemCategory | 0...1 | String | 0/* | ItemCategoryType | O | Code identifying type of item ordered, such as consignment or subcontracting.66 |
ItemPlant | 0...1 | String | 0/* | - | O | Plant ID where item is located.67 |
ItemStorageLocation | 0...1 | String | 0/* | - | O | Storage location in plant for item.68 |
ItemDeliveryPriority | 0...1 | String | 0/* | - | O | Priority assigned to delivery of item. |
ItemDeliveryPriorityDescription | 0...1 | String | 0/* | - | O | Description of delivery priority. |
ItemRoute | 0...1 | String | 0/* | - | O | Code for route that will be used to deliver item to customer. |
ItemRouteDescription | 0...1 | String | 0/* | - | O | Description of item route code. |
ShippingReceivingPoint | 0...1 | String | 0/* | - | O | Shipping/receiving point.69 |
SalesDocumentItemCategory | 0...1 | String | 0/* | - | O | Sales document item category. |
BillOfMaterialsFlag | 0...1 | String | 0/* | - | O | Identifies top level item of Bill of Materials. |
BillOfMaterialsLevel | 0...1 | String | 0/* | - | O | For future use... BOM item level (1,2,3). |
PriceUnitConversionDenominator | 0...1 | String | 0/* | - | O | Denominator (divisor) for conversion of sales quantity into SKU quantity.70 |
PriceUnitConversionNumerator | 0...1 | String | 0/* | - | O | Numerator (factor) for conversion of sales quantity into SKU quantity.71 |
NumberPartialDeliveries | 0...1 | String | 0/* | - | O | Maximum number of partial deliveries for item.72 |
ItemDetails_SplitDeliverySchedulesGroup | 0...* | - | - | - | O | Scheduled quantities and dates for split deliveries. |
Flag | 1...1 | String | 13/13 | - | M | Split delivery schedule record code = SPLITDELIVERY.73 |
ScheduledDeliveryQuantity | 0...1 | String | 0/* | - | O | Scheduled delivery quantity.74 |
ScheduledDeliveryUnitOfMeasure | 0...1 | String | 0/* | - | O | Unit of measure for quantity to be delivered.75 |
ScheduledDeliveryDate | 0...1 | String | 0/* | - | O | Date quantity of item to be delivered.76 |
ItemDetails_AdditionalMaterialsGroup | 0...* | - | - | - | O | Additional materials group. |
Flag | 1...1 | String | 9/9 | - | M | Additional materials record code = MATERIALS.77 |
MaterialsTypeHandlingCode | 0...1 | String | 0/* | MaterialsType | O | Materials type qualifier code.78 |
MaterialOrLotNumber | 0...1 | String | 0/* | - | O | Material or batch number of item.79 |
MaterialDescription | 0...1 | String | 0/* | - | O | Description of item.80 |
ItemDetails_PricingDiscountGroup | 0...* | - | - | - | O | Pricing, surcharges, discounts, taxes, and other customer item pricing data. |
Flag | 1...1 | String | 11/11 | - | M | Item pricing discount group record code = ITEMPRICING.81 |
AdditionSubtractionIndicator | 0...1 | String | 0/* | - | O | Identifies pricing record as debit (-) or credit (+). |
PricingDiscountType | 0...1 | String | 0/* | - | O | Pricing record type code. |
PricingDiscountDescription | 0...1 | String | 0/* | - | O | Text description for pricing record type. |
PricingDiscountAmount | 0...1 | String | 0/* | - | O | Fixed total amount in pricing record. |
PricingDiscountUnitPrice | 0...1 | String | 0/* | - | O | Unit price for pricing record. |
PricingDiscountPricingUnit | 0...1 | String | 0/* | - | O | Pricing unit used to calculate pricing amount. |
PricingDiscountUnitOfMeasure | 0...1 | String | 0/* | - | O | Unit of measure used in pricing record. |
PricingDiscountCurrency | 0...1 | String | 0/* | CurrencyCodeType | O | Pricing record currency. |
ItemDetails_AdditionalDocumentsGroup | 0...* | - | - | - | O | Group stores additional document type numbers and dates in PO at item level. |
Flag | 1...1 | String | 13/13 | - | M | Additional item level document type record code = ITEMDOCUMENTS.82 |
DocumentTypeHandlingCode | 0...1 | String | 0/* | DocumentType | O | Document type qualifier code.83 |
DocumentNumber | 0...1 | String | 0/* | - | O | Document ID number.84 |
DocumentLineItemNumber | 0...1 | String | 0/* | - | O | Document line item number.85 |
DocumentDate | 0...1 | String | 0/* | - | O | Date document issued.86 |
ItemDetails_AdditionalDatesGroup | 0...* | - | - | - | O | Additional date types at item level. |
Flag | 1...1 | String | - | - | M | Additional item level date type record code = ITEMDATES.87 |
DateTypeHandlingCode | 0...1 | String | 0/* | DateType | O | Date type qualifier code.88 |
Date | 0...1 | String | 0/* | - | O | Unique text identifier. |
Time | 0...1 | String | 0/* | - | O | Customer ID number. |
ItemDetails_PartnerAddressGroup | 0...* | - | - | - | O | Ship-to partner ID and address data at item level, if present in transaction. |
Flag | 1...1 | String | 11/11 | - | M | Item partner records code = ITEMPARTNER.89 |
PartnerTypeHandlingCode | 0...1 | String | 0/* | PartnerTypeHandlingCode | O | Partner type qualifier code.90 |
PartnerNumber | 0...1 | String | 0/* | - | O | Customer ID.91 |
AlternatePartnerNumber | 0...1 | String | 0/* | - | O | Alternate partner ID. |
PartnerName1 | 0...1 | String | 0/* | - | O | Name (line 1).92 |
PartnerName2 | 0...1 | String | 0/* | - | O | Name (line 2). |
PartnerStreetAddress1 | 0...1 | String | 0/* | - | O | Main street address.93 |
PartnerStreetAddress2 | 0...1 | String | 0/* | - | O | Street address (line 2). |
PartnerCity | 0...1 | String | 0/* | - | O | City.94 |
PartnerRegionCode | 0...1 | String | 0/* | - | O | State, province, or region.95 |
PartnerPostalCode | 0...1 | String | 0/* | - | O | Postal code.96 |
PartnerCountry | 0...1 | String | 0/* | CountryCode | O | 2-char ISO country key.97 |
PartnerISOLanguageKey | 0...1 | String | 0/* | - | O | ISO language key.98 |
PartnerContactTelephone | 0...1 | String | 0/* | - | O | Contact telephone number. |
PartnerContactFax | 0...1 | String | 0/* | - | O | Contact fax number. |
ItemDetails_DeliveryTerms | 0...* | - | - | - | O | Delivery terms for order at item level. |
Flag | 1...1 | String | 12/12 | - | M | Delivery terms type record code = HDRDELIVERY.99 |
DeliveryTypeHandlingCode | 0...1 | String | 0/* | DeliveryTypes | O | Delivery type qualifier code.100 |
DeliveryTermsCode | 0...1 | String | 0/* | - | O | Delivery terms code.101 |
DeliveryTermsDescription | 0...1 | String | 0/* | - | O | Delivery terms code description.102 |
DeliveryPriority | 0...1 | String | 0/* | - | O | Customer ID number. |
ItemDetails_AdditionalDataGroup | 0...* | - | - | - | O | Payment terms for order. |
Flag | 1...1 | String | 14/14 | - | M | Additional item level data type record code = ITEMADDITIONAL.103 |
AdditionalDataHandlingCode | 0...1 | String | 0/* | - | O | Additional data qualifier code. |
AdditionalData | 0...1 | String | 0/* | - | O | Additional data element. |
AdditionalDataText | 0...1 | String | 0/* | - | O | Additional data text. |
ItemDetails_FreeTextGroup | 0...* | - | - | - | O | - |
Flag | 1...1 | String | 8/8 | - | M | Free text type header record code = ITEMTEXT.104 |
FreeTextHandlingCode | 0...1 | String | 0/* | - | O | Free text record qualifier code.105 |
FreeTextObject | 0...1 | String | 0/* | - | O | Free text business document object. |
FreeTextLanguageKey | 0...1 | String | 0/* | - | O | Language key for text.106 |
FreeTextContents | 0...1 | String | 0/* | - | O | Free text contents.107 |
FreeTextFormat | 0...1 | String | 0/* | - | O | Format for text block: continuous text flow (*) or line break (/).108 |