Guide - B2B Storefront Functionality (valid from 7.10.17)



This guide is valid for ICM version 7.10.17 and higher. For previous versions see Guide - B2B Storefront Functionality (valid to 7.10.16).

This guide describes the out-of-the-box storefront functionality for B2B customers.

Permissions and Roles

The B2B storefront supports the following roles and permissions.










can place orders and quotes








can approve orders of buyers







Cost Center Managercan manage cost centers of the customer organization(tick)







can manage all aspects of the customer organization







My Account - Dashboard

The overview page of My Account contains a dashboard for B2B users. The roles described above determine the information to be displayed.

The following sections are available:

  • My Orders
  • My Order Templates
  • My Approvals
  • My Quotes
  • My Contracts

Role: Buyer

As buyer you can see - My Orders, My Order Templates, and My Quotes.

My Orders

My Order Templates

My Quotes

Role: Approver

Approvers get an additional section on the dashboard called My Approvals. Here they could easily see an overview of their approvals.

My Approvals

My Account - Navigation

The navigation section of the My Account area contains the following information:

  • The customer which the currently logged in user belongs to
  • The role(s) of the currently logged in user
  • Separate sections based on user roles



Quotes are used for price negotiations between the customer and the merchant.


While there are more complicated processes possible, the current implementation is intentionally kept simple.


The current implementation recommends that the user is logged in before doing anything. After logging in, the user can:

  • Create new quotes (only one active new quote is allowed at a time, the quote behaves like a shopping cart).
  • Submit / delete / refuse a quote.

  • See/manage the list of quotes in the My Account section.

  • See the quote request details in the My Account section.

Commerce Management Application

The current implementation supports the following administrative tasks:

  • A quote manager can see a list of quotes.

  • The quote manager needs to be assigned to the customer to see a customers quotes.

  • The quote manager can reject/edit/submit a quote.


In the ICM standard implementation Quotes and Subscriptions are incompatible.

Generally, a subscription is an one-time triggered, but periodically executed purchase of certain products or services. In subscription-based business models, consequently, customers pay periodically to use or receive a defined set of products at a regular base.

The B2X edition of Intershop Commerce Management supports subscription models via recurring orders.


Subscriptions do not work with quotes and vice versa. That is, one cannot create a subscription from a cart that contains a quote. The other way around, a quote cannot be added to a cart if it is already marked as recurrent.

Contract Management

The shop manager can create revenue-based contracts for customers.

These contracts define reduced prices for a certain set of products and can be configured by the Account Manager via the Commerce Management Application.

In the storefront, the customers' users then have reduced prices (best price strategy) according to their contract(s) conditions.

The screenshot shows a product that is part of a contract with reduced prices for graphic cards.

Currently a revenue-based contract can be set up with an individual sales target defined. The line items in the shopping cart are automatically assigned to the contract, to which the product belongs.

My Account - Contracts

In the storefront every business user can see all customer contracts.

A widget on the My Account overview page contains basic information for a limited number of contracts. An additional link leads to the list of all customer contracts.

My Account - Contracts Widget

On the contracts overview page additional information like the contract ID, type and validity period are listed.

My Account - Contract List

The contracts detail view lists all contract information and shows the related orders made.

My Account - Contract Details

Registration in Storefront

Administrators of customer organizations can register their organization directly in the storefront.

A user that registers an organization is automatically assigned the administrator role. After registration, new users can be created by the administrator within the user management section of the My Account area and assigned specific roles.

User Management

The B2B storefront contains a management section for users of a customer organization, where administrators of the organization can create and manage users.

Creating Users

Administrators can create new users of an organization from the user list. New users will receive an e-mail in order to provide a password and login.

Managing User Roles and Budgets

In addition to creating and deleting users, managing a single user includes role and budget settings as well as profile settings.

User Roles

The roles assigned to a user define what a user is allowed to do in the storefront. The buyer role is always assigned to a user. Additional roles can be assigned, e.g., to approve orders or manage cost centers.

