Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Status

Status
colourRed
titlePRODUCTION

This project is running in production.

Introduction

A customer panel is currently was active in developing the BTO order process and as a first deliverable we’ve work worked on the BTO ordering. Other modules like material creation and order validation are currently worked on.can follow at a later stage.
The Build to Order order definition is published as draft on this page. You can contribute to the BTO (build to order) order definition by adding comments to the field definitions at the bottom of the page.

An overview of the process is below.

Image Removed

Status

 

An overview of the process is below.

Image Added StatuscolourBluetitleFINISHEDThis special interest group is finished and the built-to-order module is ready for implementation.


BTO in PIP3A4 Purchase Order Request

We’ve identified header and line level fields required for BTO ordering. We’ve added a BTO element on header level and BTOLine to the line level.
We decided to incorporate the BTO fields into the existing order schema and thus not design a complete new schema.
This because the BTO fields are an addition to the current order. Like the current ProductLineItem element is still valid for ordering bundles and only requires some additional fields.

The BTO order definition is published as draft here where you can contribute to the definition by adding comments to this page on the field definitionshere and is currently in production.

An example XML is available below.

Status
colourYellow
titleDraft
BTO Order element on header level

Parent

Field name

Description

Type

Cardinality

XML element / attribute

XML properties

/







/

Order


Element

1

Pip3A4PurchaseOrderRequest

Root element

Order

Order header


Element

1

PurchaseOrder 

Element

Order / Order header

BTO


Element

1

BTOOrder

Element

Order / Order header / BTO / Shipment

Shipment Type

Shipment to enduser by Reseller, Distributor or Manufacturer

Enum

1

ShipBy/GlobalPartnerRoleClassificationCode

Enumeration (Reseller, Distributor, Manufacturer)

Order / Order header / BTO

End User


Element

1

EndUser

Element

Order / Order header / BTO / End User

End user business name

Company name of the end user

String

1

PartnerDescription/BusinessDescription/businessName/FreeFormText

Attribute: string

Order / Order header / BTO / End User

End user name

Name of the end user

String

1

PartnerDescription/ContactInformation/contactName/FreeFormText

Attribute: string

Order / Order header / BTO / End User

End user phone

Phone of the end user

String

1

PartnerDescription/ContactInformation/CommunicationsNumber

Attribute: string

Order / Order header / BTO / End User

End user fax

Fax of the end user

String

0..1

PartnerDescription/ContactInformation/facsimileNumber

Attribute: string

Order / Order header / BTO / End User

End user email

Email of the end user

Email

1

PartnerDescription/ContactInformation/EmailAddress

Attribute: string

Order / Order header

End user reference

BID / Bundle / order reference / etc.

String

1

PurchaseOrder/DocumentReference/ProprietaryDocumentIdentifier

Attribute: string

Order / Order header

Qualifier

Fixed: EndUser



PurchaseOrder/DocumentReference/GlobalDocumentReferenceTypeCode

Enumeration








Status
colourYellow
titledraft
BTO Line element on line level

...

