MyMPS
EDI-Purchase Order
1 General
1.1 System
MyMPS is a SCHENKER application developed to support handling of marineparts. It is built on modern Internet technology, and can easily be accessed from anywhere in the world without any installation.
The system is a multi-layer architecture, developed in .Net and running on Windows and MS SQL
1.2 Description
This document explains how MyMPS can get purchase order automatically from another system. This is the specification. This document explains the Purchase Order that is sent from the External system to MyMPS.
1.3 Architecture
An exemplified overview of the set-up, this based on MyMPS standard format which is included in the document. This document describes Purchase Order.
2 EDI integration – Purchase Order
MyMPS standard is to receive xml-files via ftp. In other formats we need to map the file into MyMPS.
2.1 File content
Schenker Fields | Data Type | Description |
HEADER | ||
Reference-related: | ||
FromPartner | V 50 | Client ID, provided from MyMPS |
ToPartner | Fixed | "MyMPS" |
DateTime | YYYY-MM-DDThh:mm:ss | Date for messages |
ReferensNumber | Integer | Unique reference number for message |
DocumentName | ”PURCHASEORDER” | ”PURCHASEORDER” |
Operation Code | New=9 / Update=5 / Cancelled=1 / Automatic=13, only possible when an order has status pending or new | |
Reference | V 50 | Buyer's PO Reference Number |
Subject | V 50 | PO Subject |
Date | D | Date order is issued |
RequisitionNO | V15 | Requisition number |
Vessel-related: | ||
Vessel Name | V 50 | Vessel Name |
IMO Number | V 12 | Vessel IMO Number |
Vessel Code | V 50 | Vessel Code |
Vessel Email | V 100 | Vessel e-mail address |
Port& Dates: | ||
Port | V 200 | PortBuyer |
Country | Country | |
Vessel ETA | D | Estimated time of arrival |
Vessel ETD | D | Estimated time of departure |
Delivery Date and time | D | Delivery date to Schenker |
Promised Date(supplier) | D | Supplier's promised |
Delivery-related: | ||
Delivery to | V 512 | Delivery address |
Delivery terms | V 200 | FOB, EXW etc |
Freight Forwarder | V 512 | Chosen Freightforwarder |
Transport Mode | V 20 | Maritime, Air, Rail etc |
Packaging Instructions | V 2048 | Packing instructions from |
Buyer: | ||
Company | V 80 | Buyer company name |
Contact | V 80 | Buyer company contact |
Telephone | V 50 | Buyer contact telephone |
V 100 | Buyer contact e-mail | |
Supplier: | ||
Company | V 80 | Supplier Company name |
Contact | V 80 | Supplier company contact |
Telephone | V 50 | Supplier contact telephone |
V 100 | Supplier contact e-mail | |
Terms: | ||
Tax Status | V 1 | Tax status |
General Terms and Conditions | V 2048 | General Terms and conditions |
Currency | V 12 | Order Currency |
Line Item Count | N4 | Number of line items on order |
Comments: | ||
Buyer /Supplier Comments | V 2048 | Comments on order |
Cost/Price-related Totals: | ||
Subtotal | N 18,4 | Order subtotal |
Total(Final) | N 18,4 | Total order (including freight or other costs) |
LINE ITEMS | ||
Line Item Details: | ||
Item No | N 5 | Sequential line item number |
Item Quantity | N 11,4 | Quantity |
Unit | V 12 | Unit of measure |
Description | V 512 | Product description |
Id Type | V 12 | Part Number Type (ISSA,IMPA etc) |
Id Code | V 512 | Part Number |
Unit Price | N 18,4 | Unit price, discount included |
Discount | In percent | |
CustomsTarifNumber | Customs tariff number |
2.2 File format
Document will be encoded using UTF-8.
2.2.1 XMLStructure
<LxirEnvelope>
<Header ... />
<Body>
<PurchaseOrder>
<Order>
<OrderInfo> ... </OrderInfo>
<Vessel> ... </Vessel>
<Port> ... </Port>
<Delivery> ... </Delivery>
<Buyer> ... </Buyer>
<Supplier> ... </Supplier>
<LineItems>
<LineItem> ... </LineItem>
<LineItem> ... </LineItem>
<LineItem> ... </LineItem>
</LineItems>
</Order>
<Order>
<OrderInfo> ... </OrderInfo>
<Vessel> ... </Vessel>
<Port> ... </Port>
<Delivery> ... </Delivery>
<Buyer> ... </Buyer>
<Supplier> ... </Supplier>
<LineItems>
<LineItem> ... </LineItem>
<LineItem> ... </LineItem>
<LineItem> ... </LineItem>
</LineItems>
</Order>
</PurchaseOrder>
</Body>
</LxirEnvelope>
LxirEnvelope
Element | Man | Explanation | Type |
Header | 1 | Header | |
Body | 1 | Body |
Body
Element | Man | Explanation | Type |
PurchaseOrder | 1 | PurchaseOrder |
PurchaseOrder
Element | Man | Explanation | Type |
Order | 1..9999 | PurchaseOrder |
Order
Element | Man | Explanation | Type |
OrderInfo | 1 | Basic orer info | OrderInfo |
Vessel | 1 | Vessel | |
Port | 0..1 | Port | |
Delivery | 1 | Delivery | |
Buyer | 1 | Contact | |
Supplier | 0..1 | Contact | |
LineItems | 0..1 | LineItems |
LineItems
Element | Man | Explanation | Type |
LineItem | 0..9999 | LineItem |
Header
Attribute | Code | Man | Explanation | Type |
FromPartner | Y | Provided from MyMPS team | string(50) | |
FromPartnerUser | Y | string(50) | ||
ToPartner | MYMPS | Y | Fixed | |
ToPartnerUser | Y | string(50) | ||
DateTime | Y | Time when message was created | dateTime | |
DocumentVersion | 1.0 | Y | Version of this fileformat | string(10) |
DocumentNumber | Y | Unique reference number for message. first message no 1 then 2,3 etc | Unsigned integer, max: 2147483647 | |
DocumentName | PURCHASEORDER | Y | Message name ”PURCHASEORDER” | Fixed |
OrderInfo
Element | Code | Man | Explanation | Type |
OperationCode | 9=New | Y | Updates on existing order, only possible with the MyMPS status Pending and New. | Integer: 1, 5 or 9 |
RefNo | Y | Buyer's PO Reference Number | string(50) | |
Subject | N | PO Subject | String(50) | |
OrderDate | Y | Date order is issued | dateTime | |
RequisitionNumber | N | RequisitionNumber | string(15) | |
TaxStatus | N | Exempt - Specifically exempt from taxation according to tax codes, typically because of the party involved NotTaxable - Not subject to tax according to tax codes, typically because of the items involved Taxable - Subject to taxation according to tax codes | String(50) | |
GeneralTerms | N | General Terms and conditions | string(2048) | |
Currency | Y | Order Currency | ISO 4217 string(3) | |
LineCount | Y | Number of line items on order | Integer 1-9999 | |
Comments | N | Comments on order | String(2048) | |
Subtotal | Y | Order subtotal | Decimal(18.4) | |
Total | Y | Total order (including freight or other costs) | Decimal(18.4) | |
CountryOfOrigin | N | Country of origin | ISO 3166-1 alpha-2 | |
CustomsTarifNumber | N | Customs tariff number | String(512) | |
Priority | N | Priority | String(250) | |
Description | N | Description | String(500) |
Vessel
Attribute | Code | Man | Explanation | Type |
Name | Y | Vessel name | string(50) | |
IMO | N | Vessel IMO number | string(12) | |
Code | N | Vessel code | String(50) | |
N | Vessel email address | string(100) |
Delivery
Attribute | Code | Man | Explanation | Type |
DeliveryDate | N | Delivery date | dateTime | |
SupplierPromisedDate | N | Supplier's promised | dateTime | |
DeliverTo | N | Delivery address | string(512) | |
DeliveryTerms | Y | FOB, EXW etc | string(200) | |
FreightForwarder | N | Chosen Freightforwarder | string(512) | |
TransportMode | N | Maritime, Air, Rail etc | string(20) | |
PackInstructions | N | Packing instructions from Buyer or Suppliers | string(2048) |
Port
Attribute | Code | Man | Explanation | Type |
Port | Y | Port name | string(200) | |
Country | N | Country | ISO 3166-1 alpha-2 | |
ETA | N | Estimated time of arrival | dateTime | |
ETD | N | Estimated time of departure | dateTime |
Contact
Attribute | Code | Man | Explanation | Type |
Name | Y | Company name | string(50) | |
Contact | Y | Company contact | string(50) | |
Tel | Y | Contact phone | String(50) | |
Y | Contact email address | string(100) |
LineItem
Attribute | Code | Man | Explanation | Type |
No | Y | Sequential line item number | Unsigned integer | |
Qty | Y | Quantity | Decimal(11,4) | |
UoM | N | Unit of measure | String(12) | |
Desc | N | Product description | String(512) | |
PartType | N | Part number type (ISSA, IMPA, etc.) | String(12) | |
PartNo | Y | Part number | String(512) | |
Price | Y | Unit price, discount included | Decimal(18,4) | |
Discount | N | Discount in percent | Decimal(9,3) | |
CustomsTarifNumber | N | Customs tariff number | String(512) |
2.3 XML PurchaseOrder
<?xml version="1.0" encoding="utf-8"?>
<LxirEnvelope>
<Header FromPartner="abc" FromPartnerUser="abc user" ToPartner="MYMPS" ToPartnerUser="mps user"
DateTime="2012-03-30T12:30:00" DocumentVersion="1.0" DocumentNumber="123" DocumentName="PURCHASEORDER" />
<Body>
<PurchaseOrder>
<Order>
<OrderInfo>
<OperationCode>1</OperationCode>
<RefNo>254</RefNo>
<Subject>Subject1</Subject>
<OrderDate>2012-03-30T12:30:00</OrderDate>
<RequisitionNumber>321456</RequisitionNumber>
<TaxStatus>Taxable</TaxStatus>
<GeneralTerms>GeneralTerms text</GeneralTerms>
<Currency>USD</Currency>
<LineCount>3</LineCount>
<Comments>Comments</Comments>
<Subtotal>12.50</Subtotal>
<Total>12.50</Total>
<CountryOfOrigin>SE</CountryOfOrigin>
<CustomsTarifNumber>54</CustomsTarifNumber>
<Priority>Abc123</Priority>
<Description>Abc123</Description>
</OrderInfo>
<Vessel>
<Name> MSC EXTEND</Name>
<IMO>321456</IMO>
<Code>XT10</Code>
<Email>msc@extend.se</Email>
</Vessel>
<Port>
<Port>CHP</Port>
<Country>DK</Country>
<ETA>2012-03-30T08:30:00</ETA>
<ETD>2012-03-30T17:50:00</ETD>
</Port>
<Delivery>
<DeliveryDate>2012-03-30T12:30:00</DeliveryDate>
<SupplierPromisedDate>2012-03-30T12:30:00</SupplierPromisedDate>
<DeliverTo> Schenker Marine Parts Service C/0 P Gate 17, Niendorfer Str. 172, TN90893 Hamburg GERMANY Phone: +49 40 5079 049-310 Fax: +49 40 5079 049-319 E-Mail: mps.hamburg@dbschenker.com</DeliverTo>
<DeliveryTerms> BANK TRANSFER CHARGES TO BE SHARED </DeliveryTerms>
<FreightForwarder>FreightForwarder1</FreightForwarder>
<TransportMode>TransportMode1</TransportMode>
<PackInstructions>PackInstructions text</PackInstructions>
</Delivery>
<Buyer>
<Name>Extend Commerce Sverige AB</Name>
<Contact>Martin Fransson</Contact>
<Tel>+46 380 51 4410</Tel>
<Email> info@extend.se </Email>
</Buyer>
<Supplier>
<Name>Marine Water Technology</Name>
<Contact>Sven svensson</Contact>
<Tel>+45 648 47 5199</Tel>
<Email>sven.svensson@mwt.dk</Email>
</Supplier>
<LineItems>
<LineItem>
<No>0</No>
<Qty>1</Qty>
<UoM>PCE</ UoM >
<Desc>Description 1</Desc>
<PartType>ISSA</PartType>
<PartNo>26800014</PartNo>
<Price>650</Price>
<Discount>0</Discount>
</LineItem>
<LineItem>
<No>1</No>
<Qty>5.90</Qty>
<UoM>Tonne</UoM>
<Desc>Desc2</Desc>
<PartType>ISSA</PartType>
<PartNo>15200156</PartNo>
<Price>245.60</Price>
<Discount>5.63</Discount>
</LineItem>
<LineItem>
<No>2</No>
<Qty>8000</Qty>
<UoM>PCE</UoM>
<Desc>Desc3</Desc>
<PartType>PartType3</PartType>
<PartNo>IMPA</PartNo>
<Price>99000</Price>
<Discount>0</Discount>
</LineItem>
</LineItems>
</Order>
<Order>
<OrderInfo>
<OperationCode>1</OperationCode>
<RefNo>254</RefNo>
<Subject>Subject1</Subject>
<OrderDate>2012-03-30T12:30:00</OrderDate>
<RequisitionNumber>321456</RequisitionNumber>
<TaxStatus>Taxable</TaxStatus>
<GeneralTerms>GeneralTerms text</GeneralTerms>
<Currency>USD</Currency>
<LineCount>3</LineCount>
<Comments>Comments</Comments>
<Subtotal>12.50</Subtotal>
<Total>12.50</Total>
<CountryOfOrigin>SE</CountryOfOrigin>
<CustomsTarifNumber>54</CustomsTarifNumber>
</OrderInfo>
<Vessel>
<Name> MSC EXTEND</Name>
<IMO>321456</IMO>
<Code>XT10</Code>
<Email>msc@extend.se</Email>
</Vessel>
<Port>
<Port>CHP</Port>
<Country>DK</Country>
<ETA>2012-03-30T08:30:00</ETA>
<ETD>2012-03-30T17:50:00</ETD>
</Port>
<Delivery>
<DeliveryDate>2012-03-30T12:30:00</DeliveryDate>
<SupplierPromisedDate>2012-03-30T12:30:00</SupplierPromisedDate>
<DeliverTo> Schenker Marine Parts Service C/0 P Gate 17, Niendorfer Str. 172, TN90893 Hamburg GERMANY Phone: +49 40 5079 049-310 Fax: +49 40 5079 049-319 E-Mail: mps.hamburg@dbschenker.com</DeliverTo>
<DeliveryTerms> BANK TRANSFER CHARGES TO BE SHARED </DeliveryTerms>
<FreightForwarder>FreightForwarder1</FreightForwarder>
<TransportMode>TransportMode1</TransportMode>
<PackInstructions>PackInstructions text</PackInstructions>
</Delivery>
<Buyer>
<Name>Extend Commerce Sverige AB</Name>
<Contact>Martin Fransson</Contact>
<Tel>+46 380 51 4410</Tel>
<Email> info@extend.se </Email>
</Buyer>
<Supplier>
<Name>Marine Water Technology</Name>
<Contact>Sven svensson</Contact>
<Tel>+45 648 47 5199</Tel>
<Email>sven.svensson@mwt.dk</Email>
</Supplier>
<LineItems>
<LineItem>
<No>0</No>
<Qty>1</Qty>
<UoM>PCE</ UoM >
<Desc>Description 1</Desc>
<PartType>ISSA</PartType>
<PartNo>26800014</PartNo>
<Price>650</Price>
<Discount>0</Discount>
</LineItem>
<LineItem>
<No>1</No>
<Qty>5.90</Qty>
<UoM>Tonne</UoM>
<Desc>Desc2</Desc>
<PartType>ISSA</PartType>
<PartNo>15200156</PartNo>
<Price>245.60</Price>
<Discount>5.63</Discount>
</LineItem>
<LineItem>
<No>2</No>
<Qty>8000</Qty>
<UoM>PCE</UoM>
<Desc>Desc3</Desc>
<PartType>PartType3</PartType>
<PartNo>IMPA</PartNo>
<Price>99000</Price>
<Discount>0</Discount>
</LineItem>
</LineItems>
</Order>
</PurchaseOrder>
</Body>
</LxirEnvelope>
XSD files:
3 Version
3.1 History
Version and date | Author | Comment |
PA1 2011-11-20 | Martin Fransson | First draft without example |
PA2 2011-11-21 | Martin Fransson | With example |
PA3 2011-12-12 | Martin Fransson | Added requisition Number after meeting with Helge |
PA4 2012-04-20 | Niclas Sparr | Added xsd and changed fileformat |
PA5 2012-10-25 | Muhammad Jawad | Added CustomsTarifNumber, CountryOfOrigin in the header and row level |
PA6 2014-10-27 | Muhammad Jawad | Make it possible to add more than one orders |
PA7 2017-01-16 | Muhammad Jawad | Added the priority field in OrderInfo |
PA8 2017-06-14 | Muhammad Jawad | Made the Supplier optional |