User Budget and Order Spend Limit

User budgets and order spend limits can be defined separately for each user. If defined, these values are used to decide whether an order requires approval or not. An approval is necessary if one or both values are exceeded. If no values are defined, orders can be placed without approval. For more information, see Order Approval.

There are jobs which are created with the purpose to reset the user budgets at the end/start of each period. The following budget types are available: yearly, half-yearly, quarterly, monthly, and weekly.
The names of the corresponding job configurations are: ResetYearlyBudgetsSpentJob, ResetHalfYearlyBudgetsSpentJob, ResetQuarterlyBudgetsSpentJobResetMonthlyBudgetsSpentJob, and ResetWeeklyBudgetsSpentJob. They can be found in the Intershop System Management's Schedules | Scheduling menu item under root domain:

By default these jobs are disabled. This can remain as it is if user budgets are not used. If user budgets are used, these jobs need to be configured once. To do this, click on the desired one to enter the job configuration details page:

On the job configuration details page:

  • Select the Enabled checkbox.
  • Choose the Recurring Interval option.
  • Configure the desired interval when the job is planned to run (e.g., for weekly on Monday, 01:00:00 am; for monthly Every 1 Months; for quarterly Every 3 Months).

This way, resetting of user budgets will be performed automatically at the desired time. It is not necessary to configure all three jobs if, for example, only one type of budget period is used. For example, if weekly is the only type available, then ResetYearlyBudgetsSpentJob, ResetHalfYearlyBudgetsSpentJob, ResetQuarterlyBudgetsSpentJob, and ResetMonthlyBudgetsSpentJob can remain disabled.

Activating and Deactivating Users

In the Edit User Profile dialog it is possible to activate and deactivate a user. Deactivated users are not able to log in.

Deleting Users

Administrators can delete users, e.g., in case they left the company. This can be done from the user list by clicking on the delete icon.

Cost Centers

With cost centers customer organizations can track purchases according to their internal cost accounting and make sure purchases are in line with defined budgets.

Administrators of customer organizations can create, edit, and delete cost centers as well as assign a cost center owner and buyers to them.

Cost centers can be activated and deactivated in order to adapt to changes in the accounting of a customer organization.

Cost Center Management

Cost centers can be managed in the Cost Centers section of My Account. Administrators and Cost Center Managers can create, edit, activate/deactivate, and delete cost centers here and get an overview of the amount of orders and spent budget per cost center.

Create Cost Centers

Cost center managers and administrators can create new cost centers from the Cost Center list. A cost center must have a unique ID within the customer organization, a name, and cost center manager defined that approves or rejects all orders placed for this cost center.


Only users with the role Cost Center Manager assigned can be set as a cost center manager for a specific cost center. In addition, a budget can be defined for cost centers.

Delete Cost Centers

Administrators or Cost Center Managers can delete cost centers that are no longer needed by clicking on the delete icon in the Cost Centers list.

Deactivate/Reactivate Cost Centers

Cost centers that are not needed now but should be saved for later use or to see all orders placed for this cost center later on, can be deactivated and reactivated again by clicking on the on the deactivate/reactivate icon in the Cost Centers list.

Add Buyers to a Cost Center

Adding buyers to a cost center can be done in the Add Buyers dialog. To open the dialog, click Add in the buyers section of the cost center details page.

Edit Buyer Budgets

Editing a buyer's budget is achieved by the Edit Budget dialog. To open the dialog, click the Edit button next to each buyer in the cost center details page.

Assigning Orders to Cost Centers

If a buyer has cost centers assigned, the selection of a cost center for an order is mandatory. Otherwise, an order could be placed without providing a cost center.


Deactivated cost centers cannot be selected during checkout.


Interference between subscriptions and cost center assignment

Recurring orders created from a subscription will further on belong to the cost center to which they were initially assigned. Furthermore, a subscription may also create future orders if the initial cost center was deactivated or deleted. This means, it may be a good idea to cancel all subscriptions of a cost center before it is deactivated/deleted.

