Introduction:
This blog has the SOAP Webservice details that can be used to update the item data in Oracle Cloud application.
Cause of the issue:
Business wants to integrate their supplier system which provides the raw item for their manufacturing purpose. So, whenever there is a change in the existing item in supplier system, business wants to update them in Oracle Cloud as well.
How do we solve:
Oracle provides a SOAP webservice which can be used to update the items in Oracle Cloud in the form of payload. SOAP responds with import status and error details in case of failure. Below is the sample payload used to import the items.
Service WSDL URL: https://servername/fscmService/ItemServiceV2?WSDL
Method: POST
Sample Request URL: https://xx.oraclecloud.com:443/fscmService/ItemServiceV2
Sample Request Body:
<?xml version=”1.0″ encoding=”UTF-8″?>
<soapenv:Envelope xmlns:soapenv=”http://schemas.xmlsoap.org/soap/envelope/” xmlns:cat=”http://xmlns.oracle.com/apps/scm/productCatalogManagement/advancedItems/flex/egoItemEff/itemSupp lier/categories/” xmlns:cat1=”http://xmlns.oracle.com/apps/scm/productCatalogManagement/advancedItems/flex/egoItemEff/itemRev ision/categories/” xmlns:cat2=”http://xmlns.oracle.com/apps/scm/productCatalogManagement/advancedItems/flex/egoItemEff/item/cat egories/” xmlns:item=”http://xmlns.oracle.com/apps/scm/productModel/items/itemServiceV2/” xmlns:item1=”http://xmlns.oracle.com/apps/scm/productModel/items/flex/itemRevision/” xmlns:item2=”http://xmlns.oracle.com/apps/scm/productModel/items/flex/item/” xmlns:item3=”http://xmlns.oracle.com/apps/scm/productModel/items/flex/itemGdf/” xmlns:ns0=”http://xmlns.oracle.com/apps/scm/productModel/items/itemServiceV2/types/” xmlns:ns12=”http://xmlns.oracle.com/apps/scm/productCatalogManagement/advancedItems/flex/egoItemEff/item/categories/” xmlns:typ=”http://xmlns.oracle.com/apps/scm/productModel/items/itemServiceV2/types/” xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”>
<soapenv:Header/>
<soapenv:Body>
<typ:updateItem>
<typ:item>
<!–Mandatory:ItemId:Pick value from “INVENTORY_ITEM_ID” from base table–>
<item:ItemId>30000000000010120</item:ItemId>
<!–Optional:ItemNumber:Pick value from “ITEM_NUMBER” field from base table–>
<item:ItemNumber>Item_number_01</item:ItemNumber>
<!–Mandatory:OrganizationId:Pick value from “ORGANIZATION_ID” field from base table–>
<item:OrganizationId>30000000000202</item:OrganizationId>
<!–Optional:OrganizationCode:Pick value from “ORGANIZATION_CODE” field from base table–>
<item:OrganizationCode>ORG1</item:OrganizationCode>
<!–Optional:ItemDescription–>
<item:ItemDescription>SOAP Update Operation Test 01</item:ItemDescription>
<!–Optional:UnitHeightQuantity–>
<item:UnitHeightQuantity unitCode=”IN”>1.0</item:UnitHeightQuantity>
<!–Optional:UnitLengthQuantity–>
<item:UnitLengthQuantity unitCode=”IN”>1.2</item:UnitLengthQuantity>
<!–Optional:UnitWeightQuantity–>
<item:UnitWeightQuantity unitCode=”POUNDS”>0.04</item:UnitWeightQuantity>
<!–Optional:UnitWidthQuantity–>
<item:UnitWidthQuantity unitCode=”IN”>1.0</item:UnitWidthQuantity>
<!–Optional:ListPrice–>
<item:ListPrice>2.9</item:ListPrice>
<!–Optional:ItemExtensibleFlexfieldCategoryCode: The value “XX_Item_EFF_Category” can be fetched from “Manage Extensible Flexfields” page, Code field under Category section–> <item:ItemExtensibleFlexfieldCategoryCode>XX_Item_EFF_Category</item:ItemExtensibleFlexfieldCategoryCode>
<!–Mandatory:ns12: The value “XXItemEffCategory” can be fetched from “Manage Extensible Flexfields” page, View Context page, API Name field –>
<item:ItemEffCategory xsi:type=”ns12: XXItemEFFCategory ” xmlns:ns13=”http://xmlns.oracle.com/apps/scm/productCatalogManagement/advancedItems/flex/egoItemEff/item/contexts/”>
<ns12:ItemMiscAttributes xmlns:ns9=”http://xmlns.oracle.com/apps/scm/productCatalogManagement/advancedItems/protectedModel/”>
<!–Mandatory:ContextCode: The value “XX Item EFF Category” can be fetched from “Manage Extensible Flexfields” page, View Context page, Context code field–>
<ns9:ContextCode>XX Item EFF Category</ns9:ContextCode>
<!–Mandatory:CategoryCode: The value “XX_Item_EFF_Category” can be fetched from “Manage Extensible Flexfields” page, Code field under Category section–>
<ns9:CategoryCode> XX_Item_EFF_Category</ns9:CategoryCode>
<!–Optional:Attribute1–>
<ns13:Attribute1>1</ns13:Attribute1>
</ns12:ItemMiscAttributes>
</item:ItemEffCategory>
</typ:item>
</typ:updateItem>
</soapenv:Body>
</soapenv:Envelope>
SOAP Response:
The response will have the status code.
- Success code – “200 OK”
- Error code – anything other than 200 OK