It competes with the cXML standard from Ariba also from around year 1999.
I will use OCI for PunchOut with e-Commerce, i.e. for a buyer to place an order in a seller’s e-Commerce, and retrieve the order in the buyer’s system (e.g. SAP, PeopleSoft).
If we are familiar with Infor e-Commerce and OCI, and if we have the old documentation, we can figure it out.
1. Configuration for seller
Let’s configure the seller’s e-Commerce B2B, with role, customers, and users.
For each customer, go to Business Center > Customers B2B > select a customer (e.g. 66045), and in the Customer Details > OCI Agreement, enter the Agreement Name/Description, Valid From/To, and Contact Person Buyer/Seller, and click Save:
2. Configuration for buyer
Setup the buyer’s OCI software (e.g. SAP, PeopleSoft) to launch e-Commerce with the URL in the following format:
- https://seller.com/infor-ecom-b2b/cc/ is the base URL to Infor e-Commerce B2B Customer Center (replace the host, port, and path as needed). I had tried the B2C URL, but the reqpage had no effect, it only worked with the B2B URL.
- Default2.jsp is the e-Commerce OCI page
- @user.userid is the e-Commerce userid
- @user.password is the e-Commerce password
- reqpage=ItemList.jsp is the e-Commerce parameter to request the Item List landing page
- HOOK_URL is the buyer’s OCI URL that will receive the e-Commerce order (ask the buyer for that URL), e.g. https://buyer.com/OCI
As usual, the parameter values must be URL-encoded in the URL.
That URL will launch e-Commerce, will authenticate the user, and will land the user in the items page, ready for the user to place an order.
3. Place an order
At that moment, e-Commerce will logout, and will send the order to the buyer’s sytem by making an HTTP POST request to the specified HOOK_URL with the order details as x-www-form-urlencoded name/value parameters in the body:
Verify the order on the buyer’s system (e.g. SAP, PeopleSoft). That completes the process flow.
But it seems to have a few problems in my environment, and I kept getting an HTTP 302 re-direct to the home page, so I had to fix a few things:
- The parameter NEW_ITEM-VENDORMAT had an incorrect index, I had to correct it manually from  to .
- It did not work with my User B2B Thibaud, it says “You are currently not authorized to see the requested page. Please login and try again.” I had to switch to admin, I must be missing a Role.
- I had to force the parameter retrieveorder to any non-null value.
- There is a parameter ocirul which I do not know how to use.
- OCI does not support edit and cancel operations of requisition orders, unlike cXML, so I must find a workaround.
- Most OCI implementations have customized tweaks, deviating from the standard, so I have to find the source code for OCI in e-Commerce, and see if I can modify it accordingly.
That was my first test of OCI in Infor e-Commerce for a buyer to PunchOut to a seller.
Special thanks to Wayne Liu and Karl Bonne at Infor for the help.
Please like, comment, subscribe, share, author.