Material Purchase Order Guidelines (.csv)

See How To Use this Guide before interpreting the guidelines below.

The following outlines the TL_CSV_PTMPO_MaterialPurchaseOrder_IB message guidelines.

When sending an element in Date or DateTime format, a valid date must be given. "00" is not a valid day or month value and "0000" is not a valid year value.
Data Element Occurs Format Length Enum Req Description
CSV_MaterialPurchaseOrder [1...1] - - - M Material Purchase Order base element.
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 message. *2
FileSenderNumber [1...1] String [0/*] - M File sender company ID - SupplierSiteID. In a material PO, the supplier is ordering goods from the customer. The supplier sends the PO to the customer. *3
FileReceiverNumber [1...1] String [0/*] - M File receiver company ID - CustomerID. *4
UsageIndicator [1...1] String [0/*] UsageIndicator M Identifies test or production data. *5
FileTransactionType [0...1] String [0/*] TransactionType O File message type should be equal to MATERIALPO. *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
MaterialPO_HeaderRecord [1...1] - - - M PO header record.
Flag [1...1] String [6/6] - M 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 [0/*] - O Sales order date in format YYYYMMDD.
SupplierInternalPurchaseOrderNumber [0...1] String [0/*] - O Supplier's internal or alternate PO number. *17
MaterialPO_HeaderPartnerAddressGroup [1...*] - - - M Partner ID and address data.
Flag [1...1] String [0/*] - 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 - supplier is the purchaser. *20
AlternatePartnerNumber [0...1] String [0/*] - O Alternate partner ID.
PartnerName1 [0...1] String [0/*] - O Name. *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-character 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
MaterialPO_HeaderAdditionalDocumentsGroup [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
MaterialPO_HeaderAdditionalDatesGroup [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. *35
Date [0...1] Date [8/8] - O Unique text identifier. *36
Time [0...1] Time [6/6] - O Customer ID number. *37
MaterialPO_HeaderDeliveryTerms [0...*] - - - O Delivery terms for order.
Flag [1...1] String [11/11] - M Delivery terms type record code = HDRDELIVERY. *38
DeliveryTypeHandlingCode [0...1] String [0/*] DeliveryTypes O Delivery type qualifier code. *39
DeliveryTermsCode [0...1] String [0/*] - O Delivery terms code. *40
DeliveryTermsDescription [0...1] String [0/*] - O Delivery terms code description. *41
DeliveryPriority [0...1] String [0/*] - O Customer ID number.
MaterialPO_HeaderPaymentTerms [0...*] - - - O Payment terms for order.
Flag [1...1] String [7/7] - M Payment terms type record code = PAYMENT. *42
PaymentTermsHandlingCode [0...1] String [0/*] - 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.
MaterialPO_HeaderOrganization [0...*] - - - O Organization groups.
Flag [1...1] String [12/12] - M Organization entity type record code = ORGANIZATION. *43
OrganizationTypeHandlingCode [0...1] String [0/*] OrgType O Organization type qualifier code. *44
OrganizationType [0...1] String [0/*] - O Payment terms in number of days. *45
MaterialPO_HeaderAdditionalDataGroup [0...*] - - - O Payment terms for order.
Flag [1...1] String [13/13] - M Additional data type record code = HDRADDITIONAL. *46
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.
MaterialPO_HeaderFreeTextGroup [0...*] - - - O -
Flag [1...1] String [7/7] - M Free text type header record code = HDRTEXT. *47
FreeTextHandlingCode [0...1] String [0/*] - O Free text record qualifier code. *48
FreeTextObject [0...1] String [0/*] - O Free text business document object. *49
FreeTextLanguageKey [0...1] String [0/*] - O Language key for text. *50
FreeTextContents [0...1] String [0/*] - O Free text contents. *51
FreeTextFormat [0...1] String [0/*] - O Format for text block: continuous text flow (*) or line break (/). *52
MaterialPO_ItemDetails [1...*] - - - M Materials consumed item details records.
Flag [1...1] String [11/11] - M Item details record code = ITEMDET. *53
LineItemNumber [0...1] String [0/*] - O Line item number. *54
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. *55
MaterialDescription [0...1] String [0/*] - O Customer material description. *56
SupplierMaterialNumber [0...1] String [0/*] - O Supplier material number. *57
CustomerLotNumber [0...1] String [0/*] - O Customer lot or batch number. *58
TotalItemQuantityOrdered [0...1] String [0/*] - O Total quantity ordered. *59
TotalQuantityUnitOfMeasure [0...1] String [0/*] UnitOfMeasure O Unit of measure for quantity ordered. *60
ItemUnitPrice [0...1] String [0/*] - O Unit price for item. *61
PricingUnitNumerator [0...1] String [0/*] - O Pricing unit per used to calculate item net price. *62
ItemNetValue [0...1] String [0/*] - O Net value of item. *63
ItemGrossPrice [0...1] String [0/*] - O Gross price for item including surcharges, discounts, and taxes. *64
ItemCurrency [0...1] String [0/*] CurrencyCodeType O Line item currency. *65
ItemNetWeight [0...1] String [0/*] - O Total net weight for item. *66
NetWeightUnitOfMeasure [0...1] String [0/*] UnitOfMeasure C Unit of measure for net weight. *67
Mandatory if ItemNetWeight is populated.
ItemMaterialClass [0...1] String [0/*] - O Material class or group code for item. *68
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. *69
ItemPlant [0...1] String [0/*] - O Plant ID where item is located. *70
ItemStorageLocation [0...1] String [0/*] - O Storage location in plant for item. *71
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. *72
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 BOM item level (1,2,3).
PriceUnitConversionDenominator [0...1] String [0/*] - O Denominator (divisor) for conversion of sales quantity into SKU quantity. *73
PriceUnitConversionNumerator [0...1] String [0/*] - O Numerator (factor) for conversion of sales quantity into SKU quantity. *74
NumberPartialDeliveries [0...1] String [0/*] - O Maximum number of partial deliveries for item. *75
MaterialPO_ItemSplitDeliverySchedulesGroup [0...*] - - - O Scheduled quantities and dates for split deliveries.
Flag [1...1] String [13/13] - M Split delivery schedule record code = SPLITDELIVERY. *76
ScheduledDeliveryQuantity [0...1] String [0/*] - O Scheduled delivery quantity. *77
ScheduledDeliveryUnitOfMeasure [0...1] String [0/*] - O Unit of measure for quantity to be delivered. *78
ScheduledDeliveryDate [0...1] Date [0/*] - O Date quantity of item to be delivered. *79
MaterialPO_ItemAdditionalMaterialsGroup [0...*] - - - O Additional materials group.
Flag [1...1] String [9/9] - M Additional materials record code = MATERIALS. *80
MaterialsTypeHandlingCode [0...1] String [0/*] MaterialsType O Materials type qualifier code. *81
MaterialOrLotNumber [0...1] String [0/*] - O Material or batch number of item. *82
MaterialDescription [0...1] String [0/*] - O Description of item. *83
MaterialPO_ItemPricingDiscountGroup [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. *84
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/*] UnitOfMeasure O Unit of measure used in pricing record.
PricingDiscountCurrency [0...1] String [0/*] CurrencyCodeType O Pricing record currency.
MaterialPO_ItemAdditionalDocumentsGroup [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. *85
DocumentTypeHandlingCode [0...1] String [0/*] DocumentType O Document type qualifier code. *86
DocumentNumber [0...1] String [0/*] - O Document ID number. *87
DocumentLineItemNumber [0...1] String [0/*] - O Document line item number. *88
DocumentDate [0...1] String [0/*] - O Date document issued. *89
MaterialPO_ItemAdditionalDatesGroup [0...*] - - - O Additional date types at item level.
Flag [1...1] String [9/9] - M Additional item level date type record code = ITEMDATES. *90
DateTypeHandlingCode [0...1] String [0/*] DateType O Date type qualifier code. *91
Date [0...1] String [0/*] - O Unique text identifier.
Time [0...1] String [0/*] - O Customer ID number.
MaterialPO_ItemPartnerAddressGroup [0...*] - - - O Ship-to partner ID and address data at item level, if present in message.
Flag [1...1] String [11/11] - M Item partner records code = ITEMPARTNER. *92
PartnerTypeHandlingCode [0...1] String [0/*] PartnerTypeHandlingCode O Partner type qualifier code. *93
PartnerNumber [0...1] String [0/*] - O Customer ID. *94
AlternatePartnerNumber [0...1] String [0/*] - O Alternate partner ID.
PartnerName1 [0...1] String [0/*] - O Name. *95
PartnerName2 [0...1] String [0/*] - O Name (line 2).
PartnerStreetAddress1 [0...1] String [0/*] - O Main street address. *96
PartnerStreetAddress2 [0...1] String [0/*] - O Street address (line 2).
PartnerCity [0...1] String [0/*] - O City. *97
PartnerRegionCode [0...1] String [0/*] - O State, province, or region. *98
PartnerPostalCode [0...1] String [0/*] - O Postal code. *99
PartnerCountry [0...1] String [0/*] CountryCode O 2-character ISO country key. *100
PartnerISOLanguageKey [0...1] String [0/*] - O ISO language key. *101
PartnerContactTelephone [0...1] String [0/*] - O Contact telephone number. *102
PartnerContactFax [0...1] String [0/*] - O Contact fax number. *103
MaterialPO_ItemDeliveryTerms [0...*] - - - O Delivery terms for order at item level.
Flag [1...1] String [12/12] - M Delivery terms type record code = ITEMDELIVERY. *104
DeliveryTypeHandlingCode [0...1] String [0/*] DeliveryTypes O Delivery type qualifier code. *105
DeliveryTermsCode [0...1] String [0/*] - O Delivery terms code. *106
DeliveryTermsDescription [0...1] String [0/*] - O Delivery terms code description. *107
DeliveryPriority [0...1] String [0/*] - O Customer ID number.
MaterialPO_ItemAdditionalDataGroup [0...*] - - - O Payment terms for order.
Flag [1...1] String [14/14] - M Additional item level data type record code = ITEMADDITIONAL. *108
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.
MaterialPO_ItemFreeTextGroup [0...*] - - - O -
Flag [1...1] String [8/8] - M Free text type header record code = ITEMTEXT. *109
FreeTextHandlingCode [0...1] String [0/*] - O Free text record qualifier code. *110
FreeTextObject [0...1] String [0/*] - O Free text business document object.
FreeTextLanguageKey [0...1] String [0/*] - O Language key for text. *111
FreeTextContents [0...1] String [0/*] - O Free text contents. *112
FreeTextFormat [0...1] String [0/*] - O Format for text block: continuous text flow (*) or line break (/). *113