what is "mandatory to be configured"?
Do you mean to define a minimum qty in bundledGroupProductOffering
("box") to make a product group mandatory but still let customer select and configure a product ("box 1", "box 2") that exist in that Group?
A minimum qty on the bundledProductOfferingOption
alone would also make a product "mandatory" but not "configurable" in the sense that customers has options to choose from.
Yes, both possibilities. Plus, in our implementation "related offerings" also have min/max/default (extension of the API). The difference between bundled and related offerings from the product catalog point of view is only in the relationship type - some types are marked as bundles.
The idea is that with the first create/post 760 invocation you don't get all possible bundled/related offerings, but minimum configuration only. Of course, during the process of product configuration, the "minimum" configuration may change. For example, depending on the selection of bundled offerings and/or characteristic values, group cardinalities may change.
We also extended BundledGroupProductOffering with an extra attribute that instructs the product configurator to present this group as a part of the minimum configuration even if the group is not mandatory. This is useful when most customers choose an optional bundled offering even though the choice is optional. This way, you save the user some extra clicks.
I assume there is a little bug in the definition as it should say "from the same CheckProductConfiguration or QueryProductConfiguration"
Yes, should apply to both - check and query.
We still haven't run the certification on the tmf760, it's under development, so unfortunately I can't provide any API responses.
------------------------------
Bostjan Keber
Marand, software ltd
------------------------------
Original Message:
Sent: Jun 24, 2025 10:30
From: Matthieu Hattab
Subject: TMF760 and performance
hi @Bostjan Keber,
Great insightful tips on product modelling (bundled vs product relationships for long list of handsets offers).
the initial configuration includes only bundled and related product offerings that are mandatory to be configured as a part of the base offering
what is "mandatory to be configured"?
Do you mean to define a minimum qty in bundledGroupProductOffering
("box") to make a product group mandatory but still let customer select and configure a product ("box 1", "box 2") that exist in that Group?
A minimum qty on the bundledProductOfferingOption
alone would also make a product "mandatory" but not "configurable" in the sense that customers has options to choose from.
- Do you have an example of a
QueryProductConfiguration
response for a bundle that contains an optional and a mandatory bundle in bundledProductOfferingOption
?
(curious to see how is the payload is optimised in the case of "bundled bundles") - Do you have an example of a
QueryProductConfiguration
response for a product offering that has related product offerings (e.g. your example of mobile handset add-on).- the guide says:
- I assume there is a little bug in the definition as it should say "from the same CheckProductConfiguration or QueryProductConfiguration"
- the "Fiber contract" bundle example (UC003 from IG1228) is not using
ProductConfigurationItemRelationship
for any bundle, add-on etc relationships except between the "request" id and the "compute" id with a role called "requestItem":
@Peter Rajsky if you look in the TMF760 OAS file, we have an example for UC003 from IG1228.
You will see that the bundle offers 2 STBs. One is selected (box 1) and the other isn't (box 2)
you will notice some payload optimisation for box 2. (configurationCharacteristic
node is absent on box 2)
------------------------------
Kind regards,
Matthieu Hattab
Digital Sales Domain Architect
Lyse Tele AS
Original Message:
Sent: Jun 23, 2025 12:06
From: Bostjan Keber
Subject: TMF760 and performance
We do optimize payloads in the way that the initial configuration includes only bundled and related product offerings that are mandatory to be configured as a part of the base offering. For example, when picking a mobile tariff plan (offering), the TMF760 post/create invocation returns a minimum response needed to configure the plan. If a selection of a handset is part of the minimum configuration, there would be a list of devices, but typically, this is not the case as the list is usually pretty comprehensive (wide range of devices).
We usually model devices as add-ons (related to base product offerings with a relationship of type "add-on"). Once the base product offering is configured, the user gets an option to configure add-ons. TMF679 is used to determine commercial eligibility (i.e. determine the handset at the right price / subsidy depending on the base plan). To limit payloads, input arguments are offering category or part of product offering name. The response is paginated.
An exception where devices would be bundled offerings, are, for example, STB offerings. IPTV cannot be configured without an STB (or smart TV app), so a selection of an STB product offering would be obligatory on the configuration screen. Meaning - these offerings would be modeled as bundled offerings under the IPTV offering (usually bundled under an n-play package offering). But then - there are usually very few STB offerings to choose from (unlike handsets).
------------------------------
Bostjan Keber
Marand, software ltd
Original Message:
Sent: Jun 20, 2025 00:02
From: Peter Rajsky
Subject: TMF760 and performance
Dear community.
I understand that there can be two different options (or more) how to model mobile offer in the product catalog and TMF760 seems to support both of them:
- As a bundled offering - customer can "select" add-ons and subsidized device using hierarchical structure of QueryProductConfiguration.queryProductConfigurationItem.
- As a flat list of simple offerings with relationships (compatible, requires, etc) - TMF provides list of QueryProductConfiguration.requestProductConfigurationItem on the input.
Typically there is configuration "wizard" in eShop/shop assistant UI. Customer can define his requested configuration in the mutiple steps:
- He chooses tariff
- He selects subsidized device from the HUGE list of devices (based on many features)
- He selects add-ons
It seems to me that TMF760 is naturally optimized for option #2. TMF760 API can be used to query list of devices based on the selected tariff and other criterias.
Unfortunatelly, I do not have experience with option #1. What is the best practice to avoid huge responses?
- A) Should we return partial product configuration without device nodes based on the context (e.g. wizard step, specified criteria)?
- B) Should we model indirection to support something as "lazy loading"? E.g. extend BundledProducfOffering to specify that customer can buy devices from the specified category and using the defined pricelist.
- C) Any other?
Thanks a lot.
------------------------------
Peter Rajsky
CGI Information Systems and Management Consultants Inc.
------------------------------