Related Documents
Document Properties
Kbid
P28217
Last Modified
31-May-2022
Added to KB
31-Mar-2017
Public Access
Everyone
Status
Online
Doc Type
Release Notes
Product
IOM 2.2

Public Release Note - Intershop Order Management 2.2

Table of Contents

Product Version

2.2

Product To Version

2.2
Status

1 Introduction

Welcome to the Intershop Order Management 2.2!

Intershop Order Management is an Intershop Commerce Suite application that is designed to combine omni-channel commerce processes into one system. It automates and streamlines the life cycle of orders and payments. Intershop Order Management processes orders from multiple touch points (web shop, mobile shop, call center and more), allocates them to multiple fulfillment solutions (fulfillment centers, drop-ship distributors, physical stores and more), and tracks all order and payment transactions.

Intershop Order Management offers a centralized platform for managing distributed inventory, order, invoice and payment life cycles, and provides call center functionality, enabling real-time visibility into customers' purchasing behavior, stock levels, payments, and more. As part of Intershop Commerce Suite, it utilizes the suite's transaction, PIM and merchandising features.

Intershop Order Management (IOM) offers the possibility to tailor your business models as flexible and free as you need and depict them in your e-commerce environment. The order management system adjusts the order processing for various sales channels and suppliers and can be seamlessly integrated with existing components of your IT environment.

1.1 Dependency Version Information


Intershop Order ManagementIntershop Commerce Management B2XIOM Connector
Version2.27.95.0

1.2 Glossary

TermDescription
APIApplication Programming Interface
B2BBusiness-to-Business
FTPFile Transfer Protocol
Gluster-FSA scale-out network-attached storage file system
HAHigh availability
ICMAbbreviation for Intershop Commerce Management
IOMAbbreviation for Intershop Order Management
IMPEXImport/ Export
OMSAbbreviation for Order Management System, the technical name of the IOM
OMTAbbreviation for  Order Management Tool , the graphical management tool of the IOM
RESTRepresentational State Transfer
SOAPSimple Object Access Protocol
URLUniform Resource Locator
WatchdogA tool of IOM to monitor and manage the availability of IOM application servers

2 General Information

3 Additional Information

4 New Features and Enhancements

High Availability

High availability can be defined as follows. The system is designed for highest requirements in terms of performance and reliability. Several platform capabilities allow easy scaling without downtimes.

From version 2.2 Intershop Order Management is ready for High Availability.

Symmetric HA Nodes

The major approach is that high availability can be provided by using symmetric high availability nodes. The configuration of all high availability nodes is identical so every server node is able to replace any other. It follows the whole system will be able to answer requests, as long at least one active and working node exists. A selected backend server is active at a time that will handle business processes exclusively. Additionally a server monitoring tool, IOM Watchdog, is used to manage the availability of application servers and also switches to another backend server to be active in case of errors. Also see Guide - Intershop Order Management - Technical Overview for more detailed information.

The following diagram shows an example of high availability nodes. Gluster FS is used to replicate data between FTP-servers. High availability database and server monitoring is not shown in this picture.

To support this architectural approach the IOM was improved and extended. The following list gives a short overview.

Frontend Applications Servers

Applications servers that are acting as frontend servers were proved to support session failover. Additionally load balancing and sticky sessions are tested using one approach on Apache HTTP Server.

Backend Application Servers

The new management of cluster jobs implemented by Quartz Clustering with JDBC-JobStore ensures single machine job handling. See Guide - IOM Job Scheduling for more information.

IOM Watchdog

This new tool was implemented to manage the availability of application server nodes. Using IOM server health checks which was added to each application server Watchdog can be configured to start/ stop/ restart applications servers if required. Additionally Watchdog switches to another backend server to be active in case of errors. Also see Guide - IOM Watchdog 2.2 - 2.11.

FTP-servers

The Ftp-servers are enabled to synchronize between each other. One tested approach is GlusterFS, but any other solutions can be used too.