Cost Center Budgets

Budgets can be defined for the cost center itself and specifically for each buyer of the cost center. Budget periods can be set to yearly, half-yearly, quarterly, monthlyweekly, or fixed. Recurring budgets are automatically reset at the end of the defined period.

Interactions of Budgets and Subscriptions

Generally, a subscription is a one-time triggered, but periodically executed purchase of certain products or services. In subscription-based business models, consequently, customers pay periodically to use or receive a defined set of products at a regular base.


Once the subscription is approved, all subsequent orders created by this subscription do not require any additional approval. While such a recurring order reduces the budget, the recurring order itself will not be checked against the budget. That is, the recurring order will be placed even if it exceeds the budget.

Cost Center Approval

When an order is assigned to a cost center the approval from the cost center owner is required, regardless of the cost center budget or the user-specific cost center budget. The cost center owner receives information about already spent total cost center and user-specific cost center budgets in context of the order approval. Based on this, the order can be approved or rejected. The reason for a rejection can be captured by a comment.


Cost Center Managers can approve their own orders.

Order Templates

The order templates feature allows the customer to collect products in a special product list to order them later or more than once. Adding products to an order template always requires selecting an order template by name or creating a new one. Order templates can be managed (create, update delete) in the My Account section. They can be added to the cart completely. And the cart can be saved into an order template.

Order Approval

B2B customer organizations can use order approval to check orders before they are placed. The approval contains two checks, one for cost center specific approval and one to check orders against a user's budget and order spend limit. Using the order approval is optional. If no budgets and spend limits are defined for users and no cost centers are defined for a user, orders are placed without approval.

Whenever an order requires approval due to exceeding the user's spend limit or budget, an e-mail is sent to all users with either the Approver role or the Administrator role. These users also see all orders requiring approval in their Dashboard and Approvals section of My Account. Approvers can either approve or reject an order. If an order is approved, it is placed automatically. If an approver rejects an order, a reason for the rejection can be provided.

Users can see a list of pending, approved, and rejected orders in the My Account section.

Particularities for the Approval of Subscriptions

Generally, a subscription is a one-time triggered, but periodically executed purchase of certain products or services. In subscription-based business models, consequently, customers pay periodically to use or receive a defined set of products at a regular base.

The B2X edition of Intershop Commerce Management supports subscription models via recurring orders.

Subscriptions have different approval rules compared to one-time purchases.

  • The user-specific order approval is always required irrespective of the configured budget.
  • The approval page for the approver shows the recurrence information, so that the approver is aware to approve a subscription (recurring order).
  • The responsible cost center manager must also approve the subscription.


A subscription, which was once approved through all instances, never needs an additional approval, even if the subscription was deactivated and reactivated later on.

Quick Order

It is possible to add multiple products to the cart or a quote request at once by entering product ID and quantity via the Quick Order functionality.

By default, the user can add 10 products. Clicking Add 5 Lines extends the form by five additional lines, each with input fields for product ID and quantity.

Using the CSV import, you can import a customizable number of products in one step, just by providing a CSV file (encoding UTF-8). Find a sample CSV import file in the following zip file:

The quick order functionality was also implemented at the cart page with the restriction of only one product at the time.


A user with the role Account Admin can upload an individual branding logo, visible for all logged in users of a customer.


Currently, this feature is not supported with enabled page caching.

Order Search Enhancements

The order search within the Order History of My Account allows to search for order number or purchaser name.

OCI Punchout

The Open Catalog Interface (OCI) is one of the standard formats used to connect to external punchout catalogs. Using the OCI punchout format allows to transfer data of a shopping cart from the external catalog to other systems (e.g., ERP, Procurement System).

Enable OCI Punchout

