The cXML Level 2 PunchOut standard enables buying organizations to search for and find PunchOut items within their procurement application, instead of having to search each suppliers' site directly. Level 2 makes suppliers’ products more accessible to buying organizations, increases the visibility of suppliers' products, and increases visits to suppliers' PunchOut sites. When the shopper finds an item they are interested in, they PunchOut directly to the item on the suppliers PunchOut site.
In order to be capable of Level 2 PunchOut, a PunchOut site must support redirecting users to a product details page upon PunchOut.
How it works
Shopper searches catalogs in procurement system
Finds item in suppliers index catalog
Punches out to punchout site - directly to selected item
Adds item to shopping cart
Returns cart to procurement System
Level 2 PunchOut requires an index catalog that contains product information that can be searched in a buyers e-procurement system. The index file differs from a traditional product catalog in that it typically does not contain pricing.
The requirements for the index files vary by procurement provider.
Level 2 PunchOutSetupRequest
Level 2 PunchOut allows users to punchout to a suppliers website and be taken directly to a product page on the suppliers website.
To implement this functionality, a field is added to the cXML
PunchOutSetupRequest that includes a unique identifier representing the product the user wants to view on the suppliers site. The unique identifiers passed will be the supplier part number (
SupplierPartID) and the supplier part aux id (
SupplierPartAuxiliaryID) from the index file. The supplier part auxiliary id is optional and will only be passed if it is present in the index file.
SelectedItem node is not present in the cXML
PunchOutSetupRequest, the punchout request will be handled normally and take the user to the home page of the punchout site.
Example Level 2 PunchOutSetupRequest
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE cXML SYSTEM "http://xml.cxml.org/schemas/cXML/1.2.040/cXML.dtd"> <cXML payloadID="firstname.lastname@example.org" timestamp="2018-04-07T16:16:48-04:00"> <Header> <!-- Credentials go here --> </Header> <Request deploymentMode="production"> <PunchOutSetupRequest operation="create"> <!-- --> <SelectedItem> <ItemID> <SupplierPartID>PN123456</SupplierPartID> <SupplierPartAuxiliaryID>ID98765746</SupplierPartAuxiliaryID> </ItemID> </SelectedItem> </PunchOutSetupRequest> </Request> </cXML>