Configuring origin attributes

Order Service contains APIs that you can use to save orders against a unique set of attributes, such as order number, document type and enterprise code, or the order identifier. However, when multiple Sterling Order Management System Software instances are integrated with one Order Service instance, you must also supply the origin identifier to uniquely identify an order while saving an order summary or archiving an order in Order Service. The origin identifier indicates a Sterling Order Management System Software instance where the order was originally created.

Besides the origin identifier, you can also pass the Sterling Order Management System Software deployment URL, location, or any instance details while saving order summary data in Order Service. While searching for orders, these additional information on every hit helps you to locate Sterling Order Management System Software instances where the order was originally created and redirect to that location for complete details of the order.

You can configure the following properties in Sterling Order Management System Software to pass the origin attributes to Order Service during the save and archive operations.

Field Description
osi.oms.instance.origin.id The origin identifier. It is an identifier to the Sterling Order Management System Software instance.
osi.oms.instance.origin.attributes Names of the other origin attributes, separated by comma.
osi.oms.instance.origin.<attribute name> Value of the origin attribute. Similarly, assign the value for every origin attributes defined in the osi.oms.instance.origin.attributes property.
Tip: Origin attributes can have multiple comma-separated values.
You can configure the following properties in Sterling Order Management System Software to pass as the origin-related fields to Order Service from Sterling Order Management System Software:
  • Use osi.oms.instance.origin.id to input the instance identifier. For example, osi.oms.instance.origin.id=oms_instance_1.
  • Use osi.oms.instance.origin.attributes to input other attributes. For example, osi.oms.instance.origin.attributes=contactpoint,version,locale.
  • Use osi.oms.instance.origin.contactpoint=<IP address>:<Port> for the contact point. For example, osi.oms.instance.origin.contactpoint=10.11.12.13:8080.
  • Use osi.oms.instance.origin.version=<version> for the version number. For example, osi.oms.instance.origin.version=10.0.
  • Use osi.oms.instance.origin.locale=<locale> for the locale. For example, osi.oms.instance.origin.locale=en_US_EST.
CAUTION:
You cannot modify or reset the origin identifier for an Order ID after it is saved in Order Service.

Origin in respect of Sterling Order Management System Software and Order Service

If you are using a single Order Service instance for your multiple Sterling Order Management System Software instances, ensure that only one of your Sterling Order Management System Software instances has origin identifier as void.

If an Sterling Order Management System Software instance is live with Order Service with origin identifier as void, then on that instance the origin identifier cannot be changed. Any new Sterling Order Management System Software instances to integrate to the same Order Service instance must set a unique origin identifier.

You must pass the origin identifier corresponding to the Sterling Order Management System Software instance where your e-commerce application pushes the orders, when:
  • You are saving orders in Order Service directly from an e-commerce application.
  • Multiple Sterling Order Management System Software instances are connected to a single Order Service instance.
This is necessary as the origin identifier for an order cannot be modified after it is saved in Order Service.

By default, the order index in Order Service has the origin.id field within orderId to store the origin identifier for the order. But if you configure any other origin attributes in your Sterling Order Management System Software instance, you must add those as sub-fields of origin in the order index. To do so, use either the createSearchIndex API while creating the index or the updateSearchIndex API to update the origin mappings before you send orders to Order Service.

For more information on configuring, saving, and reading an order with origin information, see Saving and reading an order with origin information. For more information on archiving and retrieving an order with origin information, see Archiving and retrieving an order with origin information.