Code Block
languagexml
<?xml version="1.0" encoding="UTF-8"?>
<!-- Sample for an BTO/CTO order-->
<tns:Pip3A4PurchaseOrderRequest xmlns:ns="http://www.onetrail.net" xmlns:ns3="http://pip3a4po.ws.service.onetrail.com/" xmlns:tns="http://www.onetrail.net" xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
	<tns:fromRole>
		<tns:PartnerRoleDescription>
			<tns:ContactInformation>
				<tns:contactName>
					<tns:FreeFormText lang="EE">Purchase Department</tns:FreeFormText>
				</tns:contactName>
				<tns:EmailAddress>Purchase@onetrail.com</tns:EmailAddress>
				<tns:facsimileNumber>
					<tns:CommunicationsNumber>+31 30 697 3289</tns:CommunicationsNumber>
				</tns:facsimileNumber>
				<tns:telephoneNumber>
					<tns:CommunicationsNumber>+31 30 697 3288</tns:CommunicationsNumber>
				</tns:telephoneNumber>
			</tns:ContactInformation>
			<tns:GlobalPartnerRoleClassificationCode>Reseller</tns:GlobalPartnerRoleClassificationCode>
			<tns:PartnerDescription>
				<tns:BusinessDescription>
					<tns:GlobalBusinessIdentifier>8714253023366</tns:GlobalBusinessIdentifier>
					<tns:GlobalSupplyChainCode>Information Technology</tns:GlobalSupplyChainCode>
					<tns:businessName>
						<tns:FreeFormText lang="EN">Onetrail B.V. - Test Buyer</tns:FreeFormText>
					</tns:businessName>
				</tns:BusinessDescription>
				<tns:GlobalPartnerClassificationCode>Buyer</tns:GlobalPartnerClassificationCode>
			</tns:PartnerDescription>
		</tns:PartnerRoleDescription>
	</tns:fromRole>
	<tns:GlobalDocumentFunctionCode>Request</tns:GlobalDocumentFunctionCode>
	<tns:PurchaseOrder>
		<tns:AccountDescription>
			<tns:accountName>
				<tns:FreeFormText lang="EE">Onetrail B.V. - Test Buyer</tns:FreeFormText>
			</tns:accountName>
			<tns:AccountNumber>8714253023366</tns:AccountNumber>
			<tns:billTo>
				<tns:PartnerRoleDescription>
					<tns:ContactInformation>
						<tns:contactName>
							<tns:FreeFormText lang="EN">Finance Department</tns:FreeFormText>
						</tns:contactName>
						<tns:EmailAddress>Finance@onetrail.com</tns:EmailAddress>
						<tns:facsimileNumber>
							<tns:CommunicationsNumber>+31 30 697 3289</tns:CommunicationsNumber>
						</tns:facsimileNumber>
						<tns:telephoneNumber>
							<tns:CommunicationsNumber>+31 30 697 3288</tns:CommunicationsNumber>
						</tns:telephoneNumber>
					</tns:ContactInformation>
					<tns:GlobalPartnerRoleClassificationCode>Reseller</tns:GlobalPartnerRoleClassificationCode>
					<tns:PartnerDescription>
						<tns:BusinessDescription>
							<tns:GlobalBusinessIdentifier>8714253023397</tns:GlobalBusinessIdentifier>
							<tns:businessName>
								<tns:FreeFormText lang="EE">Onetrail B.V. - Test Buyer</tns:FreeFormText>
							</tns:businessName>
						</tns:BusinessDescription>
						<tns:GlobalPartnerClassificationCode>Buyer</tns:GlobalPartnerClassificationCode>
					</tns:PartnerDescription>
				</tns:PartnerRoleDescription>
			</tns:billTo>
		</tns:AccountDescription>
		<tns:remarks>
			<tns:remark context="Buyer Remark">Header Text</tns:remark>
		</tns:remarks>
		<!--This is the end user reference-->
		<tns:DocumentReference>
			<tns:DateTimeStamp>20150214T171451</tns:DateTimeStamp>
			<tns:GlobalDocumentReferenceTypeCode>Work Order</tns:GlobalDocumentReferenceTypeCode>
			<tns:ProprietaryDocumentIdentifier>End user ref 285481</tns:ProprietaryDocumentIdentifier>
		</tns:DocumentReference>
		<!--Special order type for BTO-->
		<tns:GlobalPurchaseOrderTypeCode>BTO Order</tns:GlobalPurchaseOrderTypeCode>
		<tns:OrderShippingInformation>
			<tns:GlobalShippingServiceLevelCode>AB - Pre Noon</tns:GlobalShippingServiceLevelCode>
			<tns:GlobalSpecialFulfillmentRequestCode>Partial</tns:GlobalSpecialFulfillmentRequestCode>
		</tns:OrderShippingInformation>
		<tns:ProductLineItem>
			<tns:remarks>
				<tns:remark lang="NL">Lijn Tekst</tns:remark>
			</tns:remarks>
			<!--This is the special bid Id on line level-->
			<tns:DocumentLineReference>
				<tns:DateTimeStamp>20150214T171451</tns:DateTimeStamp>
				<tns:GlobalDocumentReferenceTypeCode>Contract</tns:GlobalDocumentReferenceTypeCode>
				<tns:ProprietaryDocumentIdentifier>BID:1231231</tns:ProprietaryDocumentIdentifier>
			</tns:DocumentLineReference>
			<tns:GlobalProductUnitOfMeasureCode>EACH</tns:GlobalProductUnitOfMeasureCode>
			<tns:isDropShip>
				<tns:AffirmationIndicator>Yes</tns:AffirmationIndicator>
			</tns:isDropShip>
			<tns:LineNumber>1</tns:LineNumber>
			<!--The quantity of bundles to order-->
			<tns:OrderQuantity>
				<tns:requestedQuantity>
					<tns:ProductQuantity>3</tns:ProductQuantity>
				</tns:requestedQuantity>
			</tns:OrderQuantity>
			<!--Put the bundle ID in the Manufacturer, other ClassifcationCode (i.e Seller, EAN, etc. are not supported for BTO lines) -->
			<tns:ProductIdentification>
				<tns:PartnerProductIdentification>
					<tns:GlobalPartnerClassificationCode>Manufacturer</tns:GlobalPartnerClassificationCode>
					<tns:ProprietaryProductIdentifier>12312312</tns:ProprietaryProductIdentifier>
				</tns:PartnerProductIdentification>
			</tns:ProductIdentification>
			<tns:requestedEvent>
				<tns:TransportationEvent>
					<tns:DateStamp>20150214T120000</tns:DateStamp>
					<tns:GlobalTransportEventCode>Ship</tns:GlobalTransportEventCode>
				</tns:TransportationEvent>
			</tns:requestedEvent>
			<!-- The price for 1 bundle / config-->
			<tns:requestedUnitPrice>
				<tns:FinancialAmount>
					<tns:GlobalCurrencyCode>EUR</tns:GlobalCurrencyCode>
					<tns:MonetaryAmount>995.56</tns:MonetaryAmount>
				</tns:FinancialAmount>
			</tns:requestedUnitPrice>
			<tns:totalLineItemAmount>
				<tns:FinancialAmount>
					<tns:GlobalCurrencyCode>EUR</tns:GlobalCurrencyCode>
					<tns:MonetaryAmount>2986.68</tns:MonetaryAmount>
				</tns:FinancialAmount>
			</tns:totalLineItemAmount>
			<!--Additional fields for BTO on line level (bundle)-->
			<tns:BTOLine>
				<tns:BidVersion>001</tns:BidVersion>
				<tns:ValidateBid>Yes</tns:ValidateBid>
				<tns:SuppliedBy>
					<tns:PartnerRoleDescription>
						<tns:GlobalPartnerRoleClassificationCode>Manufacturer</tns:GlobalPartnerRoleClassificationCode>
						<tns:PartnerDescription>
							<tns:BusinessDescription>
								<tns:GlobalBusinessIdentifier>8714253023236</tns:GlobalBusinessIdentifier>
								<tns:GlobalSupplyChainCode>Information Technology</tns:GlobalSupplyChainCode>
								<tns:businessName>
									<tns:FreeFormText lang="EN">Hewlett Packard</tns:FreeFormText>
								</tns:businessName>
							</tns:BusinessDescription>
						</tns:PartnerDescription>
					</tns:PartnerRoleDescription>
				</tns:SuppliedBy>
				<!--The bundle line items (the indiviual products making the bundle)-->
				<tns:BundleLineItem>
					<tns:SequenceNumber>1</tns:SequenceNumber>
					<!--The number of items in 1 bundle / config -->
					<tns:OrderQuantity>
						<tns:requestedQuantity>
							<tns:ProductQuantity>3</tns:ProductQuantity>
						</tns:requestedQuantity>
					</tns:OrderQuantity>
					<!--Product ID's-->
					<tns:ProductIdentification>
						<tns:GlobalProductIdentifier>MCC2HUK</tns:GlobalProductIdentifier>
						<tns:PartnerProductIdentification>
							<tns:GlobalPartnerClassificationCode>Manufacturer</tns:GlobalPartnerClassificationCode>
							<tns:ProprietaryProductIdentifier>MCC2HUK</tns:ProprietaryProductIdentifier>
						</tns:PartnerProductIdentification>
						<tns:PartnerProductIdentification>
							<tns:GlobalPartnerClassificationCode>Seller</tns:GlobalPartnerClassificationCode>
							<tns:ProprietaryProductIdentifier>SellerPN1</tns:ProprietaryProductIdentifier>
						</tns:PartnerProductIdentification>
						<tns:PartnerProductIdentification>
							<tns:GlobalPartnerClassificationCode>Buyer</tns:GlobalPartnerClassificationCode>
							<tns:ProprietaryProductIdentifier>BuyerPN1</tns:ProprietaryProductIdentifier>
						</tns:PartnerProductIdentification>
						<tns:PartnerProductIdentification>
							<tns:GlobalPartnerClassificationCode>EAN</tns:GlobalPartnerClassificationCode>
							<tns:ProprietaryProductIdentifier>8712345678921</tns:ProprietaryProductIdentifier>
						</tns:PartnerProductIdentification>
						<!--Localisation code of bundle-items-->
						<tns:revisionIdentifier>ABD</tns:revisionIdentifier>
					</tns:ProductIdentification>
					<!-- Price for an individual item-->
					<tns:requestedUnitPrice>
						<tns:FinancialAmount>
							<tns:GlobalCurrencyCode>EUR</tns:GlobalCurrencyCode>
							<tns:MonetaryAmount>295.56</tns:MonetaryAmount>
						</tns:FinancialAmount>
					</tns:requestedUnitPrice>
				</tns:BundleLineItem>
				<tns:BundleLineItem>
					<tns:SequenceNumber>2</tns:SequenceNumber>
					<tns:OrderQuantity>
						<tns:requestedQuantity>
							<tns:ProductQuantity>1</tns:ProductQuantity>
						</tns:requestedQuantity>
					</tns:OrderQuantity>
					<tns:ProductIdentification>
						<tns:GlobalProductIdentifier>MCC2HUJ</tns:GlobalProductIdentifier>
						<tns:PartnerProductIdentification>
							<tns:GlobalPartnerClassificationCode>Manufacturer</tns:GlobalPartnerClassificationCode>
							<tns:ProprietaryProductIdentifier>MCC2HUJ</tns:ProprietaryProductIdentifier>
						</tns:PartnerProductIdentification>
						<tns:PartnerProductIdentification>
							<tns:GlobalPartnerClassificationCode>Seller</tns:GlobalPartnerClassificationCode>
							<tns:ProprietaryProductIdentifier>SellerPN2</tns:ProprietaryProductIdentifier>
						</tns:PartnerProductIdentification>
						<tns:PartnerProductIdentification>
							<tns:GlobalPartnerClassificationCode>Buyer</tns:GlobalPartnerClassificationCode>
							<tns:ProprietaryProductIdentifier>BuyerPN2</tns:ProprietaryProductIdentifier>
						</tns:PartnerProductIdentification>
						<tns:PartnerProductIdentification>
							<tns:GlobalPartnerClassificationCode>EAN</tns:GlobalPartnerClassificationCode>
							<tns:ProprietaryProductIdentifier>8712345678922</tns:ProprietaryProductIdentifier>
						</tns:PartnerProductIdentification>
						<tns:revisionIdentifier>ABD</tns:revisionIdentifier>
					</tns:ProductIdentification>
					<tns:requestedUnitPrice>
						<tns:FinancialAmount>
							<tns:GlobalCurrencyCode>EUR</tns:GlobalCurrencyCode>
							<tns:MonetaryAmount>108.88</tns:MonetaryAmount>
						</tns:FinancialAmount>
					</tns:requestedUnitPrice>
				</tns:BundleLineItem>
			</tns:BTOLine>
		</tns:ProductLineItem>
		<tns:purchaseOrderIdentifier>
			<tns:ProprietaryDocumentIdentifier>BTO Order 1</tns:ProprietaryDocumentIdentifier>
		</tns:purchaseOrderIdentifier>
		<tns:requestedEvent>
			<tns:TransportationEvent>
				<tns:DateStamp>20150214T120000</tns:DateStamp>
				<tns:GlobalTransportEventCode>Ship</tns:GlobalTransportEventCode>
			</tns:TransportationEvent>
		</tns:requestedEvent>
		<!-- ShipTo address for the BTO-->
		<tns:shipTo>
			<tns:PartnerDescription>
				<tns:BusinessDescription>
					<tns:businessName>
						<tns:FreeFormText lang="EE">Onetrail Test Buyer</tns:FreeFormText>
					</tns:businessName>
				</tns:BusinessDescription>
				<tns:GlobalPartnerClassificationCode>Buyer</tns:GlobalPartnerClassificationCode>
				<tns:ContactInformation>
					<tns:contactName>
						<tns:FreeFormText lang="EE">Purchase Department</tns:FreeFormText>
					</tns:contactName>
					<tns:EmailAddress>support@onetrail.com</tns:EmailAddress>
					<tns:facsimileNumber>
						<tns:CommunicationsNumber>+31 30 697 3289</tns:CommunicationsNumber>
					</tns:facsimileNumber>
					<tns:telephoneNumber>
						<tns:CommunicationsNumber>+31 30 697 3288</tns:CommunicationsNumber>
					</tns:telephoneNumber>
				</tns:ContactInformation>
			</tns:PartnerDescription>
			<tns:PhysicalAddress>
				<tns:addressLine1>
					<tns:FreeFormText lang="EE">Huis ter Heideweg 46</tns:FreeFormText>
				</tns:addressLine1>
				<tns:addressLine2>
					<tns:FreeFormText lang="EE">First Floor</tns:FreeFormText>
				</tns:addressLine2>
				<tns:cityName>
					<tns:FreeFormText lang="EE">Zeist</tns:FreeFormText>
				</tns:cityName>
				<tns:GlobalCountryCode>NL</tns:GlobalCountryCode>
				<tns:NationalPostalCode>3705 LZ</tns:NationalPostalCode>
			</tns:PhysicalAddress>
		</tns:shipTo>
		<tns:totalAmount>
			<tns:FinancialAmount>
				<tns:GlobalCurrencyCode>EUR</tns:GlobalCurrencyCode>
				<tns:MonetaryAmount>2986.68</tns:MonetaryAmount>
			</tns:FinancialAmount>
		</tns:totalAmount>
		<!-- the BTO header fields-->
		<tns:BTOOrder>
			<!--The EndUser details-->
			<tns:EndUser>
				<tns:PartnerDescription>
					<tns:BusinessDescription>
						<tns:businessName>
							<tns:FreeFormText>End User B.V.</tns:FreeFormText>
						</tns:businessName>
					</tns:BusinessDescription>
					<tns:GlobalPartnerClassificationCode>EndUser</tns:GlobalPartnerClassificationCode>
					<tns:ContactInformation>
						<tns:contactName>
							<tns:FreeFormText>John Doe</tns:FreeFormText>
						</tns:contactName>
						<tns:EmailAddress>john.doe@enduser.com</tns:EmailAddress>
						<tns:telephoneNumber>
							<tns:CommunicationsNumber>012-3456789</tns:CommunicationsNumber>
						</tns:telephoneNumber>
					</tns:ContactInformation>
				</tns:PartnerDescription>
				<tns:PhysicalAddress>
					<tns:addressLine1>
						<tns:FreeFormText>EndUser street 22</tns:FreeFormText>
					</tns:addressLine1>
					<tns:cityName>
						<tns:FreeFormText>SampleCity</tns:FreeFormText>
					</tns:cityName>
					<tns:GlobalCountryCode>NL</tns:GlobalCountryCode>
					<tns:NationalPostalCode>1234 AB</tns:NationalPostalCode>
				</tns:PhysicalAddress>
			</tns:EndUser>
			<!-- who is going to fullfill the order to the end user-->
			<tns:shipBy>
				<tns:GlobalPartnerRoleClassificationCode>Reseller</tns:GlobalPartnerRoleClassificationCode>
			</tns:shipBy>
		</tns:BTOOrder>
	</tns:PurchaseOrder>
	<tns:thisDocumentGenerationDateTime>
		<tns:DateTimeStamp>20150214T171451</tns:DateTimeStamp>
	</tns:thisDocumentGenerationDateTime>
	<tns:thisDocumentIdentifier>
		<tns:ProprietaryDocumentIdentifier>25658937T874q376</tns:ProprietaryDocumentIdentifier>
	</tns:thisDocumentIdentifier>
	<tns:toRole>
		<tns:PartnerRoleDescription>
			<tns:ContactInformation>
				<tns:contactName>
					<tns:FreeFormText lang="EN">Sales Department </tns:FreeFormText>
				</tns:contactName>
				<tns:EmailAddress>sales@onetrail.com</tns:EmailAddress>
				<tns:facsimileNumber>
					<tns:CommunicationsNumber>+31 30 697 3289</tns:CommunicationsNumber>
				</tns:facsimileNumber>
				<tns:telephoneNumber>
					<tns:CommunicationsNumber>+31 30 697 3288</tns:CommunicationsNumber>
				</tns:telephoneNumber>
			</tns:ContactInformation>
			<tns:GlobalPartnerRoleClassificationCode>Distributor</tns:GlobalPartnerRoleClassificationCode>
			<tns:PartnerDescription>
				<tns:BusinessDescription>
					<tns:GlobalBusinessIdentifier>8714253023236</tns:GlobalBusinessIdentifier>
					<tns:GlobalSupplyChainCode>Information Technology</tns:GlobalSupplyChainCode>
					<tns:businessName>
						<tns:FreeFormText lang="EN">Onetrail B.V. - Test Seller</tns:FreeFormText>
					</tns:businessName>
				</tns:BusinessDescription>
				<tns:GlobalPartnerClassificationCode>Seller</tns:GlobalPartnerClassificationCode>
			</tns:PartnerDescription>
		</tns:PartnerRoleDescription>
	</tns:toRole>
</tns:Pip3A4PurchaseOrderRequest>

(blue star) Download sample XML

View filenameDownload: OTOrdReq.EUR-BTO.xml