Further Changes

  • Ensured automated reconnect of JMS and Database connections if connection was lost/ broken
  • Introduced multiple addresses for database cluster and jms hosts
  • Support of port-offsets
  • Ensured distributed cache management for the application cluster. See Concept - IOM Synchronization of Java-based Caches.
  • Server health check URLs (REST) are introduced to return the 'healthiness' of an application server. An additional REST service returns the current status of all applications servers within a cluster. Also see Concept - IOM Server Health Check.
  • The log directory is configurable now
  • Export jobs resistant to server restarts
  • More intuitive naming of application server nodes

PostgreSQL HA Cluster

IOM supports access to PostgreSQL HA clusters but has always connect to the master database.

PostgreSQL HA cluster usually consists of one master server and one or more hot-standby servers. The master-server is the only one, which is allowed to change data. An additional witness-server is needed by the fail-over process when the total number of servers (master + standbys) is odd. The database connection address of IOM consists of a hostlist which supports a number of one or more database host addresses which ensures a connection to the database as long as at least one of these addresses are pointing to a working PostgreSQL HA clusters. Please see Guide - Intershop Order Management - Technical Overview for more detailed information.

Improvements of the User Interface

Changed URL of OMT

The URL of the OMT application, the user interface, was cut down from /bakery.omt/app/ to /omt/app/ only and has no visual relation to the technical deployment artifact any longer.

Note

The URL /bakery.omt/app/ does not work any longer and has no redirect to the new URL.

New Icons for Menu

Icons for the main menu were replaced to more fit the represented content.

Improvement of Page Header

The page header of OMT was improved. Therefore the quick search was moved to it to be able to quickly search for orders, customers and items any time. Additionally icons to reach the user profile of the current user and to logout was introduced.

Enhanced Business Features

Support of Night Shipping Information at Shipping Addresses

Customer shipping addresses has been extended by the attribute night shipping. It indicates, if night shipping and delivery for a customer address is permitted. Thus, a call center agent can configure whether night shipping is enabled for a selected customer shipping address.

The new version of SOAP web service CustomerService/v1.1 and ExportCustomer/v1.1 supporting the new attribute nightShipping. Also see Reference - IOM SOAP Web Services

Note

Export Customer (based on CustomerService-v1.0.xsd) is no longer available.

Improvements of the Invoice View

On the invoice detail page the information about settled state is now shown on top too.

Additionally a comment can be added to the invoice.

Net Values for Manual Credit Notes on B2B Shops

On the invoice detail page it is possible to grant manually a credit note to a customer. For B2B shops the amounts now can be entered as net value. For B2C shops gross values still is required.

Delivery Note Number for Accounting Interfaces

The delivery note number from the supplier can now passed though the accounting interface of IOM to connected accounting systems. Following it is possible to match several deliveries from a supplier to aggregated invoices from a supplier.

Also see Reference - IOM ImpEx Interfaces. The new attribute is named DeliveryNoteNo.

Configuration of Aggregated Invoices

Aggregated invoices allows to generate one invoice for all orders/ dispatches within a certain time frame for a customer. Aggregated invoices now can be configured at the customer details page. Set here if an aggregated invoice should be generated and it's time frame.

For more information see Concept - IOM Aggregated Invoices.

Configurable Default Return Quantity

It is now possible to set the default quantity of the items that are possible to return within the dialog of OMT for the return confirmation. The default value can be the maximum returnable quantity or zero (0). For configuration use the cluster property is.oms.default.max.return.quantity. If not set zero (0) will be used.

See section Cluster Properties of Guide - Setup Intershop Order Management 2.2.

View of Discounted Amounts, Promotions and Discounts

With the enhancement of the OrderService v1.2 also improvements of the user interface were made. Therefore all amounts are now showing discounted values for an all-over consistently view. Discounts and promotions are shown separated.

The affected pages are:

  • Order detail page
  • Order return confirmation modal panel
  • Order return position list
  • Order position details
  • Invoice position tab
  • Credit note creation modal panel

Also email templates and PDF document templates were updated.

Consolidated View of Charged Values at Invoices

To have a more clear view about the several types of booked order values improvements were made on the invoice list.
Therefore the column paid was removed from the customer invoice list and the order invoice view. Further on the invoice details view the label paid was renamed to captured, the status for paid/ charged/ captured was removed. The status for booked remains.

