Concept - Approval Managed Service

1 Introduction

There are various features in the Intershop Commerce Suite 7 that could use an approval workflow (e.g., approving customers after registration, approving orders in B2B scenarios etc.). These workflows can vary widely from project to project and may even have to be handled by an external system. To enable this level of customization an Approval Service has been introduced.

Currently the service is used in the standard IS7 to implement the B2B order approval.

1.1 References

2 Basics

The diagram below shows a simplified approval workflow. For more detailed information on how to implement the approval service to cover the business requirements of the said approval workflow, refer to the section System Integration.

Concept Approval Service - Order approval example

The approval workflow pictured above can be described as following:

  1. A buyer submits an order for approval.
  2. The buyer receives a confirmation for the action and an e-mail is sent to both, the buyer and the person responsible for approving the order.
  3. The approver takes care to review the order and approves it.
  4. An e-mail is sent to both, the approver and the buyer in regard of the approval action and an additional business process is triggered that places the order.

Albeit the workflow is very simple, it indicates clearly the goals that are set by introducing the approval service:

  • An easy integration between two systems
  • The approval workflow is realized asynchronously to the actors and systems involved
  • A clear way to carry communication between the systems
  • A clear way to determine and build data exchange

Keep these goals in mind when going through the next sections.

2.1 Order Approval: Approval Checks

B2B customer organizations can use the order approval functionality to review orders before they are sent to merchants. In case of a pending approval, an approver gets an e-mail that informs about the approval.

The order approval includes two possible checks. They are independent from each other:

(1) Cost Center Approval
If an order is assigned to a cost center, it must first be approved by the cost center manager before being routed to the user-specific order approval.

(2) User-Specific Order Approval
If there is a budget or an order spend limit defined for a user, the order must pass the user-specific order approval. If there is neither a cost center nor a user budget/order spend limit involved, no order approval takes place. If the purchase exceeds the budget and/or order limit, an approver must approve the order. Here, all approvers get a notification, but it is sufficient if it is approved by one approver.

It may also be that both are true, i. e., the buyer is assigned to a cost center and a limit is exceeded. In this case both the cost center manager and the approver receive a notification e-mail.

Please also find more information in the inSPIRED Business demo store. At the bottom of the page follow the links Information for Managers | Order Approval.

2.2 System Integration

The most common need for approval workflows is that the actual workflow happens somewhere else. Most of the companies out there are already using an approval engine for their every day work and chances are you would have to integrate one of those rather than doing it from scratch. From a system integration point of view we could distinguish two obvious sides - the Intershop platform and an external system.

The following diagram shows what an order approval workflow would look like using the Approval Service.

DIA Approval Service

3 Dependencies

Approval Service - Platform dependencies

4 Class Diagram

Approval Service Interfaces


Disclaimer

The information provided in the Knowledge Base may not be applicable to all systems and situations. Intershop Communications will not be liable to any party for any direct or indirect damages resulting from the use of the Customer Support section of the Intershop Corporate Web site, including, without limitation, any lost profits, business interruption, loss of programs or other data on your information handling system.

Customer Support
Knowledge Base
Product Resources
Support Tickets