ServiceNow Product Catalog Import and Export Functionality
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-05-2025 08:46 AM
ServiceNow Product Catalog Import and Export Functionality
Product Catalog Management allows your organization to organize product offerings into catalogs and categories, streamlining the ordering process and facilitating the management of leads, opportunities, quotes, and orders within Sales and Order Management.
Product Offering Catalogs and Categories
Product offering catalogs and categories provide a structured way to organize product, making it easier for agents to locate products for order creation.
- Product Offering Catalog: A hierarchical structure that organizes categories and product offerings.
- Product Offering Categories: Logical groupings of product offerings.
- Product Offerings: Tangible goods intangible services that can be customized.
- Characteristics and Characteristic Options: options developed based on customer preferences.
In ServiceNow, the concepts of Product, Service, and Resource Specification are essential for managing offerings and ensuring that organizations can effectively deliver value to their customers. Here’s a breakdown of each component:
- Product Specification
- Definition: A product specification outlines the details of a tangible or intangible item that can be offered to customers. This includes physical goods, software applications, or any other deliverable that can be ordered.
- Key Components:
- Name and Description: Clear identification and explanation of the product.
- Pricing Information: Details about costs, discounts, and pricing models.
- Configuration Options: Customization features that allow customers to tailor the to their needs.
- Availability: Information on stock levels or service availability.
- Service Specification
- Definition: A service specification describes the services provided by the organization, detailing how these services meet customer needs and expectations.
- Key Components:
- Service Name and Description: A clear title and detailed explanation of the service.
-Service Level Agreements (SLAs): Commitments regarding service delivery times, quality, and performance metrics.
- Service Categories: Grouping of services for easier navigation and management.
- Support and Maintenance: Information on how the service will be supported post-delivery.
3 Resource Specification
- Definition: Resource specifications refer to the assets, personnel, and technology required to deliver products and services effectively- Key Components:
- Resource Types: Different categories of resources, such as human resources, hardware, software, and infrastructure.
In ServiceNow, these specifications are integrated into the broader framework of IT Service Management (IT) and other modules. This integration allows organizations to:
- Streamline Ordering: By clearly defining products and services, organizations can simplify the ordering process for agents and customers.
- Enhance Visibility: Detailed specifications provide visibility into what is being offered, helping agents make informed decisions.
-Improve Service Delivery: By understanding the resources required for each product and service, organizations can optimize their operations and ensure timely delivery.
The Product, Service, and Resource Specifications in ServiceNow are crucial for effective catalog management, enabling organizations to deliver high-quality offerings while maintaining operational efficiency. By clearly defining these elements, businesses can enhance customer satisfaction and streamline their service delivery processes.
Versioned Modeling:
In ServiceNow, product offerings are structured around Product Specifications, Service Specifications, Resource Specifications, and Specification Characteristics.
All entities, such as offerings and specifications, are version. When modifications are made to a product, a new version must be created, assigned to its parent product, and then a new version of the offering is published.
Whenever a new version of an offering is created, it automatically generates entries in over 30 tables.
Table | Purpose |
sn_prd_pm_product_offering | Manage Product Offering details |
sn_prd_pm_product_specification | Product Specification |
sn_prd_pm_product_offering_characteristic | Product Offering Characteristic |
sn_prd_pm_product_offering_category_relationship | Product Offering Category |
sn_prd_pm_specification_category | Specification Category |
sn_prd_pm_specification_relationship | Specification Relationship |
sn_prd_pm_specification_characteristic | Specification Characteristic |
sn_prd_pm_characteristic | Characteristic |
sn_prd_pm_characteristic_option | Characteristic Options |
sn_prd_pm_product_offering_relationship | Product Offering Relationship |
sn_prd_pm_specification | Specification |
sn_prd_pm_service_specification | Service Specification |
sn_prd_pm_resource_specification | Resource Specification |
sn_prd_pm_product_offering_catalog | Product Offering Catalog |
sn_prd_pm_catalog_category_relationship | Catalog Category |
sn_compt_mgmt_compatibility_rule |
|
sn_prd_pm_uom_class |
|
sn_prd_pm_uom | Unit of Measure |
sn_prd_pm_product_offering_category | Product Offering Category |
sn_prd_pm_category_category_relationship |
|
sn_prd_pm_template |
|
sn_prd_pm_template_characteristic |
|
sn_attr_prp_mgmt_attribute_mapping | Attribute Mapping |
sn_compt_mgmt_compatibles |
|
sn_compt_mgmt_compatible_configuration |
|
sn_ind_tmt_orm_order_decomposition_rule | Decomposition Rule |
sn_prd_pm_characteristic_option_quantity_mapping | Quantity Mapping |
sn_prd_pm_configuration |
|
sn_prd_pm_distribution_channel |
|
sn_prd_pm_product_offering_relationship_characteristic |
|
sn_prd_pm_product_offering_relationship_group |
|
sn_prd_pm_product_offering_uom |
|
sn_prd_pm_template_characteristic_option |
|
sn_prd_pm_visuals |
|
Manually importing these records into higher instances can be challenging, so ServiceNow offers an out-of-the-box (OOB) that allows to export and import product catalog entities between instances of ServiceNow.
ServiceNow has provided the documentation: https://www.servicenow.com/docs/bundle/yokohama-order-management/page/product/tmt-order-mgt/concept/...
In addition to the documentation, I would like to share best practices derived from my organization's experience.
Prerequisites for Product Import/Export:
- Execute One – Time Job:
In the Washington DC release, a Code field was introduced for the primary product catalog entities. If the Code field values for these catalog entities are empty after upgrading to the Washington DC release, execute both a fix script and an on-demand scheduled job to populate the Code field values for the main product catalog entities.
- Fix Scripts: Populate Code Field (Application: Product Catalog Management Core)
- Scheduled Jobs: (Application: Product Catalog Management Core)
- Schedule job to modify code field on characteristic records that contain special characters
- Schedule job to populate code field on master entities
- Schedule Job with upgrade script to populate code
- ETL Mappings:
To meet business requirements, we may need to add a custom field to the product entities that must be migrated to higher instances. To facilitate the migration of these custom fields, we need to include them in the ETL entities.
There are three areas in target instance that require modifications to accommodate a custom field in the Product Specification:
- ETL Entity: Import - Add customized fields (table: sys_rteeb_etl_entity).
- ETL Entity: Product Specification - Add customized fields (table: sys_rte_eb_etl_entity).
- RTE Field Mappings (table: sys_rte_eb_entity_mapping) - Create mappings between the Import and Product entities, such as Product Specification.
- Note: ETL mappings should also be included for child tables. For instance, if a new column is added to the Specification Table (which is the parent for the Product, Service, and Resource Specification Tables), ETL mappings must be defined for all Product, Service, and Resource Specification Tables.
Migration of Product Entities:
- Export from the Source Environment:
- Navigate to CSM/FSM Configurable Workspace.
- Select the Export Entities and click on the Export Hierarchy button.
- Select the offering and click on the Export button.
- Provide the file name and description.
- Go to the Export Entities View and refresh List to see the record.
- Drill down on the record to see the JSON file which consist of the entries from all the related product tables. Download the file and we use it to migrate into the higher instance.
2. Import into Target Environment:
- Login to the Target Instance, and navigate to Product Catalog Management – Import View
- Attached the download JSON file and make sure Type = Custom (Load by Script)
- In the Related Links, Click on the Load All Records.
- Click on Run Robust Transform, which will insert the records into the target tables.
Best Practices to avoid errors during Migration:
- Always create a new version for every change made to a product. The Import Package will bypass any objects with a status of "Published," meaning your changes will not be reflected in the target system.
- Make all modifications to the product exclusively in one environment, specifically the Development Environment, avoid making changes in the higher environments.
- If you encounter any issues importing products into the target system, resolve the issue and delete the affected entities, such as Product Offering and Product Specification, attempting the import again into Target System.
- Avoid changing the Characteristic Type, as this requires backend modifications and the deletion of characteristic options.
- Avoid renaming the Characteristic, as this requires backend modifications.
- Avoid creation of records with the same Code Field through backend.
Possible Error Messages During Import:
The error messages are technical in nature, and the explanation below detailed insights into each one.
Message | Notes |
Error occurred while running transform | No Attached file within Catalog Import. |
Operation against file 'sn_prd_pm_characteristic' was aborted by Business Rule 'Validate update on characteristics^XXXXXXXXXXXXXXXX'. Business Rule Stack:Validate update on chararacteristics | Specificiations (Product/Service/Resouce) have characteristics and existed in target instance. As specificiation has characteristic data, import job will insert or update imported characteristic. |
Operation against file 'sn_prd_pm_characteristic_option' was aborted by Business Rule 'Validate options | Specificiations (Product/Service/Resouce) have characteristic options and existed in target instance. As specificiation has characteristic option data, import job will insert or update imported characteristic option. |
Error during insert of sn_prd_pm_characteristic (Characteristic_name) | Charcteristic name contains invalid character/s. |
Operation against file 'sn_prd_pm_product_offering_characteristic' was aborted by Business Rule 'Validate update on POC^XXXXXXXXXXXXXXXXXX'. Business Rule Stack:Validate update on POC | Business rule "Validate update on POC" validates whether the right product offering for product offering characteristic. It could be caused by invalid product offering. |
Operation against file 'sn_prd_pm_product_offering' was aborted by Business Rule 'Enforce code and version as unique^XXXXXXXXXXXXXXXXXX'. Business Rule Stack:Enforce code and version as unique | No duplicated version and code is allowed for product offering |
Operation against file 'sn_prd_pm_product_offering_category_relationship' was aborted by Business Rule 'Check leaf category^XXXXXXXXXXXXXXXXXX'. Business Rule Stack:Check leaf category | Associated product offering category has not been imported. Need import catalog entity, which contains the category. Need import catalog entity. |
Operation against file 'sn_prd_pm_product_specification' was aborted by Business Rule 'Enforce code and version as unique^XXXXXXXXXXXXXXXXXX'. Business Rule Stack:Enforce code and version as unique | No duplicated version and code is allowed for product specification. |
Operation against file 'sn_prd_pm_product_specification' was aborted by Business Rule 'Validate status change^XXXXXXXXXXXXXXXXXX'. Business Rule Stack:Validate status change | Product/Service/Resource Specification supports life cycle. Statuses can have draft, pubished, retired and archived. status need be changed sequentially. For example, from published to retired. |
Operation against file 'sn_prd_pm_service_specification' was aborted by Business Rule 'Validate status change^XXXXXXXXXXXXXXXXXX'. Business Rule Stack:Validate status change | Product/Service/Resource Specification supports life cycle. Statuses can have draft, pubished, retired and archived. status need be changed sequentially. For example, from published to retired. |
Operation against file 'sn_prd_pm_specification_characteristic' was aborted by Business Rule 'Validate Specification State^XXXXXXXXXXXXXXXXXX'. Business Rule Stack:Validate Specification State | Only draft status's Product/Service/Resource Specification is allowed to modify specification characteristic. |
Operation against file 'sn_prd_pm_specification_relationship' was aborted by Business Rule 'Validate Specification Relationship^XXXXXXXXXXXXXXXXXX'. Business Rule Stack:Validate Specification Relationship | The status of target specification need be "published" specification. "draft" status of specification is now allowed. |
Additional Details:
As part of the development process, we often create multiple product versions. During product migration, the system is expected to transfer all versions to higher environments, including Production.
Ideally, only well-qualified and tested version should be migrated to the higher instance.
We received a custom solution from ServiceNow to bypass this validation, ensuring that only the final version of the product is sent to Production.
Regards
Vijay Musipatla @vijaymusipatla