Customization

Configurable Quartz Jobs

With the new management of cluster jobs as mentioned in section HA of this document, the configuration of cluster jobs was moved to etc/ of the application server. Using the files quartz-cluster.properties and quartz-jobs-cluster.xml cluster jobs can now be configured without any build of deployment artifacts before. Please see Guide - IOM Job Scheduling for more information.

Customizable Email Validation

Using the cluster property is.oms.validation.pattern.email it is now possible to customize the email validation using the given pattern. See section Cluster Properties of Guide - Setup Intershop Order Management 2.2.

Customizable Password Validation

Using the cluster property is.oms.validation.pattern.password  it is now possible to customize the password validation rule using the given pattern.
With is.oms.validation.pattern.password.hint the displayed note, where you can explain the rules for OMT users, can be customized. Both values can be set independently from each other.

See section Cluster Properties of Guide - Setup Intershop Order Management 2.2.

External Interfaces

Enhanced OrderService v1.2

The OrderService to submit new orders was enhanced to:

  • Better support different calculation models
  • Support further order information next to the order level and order position level
  • Support multiple shipping addresses and multiple freight classes
  • Display more information in the UI, emails and PDF documents

Therefore the OrderService was updated with following information:

  • Additional discounted amounts on different order levels
  • Additional unit information for items, e.g., meter, liter, piece
  • Promotions on order and order position level, e.g., 10% off
  • Cost center on order and order position level. Additionally a project can be noted.
  • The former reserved properties payment, delivery_address, billing_address and reservation became part of the interface.

Note

  • Currently the IOM supports only one shipping address per order. The new OrderService is well prepared to handle different shipping addresses (Position / Shipping attribute shipToAddress). But until the time has come, all positions should point to the same shipping address otherwise the system takes the information from the first position (shipToAddress) during the processing.
  • The attribute shippingMethod (Position / Shipping) pretends that a client can define shipping methods per order position. But that is not the case. We do not recommend to use this attribute.
  • The IOM OrderService v1.1 is declared as deprecated and will disappear in a future IOM version.

Also see Reference - IOM SOAP Web Services

CustomerService v1.1 Supports Night Shipping 

Customer delivery addresses has been extended by the attribute night shipping. It indicates, if night shipping and delivery for a customer address is permitted. Also see Support of Night Shipping Information at Delivery Addresses and Reference - IOM SOAP Web Services

Note

Export Customer (based on CustomerService-v1.0.xsd) is no longer available.

5 Setup & Configuration

The distribution package that contains the binary distribution of Intershop Order Management 2.2 is available in the Product Calendar and consists only of this file:

  • IOM_2.2.0.0.tgz

For installation instructions please read:

Please note that the installation requires installed and preconfigured:

  • JDK 8
  • WildFly 9
  • Postgres 9.6

6 Interface Descriptions

6.1 REST API

6.2 SOAP API

The commented WSDLs are part of the IOM distribution package and can be found in this directory /doc/SOAP.

6.3 Asynchronous Interfaces

6.4 Deprecations


6.5 Removals


7 Fixed Defects


KeySummary
IOM-6705Missing TypedObject at PaymentNotificationDO while saving payment notification
IOM-6674Sporadic very slow product import
IOM-6642Credit note limit is wrong when position is spread over invoices
IOM-6626Manual Credit Note Fails After Return
IOM-6625Login fails after a deleted user was created new with the same login name.
IOM-6567Hibernate-exception while editing an erroneous dispatch
IOM-6533Order Responses with Wrong Quantities Cause Failure of subsequent Responses
IOM-6516VelocityTransformer doesn't support UTF-8 encoded includes
IOM-6514ApprovalResponseDOs marked as invalid
IOM-6513Non-atomic open amount (XML) export causes duplicate export
IOM-6492Length check missing in OrderMapperInBean (HouseNumber, StreetName)
IOM-6448Conflicting Order Responses Create a Deadlock
IOM-6403Credit note invalid for position which is waiting for aggregated invoice
IOM-6402Precondition check for invoice number generation doesn't work
IOM-6382Order invoice list shows negated status in field 'settled'
IOM-6361Can't create proper order responses for partially dispatched positions
IOM-6354TransmissionTypeDefDOEnumInterface unchecked cast to TransmissionTypeDefDO
IOM-6353ATP error when using multiple ShopArticleNo for a same SupplierArticle
IOM-6352TransmissionTypeDefDO[EnumInterface] uses MessageTypeDefDO instead of EnumInterface
IOM-6347Manual approval rejection not working while payment approvals are pending
IOM-6346NullPointerExceptions in ValidateResponsePTBean.identifyPosStateCode4Continuous
IOM-6344OMT Item search ID type selection is misleading
IOM-6312SQL injection is possible in OrderStateService
IOM-6310Country is missing in AddressLO and cannot be used within mail templates
IOM-6309ShopArticleNo mapping update impossible in some cases
IOM-6249Exception in OMT order position view ("Rounding necessary")
IOM-6230Edit order response dialog broken
IOM-6229Business query "Not refunded returns" incomplete
IOM-6227Aggregated invoicing: InvoicingDO has empty street
IOM-6225OMT field outstanding invoice amounts shows wrong value
IOM-6199update_properties does not reflect syntax errors in exit code
IOM-6194Return reason combobox too small
IOM-6119Mail Displayed Twice for Split Order
IOM-6117Order Response Displays Wrong Purchase Price
IOM-6111LazyInitializationException when calling returnReportRequest of webservice ReverseService
IOM-6077Display of long customer numbers breaks OMT layout
IOM-6076Not able to create dispatches / cancellations in OMT (multiple supplier order)
IOM-6066ScheduleDO stuck due to race condition in JobHandler
IOM-6059Rounding issue in Net Based Price Calculation ICM 7.7.2.3/4 und OMS 2.1.1
IOM-6047OMT Homepage - Item & Customer search does not work
IOM-6005Return reasons are not displayed properly in OMT
IOM-6000FTPFileTransferBean causes infinite loop
IOM-5998"Cancelled" and "Later" quantities are exchanged with icons in Order Receipt tab
IOM-5976ArticleCollectionForAggregationUpdateDO possibly has duplicates
IOM-5957update_properties.sh ignores lines, not ending with EOL
IOM-5956(re)deploy.sh ignores lines, not ending with EOL
IOM-5918Error creating delivery confirmation in OMT for orders with many positions
IOM-5904Configured email sender name is not used for customer emails
IOM-5903OrderMessageLog archive csv does not show the archived data
IOM-5901openInvoiceAmount of customers is never updated properly
IOM-5835ShopCustomerMailLogicBean inconsistent behaviour (Payment method)
IOM-5818validateCancelOrder fails in ReverseService.cancelOrder
IOM-5814Article export file format does not match to documentation
IOM-5802javax.persistence.OptimisticLockException: Row was updated or deleted by another transaction
IOM-5798NullPointerException in OrderDocumentsMapperBean
IOM-5753WARN: ''quartz-jobs.xml'' does not exist.
IOM-5631Same id for different states in DocumentStatesDefDO (STATE_INVALID.id == STATE_CLOSED.id)
IOM-5621Order cancellations have a refund value of 0.00
IOM-5563JMS Queues in clustered environments: failover
IOM-5504Possible SQL Injection in Reservation REST API/ArticlePersistenceBean
IOM-5427Item details page: description looks bad if there is no content provider available
IOM-5395Stacktrace in the browser after cancelling a cancellation
IOM-5361Potential NPEs for *PropertyDOs
IOM-5319CustomerService resets open amounts
IOM-5258New customers are "hardcoded" B2C customers
IOM-5251Manual payment notification date is not set properly
IOM-4454Using browser "Back" button after viewing a search result leads to a technical error
IOM-2634Duplicate check in ValidateOrderCompletePTBean will add same ValidationException twice for missing existing delivery address for physical item

8 Changelog


Version Intershop Order Management / 2.2.8

