Overview
Unimarket can be setup as an eMarketplace on top of an existing ERP system such as WorkDay, Peopesoft, Oracle or TechnologyOne. To do this the Unimarket Community is Configured as Punch-Out (Roundtrip) from the customers ERP system.
Why Setup Unimarket as an eMarketplace Punchout?
Traditionally when customers integrate suppliers into their ERP system they must go through the process of integrating each individual supplier separately to open the firewall and setup the Punchout, Purchase Order and Invoice integration. This results in a large amount of cost and effort each time a new supplier is added and the cost to change suppliers in the future is high and the number of holes in the customer firewall to third party integrations is a security risk.
Integrating to the Unimarket Marketplace provides customers with the ability to access all their suppliers through a single integration. The customer can then work with Unimarket to grow the supplier list and the cost to change between suppliers in the future is low as no further integration is required.
Please click below to download a process overview of the punch-out process.
Unimarket Marketplace Process.pdf
Punchout Setup Request Message
Below is an example of the Punch-out Setup Request message. Full details of all the messages (and examples) can be found below within the cXML User Guide. The messages adhere to the cXML standard and are compatible with any ERP that supports this standard.
Punchout Setup Request
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE cXML SYSTEM "http://xml.cxml.org/schemas/cXML/1.2.020/cXML.dtd"> <cXML payloadID="payloadId" timestamp="2020-01-06T13:50:13+13:00" version="1.2" xml:lang="en"> <Header> <From> <Credential domain="DUNS"> <!-- 1. ENTER VALUE HERE used to get tenant for authentication based on Domain options for DUNS, Network ID or others --> <Identity> 8 digit ID or other based on Domain </Identity> </Credential> </From> <To> <Credential domain="unimarket-code"> <Identity> 8 digit ID or other based on Domain </Identity> </Credential> </To> <Sender> <Credential domain="unimarket-user"> <!-- 2. ENTER VALUE HERE used to get username for authentication --> <Identity>9520969d-e16b-46db-9d03-859874d883f6</Identity> <!-- 3. ENTER VALUE HERE used to get password for authentication --> <SharedSecret>password1</SharedSecret> </Credential> <UserAgent>Initiating System or ERP</UserAgent> </Sender> </Header> <Request deploymentMode="production"> <PunchOutSetupRequest operation="create"> <BuyerCookie>Long UUID created for each session</BuyerCookie> <!-- 4. ENTER VALUE HERE unimarket username (to determine whose cart should be used) --> <Extrinsic name="User">john.doe@school.edu</Extrinsic> <Extrinsic name="email">john.doe@school.edu</Extrinsic> <Extrinsic name="FirstName">John</Extrinsic> <Extrinsic name="LastName">Doe</Extrinsic> <BrowserFormPost> <URL>http://admin.unimarket-demo.com/roundtrip-tester-module/receive-cxml-cart.jsp</URL> </BrowserFormPost> </PunchOutSetupRequest> </Request> </cXML> |
Punchout Cart Return (PunchOutOrderMessage)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE cXML SYSTEM "http://xml.cxml.org/schemas/cXML/1.2.020/cXML.dtd"> <cXML payloadID="payloadId" timestamp="2020-01-06T13:50:13+13:00" version="1.2" xml:lang="en"> <Header> <From> <Credential domain="DUNS"> <!-- 1. ENTER VALUE HERE used to get tenant for authentication based on Domain options for DUNS, Network ID or others --> <Identity> 8 digit ID or other based on Domain </Identity> </Credential> </From> <To> <Credential domain="unimarket-code"> <Identity> 8 digit ID or other based on Domain </Identity> </Credential> </To> <Sender> <Credential domain="unimarket-user"> <!-- 2. ENTER VALUE HERE used to get username for authentication --> <Identity>9520969d-e16b-46db-9d03-859874d883f6</Identity> <!-- 3. ENTER VALUE HERE used to get password for authentication --> <SharedSecret>password1</SharedSecret> </Credential> <UserAgent>Initiating System or ERP</UserAgent> </Sender> </Header> <Message> <PunchOutOrderMessage> <BuyerCookie>a05918eb-556e-4269-a612-dffac9b8d30d</BuyerCookie> <PunchOutOrderMessageHeader operationAllowed="create"> <Total> <Money currency="USD">32.29</Money> </Total> <Shipping> <Money currency="USD">0.00</Money> <Description xml:lang="en">Standard Shipping</Description> </Shipping> </PunchOutOrderMessageHeader> <ItemIn quantity="1"> <ItemID> <SupplierPartID>LS1234</SupplierPartID> <SupplierPartAuxiliaryID/> <IdReference domain="unimarketProductId" identifier="Long UUID number"/> </ItemID> <ItemDetail> <UnitPrice> <Money currency="USD">32.29</Money> </UnitPrice> <Description xml:lang="en">Product Text Description</Description> <UnitOfMeasure>EA</UnitOfMeasure> <Classification domain="UNSPSC">49161506</Classification> </ItemDetail> <SupplierID domain="SupplierNumber">BSHC</SupplierID> </ItemIn> </PunchOutOrderMessage> </Message> </cXML> |
Technical Information
For more technical information on integrating with Unimarket please see:
This documentation should be read in conjunction with the following:
Testing the Punchout from an ERP to Unimarket
The credentials in the external application should be set to those displayed within your Unimarket Community under Edit Community / Integration.The punch-out to Unimarket can then be tested using the following tool:
https://akl-office.unimarket.co.nz:7443/roundtrip-tester/