Here is my first test of Open Catalog Interface (OCI) in Infor e-Commerce.
About OCI
OCI is a standard from SAP from around year 1999:
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).
Documentation
Infor e-Commerce supports OCI out of the box. Unfortunately, the documentation is meager, and when Infor acquired Lawson they removed the examples and screenshots of all documentation:
Thankfully, the old Lawson documentation still has examples and screenshots:
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.
One time only, go to Business Center > Roles, select the desired role (e.g. Reseller), enable the Feature Element OCI Capable, and click Save:
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:
For each user of each customer, go to Business Center > Users B2B, select the user (e.g. Thibaud), and in User Details > User Roles, enable the OCI Capable role (e.g. Reseller), 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:
Where:
- 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
The user launches e-Commerce using the URL configured above (e.g. from SAP, PeopleSoft), the URL will authenticate the user to e-Commerce, and land directly in the e-Commerce items list:
Add items to the shopping cart as usual, go to View cart & checkout. Then, click Retrieve Order, it is a new button for the OCI Capable role:
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.
OciTestPage.jsp
There is a page OciTestPage.jsp that you can use in HOOK_URL for testing purposes:
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 [2] to [0].
- 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.
Future work
- 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.
Conclusion
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.
That’s it!
Please like, comment, subscribe, share, author.
One thought on “OCI PunchOut in Infor e-Commerce”