To use the OCI punchout functionality as a customer, at least one user with the role "OCI Punchout User" must exist. A first OCI punchout user can be created by the Account Admin using the My Account | Punchout page. The OCI punchout user is usually not related to a dedicated storefront user. External procurement systems are using one punchout account for multiple employees. Therefore an OCI punchout user does not need profile settings like first name, last name, addresses, date of birth and other. Only login and password are required.

OCI Punchout Information

The required information (login URL) to configure the external procurement system is displayed when at least one user with the role OCI Punchout User exists. The placeholders (Your_Login, Your_Password, Your_Hook_URL) must be replaced with the relevant OCI punchout user credentials.

OCI Punchout Profile Settings

The pencil icon to the right of the OCI user allows to change the profile. On the next page the account admin can choose between the e-mail address and the password of the OCI user to be changed.

Edit E-Mail

Changing the e-mail address does not affect the login of the OCI user. The login remains the same.

Edit Password

To change the password of the OCI user, the account admin must provide his own password for confirmation.

OCI Punchout Storefront (Outbound Section)

The available storefront functionality of an OCI punchout user is only a subset compared to a regular storefront user.

Examples for eliminated functions:

  • Removed logout link in header
  • Removed page footer
  • Removed Create Quote functionality from product or cart page
  • Reduced the My Account to only show Contracts and Order Templates
  • Removed the Checkout button and added the Transfer OCI Cart on the cart page

The user is able to browse or search for products and add items to the cart.

Transfer Cart (Inbound Section)

The user can transfer the compiled basket back to the external system. On the cart page the Checkout button has been replaced by a Transfer OCI Cart button. Once the user hits the button, the system generates an HTTP form post request. The address of the post request is retrieved from the HOOK_URL parameter which is part of the original OCI punchout request.

OCI Punchout Configuration

In order to configure the OCI Punchout feature, at least one OCI Punchout user has to be created by the Account Administrator. Following that, there will be a Configure button on the upper right of the Punchout page.

The return values of the fields shown on the Punchout configuration page can be customized for the OCI Punchout transfer format. Therefore a transformation can be defined followed by an option formatting. 

 Parameter Value

Setting an OCI Punchout value requires defining a transformation. Therefore constants and/or placeholders can be used. The latter are defined by the system and quoted with curly brackets (e.g., {sku}). 

Transform ValueResultAnnotation
"Stk.""Stk."Similar to returning a constant.
"My {unit}"

"My kg"

Assuming that {unit} resolves to "kg"

Currently the system provides the following placeholders:

  • Currency
  • Description
  • ManufacturerName
  • ManufacturerSku
  • ProductName
  • Price
  • Quantity
  • Sku
  • SupplierName
  • SupplierSku
  • Unit
  • Discarded

These placeholders are case insensitive.

Custom Attribute Placeholder

  • The new custom attribute placeholder (transformer) cannot be selected directly. The names of the custom attributes must be defined in the following property key: 'oci.ver5.punchout.configuration.custom.attributes.with.access='
    This key defines which custom attribute of the product can be accessed (e.g.: MyColor, MySize, MyEAN).


    Without that property key the custom attribute placeholder does not do anything.
  • Based on the product custom attribute names configured in this property key, a list of available placeholders can be displayed by clicking on the information icon, see screenshot below.
  • The product custom attribute names configured in this property key are case sensitive.


For details see the information tool-tip in the screen shot below.


A successfully transformed value can be post-processed by a formatter of choice. Available options are:

  • "" - no formatting is applied
  • LowerCase - will put all letters lowercase
  • UpperCase - will capitalize any returned letter
  • Trim - will remove trailing white spaces such as "space", "enter" and "tabs"

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.
The Intershop Knowledge Portal uses only technically necessary cookies. We do not track visitors or have visitors tracked by 3rd parties. Please find further information on privacy in the Intershop Privacy Policy and Legal Notice.
Knowledge Base
Product Releases
Log on to continue
This Knowledge Base document is reserved for registered customers.
Log on with your Intershop Entra ID to continue.
Write an email to if you experience login issues,
or if you want to register as customer.