Procurement system (OCI)

Procurement system (OCI)

Some organizations use procurement systems. Ecmanage can work together with these systems if Ecmanage's validation logic remains active and Ecmanage's shopping cart is used on the basis of an individual login of an consignee.

There are two models that we support, an OCI variant and a cXML variant.

Construction procurement systems

The diagram below shows how the cooperation can be between Purchasing System, Ecmanage and ERP system.

The integration between Ecmanage and purchasing systems via OCI can also work with a single sign on setup. With Single Sign On, a buyer is immediately recognized by Ecmanage without having to log in separately. In the cXML variant, logging in is solved by means of an extrinsic and a shared secret.


Template sent shopping cart OCI

When configuring the purchasing system link in Ecmanage, a template can be used to map the Ecmanage order data to your purchasing system.  

An example:

OCI Field

Value

Explanation

1

New_item-vendormat[1]

58561_6200-34

assortmentid

2

New_item-description[1]

Women's Uniform Pants Black

3

New_item-matgroup[1]

Pants

Product group

4

New_item quantity[1]

1

5

New_item-unit[1]

Piece

6

New_item-currency[1]

Eur

7

New_item-price[1]

36.55

8

New_item-cust-field1

21

VAT

9

New_item-cust-field3[1]

Custdemo215559

Order code ecmanage

cXML order flow

The processing starts when Ecmanage receives a PunchOutSetupRequest CXML message from the purchasing system via a POST on an https URL of the order environment in ecmanage.

In that message we expect the following data, for example: 

  • cXML.Header.From.Credential.Identity = CUSTOMER

  • cXML.Header.To.Credential.Identity = SUPPLIER

  • cXML.Header.Sender.Credential.SharedSecret = <secret>

  • cXML.Request.PunchOutSetupRequest.BuyerCookie = <unique value for this session>

  • cXML.Request.PunchOutSetupRequest.BrowserFormPost.URL = valid url for post

  • cXML.Request.PunchOutSetupRequest.Extrinsic[name="User"] = Unique user name known in Ecmanage.

If everything is valid, a PunchOutSetupResponse cXML message will be sent with the correct StartPage. This page is only valid for a few hours.

With the StartPage, a user can start an order. At the end, the shopping cart will be returned with a PunchOutOrderMessage. This message contains the Ecmanage order number field in cXML.payloadID. That is the unique identification of an order in Ecmanage.

Record approval purchase order

For registering a purchase order that has been approved, an https POST message can be used with a cXML payload. That cXML message contains a reference to the Ecmanage order number and the purchase order number.

Field

Value

OrderRequestHeader.SupplierorderInfo[orderID]

Ecmanage order number

OrderRequestHeader[orderID]

Purchasing system order number

Example of purchase systems

A number of example integrations based on OCI and cXML: