- Post History
- Subscribe to RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
04-28-2024 04:09 PM - edited 07-11-2025 12:40 PM
In Customer Service Management (CSM), modelling Sold Products, Install Base Items, and Product Models—and integrating them into the CMDB—can be a complex activity. In this article, I aim to walk you through how to do it properly using a practical example.
We'll use a fictional company, AD Services, a provider of ITSM SaaS solutions, to demonstrate how to model these components effectively within the CMDB, following best practices aligned with the Common Service Data Model (CSDM).
let's start with how that SaaS provider models their SaaS product in the CMDB.
Our SaaS provider offers two IT service management services: Standard and Pro. Every solution depends on two application services: production environment and non-production environment. Our SaaS supplier sells just one product model, the ITSM Z20021 Acc build.
Here's how the CMDB model looks like
AD Services sold its ITSM Pro SaaS solution to Star Tech Services and provisioned two instances for them.
Star Tech Services has launched the SaaS solution and we want to enable AD Services to support Star Tech Services cases.
let's review what we have done so far
- We created a Product model named ITSM Z20021 Acc build in cmdb_model table
- we created one service in cmdb_ci_service
- we created two service offerings(PRO and Standard) both of them has the same model ID ITSM Z20021 Acc build
- We created two application services for Star Tech Services in cmdb_ci_service_auto
- all relationships between CMDB classes are aligned with CSDM
Let's design a sold product for Star Tech Services. But first, what is the sold product? According to ServiceNow docs, a record is used to track products or services sold to an account or consumer.
Since Star Tech Services purchased the ITSM Z20021 Acc build, we only need one sold product.
We will click on the Sold product module and hit new, populating the following.
- Name
- Product
- Account
- Contact
once we click on Save, the service offering field will automatically populated
Now we've created the sold product, which is linked to the service offering and product model. We need to put together an install-based item. According to the ServiceNow documentation, an install base item represents a product instance that has been configured for a customer. Therefore, each application service requires a separate install base item for the PROD and non-PROD instances.
We will click on the Install-based item module and hit new, populating the following.
- Name
- Product
- CI
- Account
- Contact
After creating an install-based item record, scroll down to the sold product related list and click edit to connect the sold product to the install-based item.
Here's my final model of how CMDB, Sold product, and install base item interact.
- 6,035 Views

- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
Thanks a lot @Ahmed Drar, this is well explained.
Two questions if I may.
- For a sold "service", would you recommend using a Service Model (cmdb_service_product_model) or stick to the generic class (cmdb_model)?
- I am confused about when to link an Install Base Item to an Asset vs. a Configuration Item. Could you shed some light on that?
Best,
JC
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
I use service model in this case.
Regarding the Asset vs. CI question, it really depends on what you are selling and whether you want track the sold product as asset or CI or both.
For example, if you’re a SaaS company selling cloud-based solutions, the installed base item might be an application service, and there would be no asset record. However, if you are an ISP and part of the Internet package includes providing a router, then one of your installed base items might include an asset, a CI, or both.
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
This is really helpful. Thanks a lot for taking time to share it!
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
Hi @Ahmed Drar ,
How can we automate this? Requirement is to automatically create an entry in sold product and install base and create a relation to the CI when the item is ordered.
Any help on this would be greatly appreciated.
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
How can we automate this? Requirement is to automatically create an entry in sold product and install base and create a relation to the CI when the item is ordered.
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
Thank Ahmed
Very helpful
As CMDB value is most of the time the receptacle of product/service, it can be too hard to distinguish data source of each item (product, service, application, etc...)
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
Thanks @Ahmed Drar. I am trying to setup a demo myself in my developer instance based on Zurich and found that I'm missing the product_model and the sn_install_base_sold_product tables (maybe others as well). I've installed the CSM product and the Install Base Management plug-in. According to ChatGPT ServiceNow split Install Base into “core sold product” and optional extended features in the Zurich release and I need Zurich Advanced Install Base / Product Model tables (with product_model and sn_install_base_component for CSM → CSDM alignment. Can you tell me which table you used for your Sold Product and elaborate on my question if possible?