Skip to main content
Question

Self-service Procurement Catalog mapping to Purchase Group

  • Oct 2, 2026 2:59 PM UTC
  • 1 reply
  • 25 views

Forum|alt.badge.img+7

Hi, 
I am setting up Procurement portal with a Supplier. 
We are using OCI with this supplier. I get the punchout connection to work, and item is returned to basket.

I do however not see the category returned.
in the payload I can see that NEW_ITEM-MATGROUP[1] is 53102503. I would expect this value to be present in field Suppliers Part Category. 
Am I missing some setup or is this a bug?

1 reply

  • Do Gooder (Customer)
  • Nov 11, 2026 8:59 AM UTC

Currently IFS does not pull in NEW_ITEM-MATGROUP and it doesn’t look like there are any plans to do this in the upcoming release notes. 

The following link includes a list of the items that are mapped from the OCI punchout into IFS.
Punchout Catalog - Procurement - Technical Documentation For IFS Cloud

It is possible to customise this though. I’ve just done this pulling NEW_ITEM-MATGROUP into the purchase group (stat_grp) field in IFS. Below is what worked for me. 

 

  1. In the ESSPRO module customise SelfServShopCartUtil
     
  2. In the -cust-.fragment file, delclare a dummy structure that includes

             implementation=”Utility”; 

    Note: Look to the core .fragment for the example PunchoutResponseStructure. 
    This just connects the fragment file to the utiltiy to allow for manual deployment from Dev Studio.

     
  3. Again in the -cust.fragment file override the entity SelfServShopCartLine and add stat_grp to the ‘use attributes’ list. Also declare the attribute stat_grp in the body of the entity override. i.e. 

             attribute StatGrp Text;
     
  4. From the fragment, generate dependents. The resulting api should contain TYPE Punchout_Response_Structure_Self_Serv_Shop_Cart_Line_Rec. 

    This is generated from the structure “PunchoutResponseStructure” in the core.fragment file which uses entity “PunchoutMessageHeader” which in turn uses an array to call entity “SelfServShopCartLine” which you’ve just extended in the cust.fragment file. You should see the attribute that you added to the entity listed in the generated type. 
     
  5. This extended type is mapped to line_rec_ in the procedured “Add_Oci_Punchout_Lines___” which is included in the SelfServShopCartUtil.plsql file. Customise this procedure to map the attribute you’ve just added to line_rec_ onto the json object your trying to pull through. In my case that looked like

             stat_grp_ := UPPER(TO_CHAR(line_json_obj_.get_String('NEW_ITEM-MATGROUP')));
             IF Purchase_Part_Group_API.Exists(stat_grp_) THEN
                line_rec_.stat_grp := stat_grp_;
             END IF;

    note: rememeber to declare any new local variables like stat_grp_