(Enterprise)

Procurement system integration

WebSphere Commerce provides the capability to integrate with procurement systems. This capability enables WebSphere Commerce customers to participate as suppliers in the procurement system's marketplace, increase sales, and enhance their business-to-business presence on the Web. WebSphere Commerce provides an extensible and customizable functionality in such a way that one can extend either the messages or the business logic. WebSphere Commerce supports two modes of integration to procurement systems: Local catalog mode, and Punch-out catalog mode.

Note: The WebSphere Commerce procurement system integration does not support the EDP system.


Local catalog mode

In local catalog mode, suppliers replicate their catalog on the procurement system. The buyers can browse the catalog and construct a shopping cart without connecting to the supplier's WebSphere Commerce site.


Purchasing flow using the local catalog mode

In local catalog mode, suppliers replicate their catalog on the procurement system. The following steps represent the purchasing flow:

  1. Buyers browse the catalog on the procurement system and create an order.

  2. The procurement system sends the OrderRequest message to WebSphere Commerce with the buyer and supplier logon and user IDs, the order, and billing and shipping information.

  3. The OrderRequest message is mapped to the BatchOrderRequest command, which creates a new order in batch processing.

  4. After the OrderRequest message is authenticated and processed, the OrderResponse message is sent to the procurement system and indicates the success or failure of the order.


Punch-out catalog mode

In Punch-out catalog mode, suppliers maintain a single catalog within WebSphere Commerce, and use it to enable Web presence and participation in the procurement system's network.


Purchasing flow using the punch-out catalog mode

In punch-out catalog mode, suppliers maintain a single catalog within WebSphere Commerce and use it to enable Web presence in the procurement system's network. The following steps represent the purchasing flow:

  1. The Buyer selects the supplier on the procurement system and the PunchOutSetupRequest message is sent to WebSphere Commerce.

  2. The PunchOutSetupRequest message is mapped to the PunchOut setup command.

  3. The PunchOutSetup command calls the AuthenticationHelper command to authenticate the buyer and suppliers user and logon IDs. A task command is called depending on the authentication mode.

  4. After successful authentication, the PunchOutSetup command calls the RegisterRequisitioner task command to check whether the requisitioning user is registered with the system. If the user does not exist the user is registered as a new user and given the role of Procurement Buyer.

  5. Use the PunchOutSetupResponse message, WebSphere Commerce sends the CatalogDisplay URL and information needed to bind the session back to the procurement system.

  6. The procurement system launches a new browser window using the PunchOutCatalogDisplay command and the catalog is displayed to the Buyer to begin browsing and purchasing.

  7. The Buyer checks out the order and the content is put into the PurchaseOrder message and sent to the procurement system for approval.

  8. The procurement system sends the OrderRequest message to WebSphere Commerce to create the order after it is approved by an approver on the procurement system.


Types of communication in procurement systems

Customers can choose to operate in either local or punch-out catalog mode using the communication of choice with their procurement system. The procurement systems use two different types of communication protocols. WebSphere Commerce provides the infrastructure (commands, database schema) to support both types of protocols.


Order Management subsystem extensions for procurement

In WebSphere Commerce, the database schema supports additional information for orders and order items from buying organizations, and order status information from the fulfillment center. The database schema was extended for procurement to capture the order and order item information that is sent by the procurement system on the buyer's behalf.

Two tables were created to extend the capturing of order information:

The ORDRMEEXTN table extends the capability of the ORDERS table, and the ORDIMEEXTN extends the capability of the ORDERITEMS table. These tables can be customized to capture additional information.

Note: The Order Management subsystem cannot send orders to the procurement system for approval or process orders that are sent from the procurement system. These actions are supported by the SubmitShoppingCart, SendShoppingCart, and BatchOrderRequest commands.


Catalog subsystem extensions for procurement

Some procurement systems require classification codes for catalog entries under different classification standards such as the UNSPC (United Nations Standard Product and Services classification).

To accommodate this requirement, the following tables are added to the catalog subsystem:

WebSphere Commerce catalog and order management subsystems use the UN/CEFACT (United Nations Center for Trade Facilitation and Electronic Business) standard unit of measurement (UOM) code for quantities and pricing calculations. The QTYUNIT table lists the UN/CEFACT UOM codes used, however, procurement system protocols such as MySAP OCI require the ISO standard UOM codes in the messages.

To provide one-to-one mapping between the UN/CEFACT codes in the QTYUNIT table and the UOM codes under other standards, the QTYUNITMAP database table was added to the catalog subsystem. UOM UN/CEFACT codes for catalog entries in the QTYUNITMAP table.


Contract and pricing support for procurement systems (Enterprise)

WebSphere Commerce allows buyers the ability to purchase under different contracts with different terms and conditions. Customized pricing can be set up under any of the contracts. We can use the default contract or create our own contracts.

The BUYSUPMAP table lists the relationships between buyers and suppliers. This table includes the CONTRACT_ID and MBRGROUP_ID columns. The CONTRACT_ID column identifies the contract used by the buyer and the supplier. The MBRGROUP_ID column identifies the member groups to be assigned to a requisitioner when they are registered.

If you use the default contract, we can perform the following tasks:

Note: The CONTRACT_ID value for the default contract is NULL.

If we create our own contract, we can perform the following tasks:


Messages and commands for procurement

In order to integrate with procurement systems, WebSphere Commerce uses a series of messages and commands. There are five messages in total, two inbound messages to WebSphere Commerce from the procurement system and three outbound messages from WebSphere Commerce to the procurement system. Each message is associated with a command, as shown in the following table.

Message Name Command Direction Response
PunchOutSetupRequest PunchOutSetup Inbound PunchOutSetupResponse
OrderRequest BatchOrderRequest Inbound OrderResponse
PunchOutSetupResponse PunchOutSetup Outbound
PurchaseOrderMessage (The order sent to the procurement system for approval.) PrepareOrder Outbound
OrderResponse BatchOrderRequest Outbound

When we use the punch-out integration, we might get an exception that is related to the missing dynamic cache instance. We can create or update cacheinstances.properties with services/cache/WCSharedDistributedMap instance, or create this cache instance in WebSphere Application Server Administration Console. For example,

Update the cache.instance.0.replicationDomain=WC_Cluster_DRS value according to the environment configuration.


Related tasks
Enable NLS for XML messages
Creating messages for procurement integration message keys