Overview - IOM 2.2.7 - 2.2.8 Migration

Fixed Defects


Version Intershop Order Management / 2.2.7

New Features


Fixed Defects


Version Intershop Order Management / 2.2.6

New Features


Fixed Defects


Version Intershop Order Management / 2.2.5

New Features


Fixed Defects


Version Intershop Order Management / 2.2.4

Fixed Defects


Version Intershop Order Management / 2.2.3.1

Fixed Defects


Version Intershop Order Management / 2.2.3

Fixed Defects


Version Intershop Order Management / 2.2.2

New Features


Fixed Defects

KeySummary
IOM-7179Manual credit notes are not considered correctly when creating credit notes for returns
IOM-7165ShopCustomerMailLogicBean.createShopUserMailInvoicingLO inconsistent behaviour (Payment method)
IOM-7154Debtor/Invoice transmissions don't reset MessageLogContext and cause MessageLogException
IOM-7151Retry mechanism for all transmission types broken in latest patch
IOM-7140Search for order in "Waiting for approval" doesn't work
IOM-7128Customer search breaks for a 3 level shop hierarchy
IOM-7125Shop-Supplier check is wrong when looking for article availability in parent shop(s)
IOM-7124Export files are deleted from the filesystem when the JVM/application server is shut down
IOM-7122OrderAuthorizationExpireControllerBean creates captures / invoices for orders with incomplete Payment
IOM-7120Race condition causes Exception in ClosePaymentNotificationQueue when creating two notifications for the same order at the same time
IOM-7099OrderRecallController / OrderRecallPC functionality is not working
IOM-7093Cron schedules defined in the table ScheduleDO are not respected at the first run
IOM-7092The lastRun attribute of ScheduleDO is set to the job creation date instead to the current time on the first run
IOM-7070Disabling invoice creation via the active-flag is ignored
IOM-7061discountedItem* prices for undiscounted items not mapped in OrderService 1.2
IOM-7007All positions of an order are displayed as check failed allthough only some are
IOM-6844Order search filter breaks when a shop hierarchy contains more than 2 levels


Version Intershop Order Management / 2.2.1

Please see Overview - IOM 2.2 - 2.2.1 Migration for migration guidelines.

New Features


Deprecations


Fixed Defects

KeySummary
IOM-6881Faulty EMail validation in OrderController
IOM-6852Customer specific data are offered by OOTB in Invoice Templates
IOM-6834NullPointerException when working with multiple tabs on order details page in OMT
IOM-6802Missleading filter description in OMT order search
IOM-6799Invoice calculation after a manual credit note doesn't consider the entered values
IOM-6796Delivered custom password expression doesn't match the default one
IOM-6795Role assignment is successful without selecting an organisation
IOM-6790OMT searches with customer attributes is not consistent between the Order and the Customer search results
IOM-6779Wrong unique constraint on ExecutionBeanValueDO
IOM-6771Sort articles according to order position in e-mails
IOM-6753modificationDate of ArticleSupplier(Shop)DO is not updated by OMT
IOM-6730Non-deterministic carrier name display in OMT
IOM-6725Order/customer search table only shows 'row number'-column for new users after first login
IOM-6724OMT displays links to customer detail page without permission "show customer data"
IOM-6721Cascading delete on Shop2Supplier2ApprovalTypeDefDO may cause orders to get stuck
IOM-6671Expanded Payment methods do not show up as filter in the order search
IOM-6583WebService CustomerService/v1.1 throws 'Unable to throw real Exception' if id was set
IOM-6549Bootstrap dateRangePicker does not close using Close Icon
IOM-6528Response & Response Position Properties are not processed / stored into the database
IOM-6527Return & Return Position Properties are not processed / stored into the database
IOM-6523Dispatch & Dispatch Position Properties are not processed / stored into the database
IOM-6289Double error message "not authorized" while confirming not permitted order cancellation
IOM-5898JobHandler suppresses Stacktraces
IOM-5644ScheduleDO is automatically activated after job run when it was deactivated during job run
IOM-5512Help tool tips are not respected in tab order of user creation dialog

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
Tickets