Product Catalog Extension
The Product Catalog RS Gateway extension is a set of APIs that allow users to control the visibility of catalog items to the subscriber (eligibility), and to control which catalog items can be purchased together (compatibility).
The Product Catalog RS Gateway extension uses catalog item metadata to control purchase offer eligibility and compatibility for different catalog items.
During pricing configuration, pricing administrators can control catalog item eligibility
and compatibility by creating custom metadata tags for catalog items using the following
exact metadata names:
- requires — Defines a requirement for item eligibility or item compatibility.
- excludes — Defines an exclusion for item eligibility or item compatibility.
- provides — Defines a provision that is included with the purchase of the catalog item for item compatibility.
Catalog Item Eligibility Configuration
You can define catalog item eligibility for subscribers, groups, or devices. You
define eligibility for a catalog item by specifying custom
requires or excludes metadata tags
for the item, where the metadata Value field for:
- requires — Defines a required field value that the subscriber, group, or device must have for the catalog item to be eligible to the caller.
- excludes — Defines a field value that means that the caller is not eligible for the catalog item if the subscriber, group, or device has that value.
The metadata Value property must be specified as a string
using the following
format:
Subscriber׀Group׀Device.<fieldname>=[string_value]
Where fieldname is an existing subscriber, group, or device field,
or a custom extension field, and string_value is set to the value
to use for determining if the caller is eligible for the catalog item, or if the
catalog item should be excluded.
Note: Custom extension fields are defined in private
mdcs. For information about adding private mdcs, see Installation and Configuration.
Eligibility Example
In this example, eligibility requirements and exclusions are used to control whether
catalog items 1 and 2 are visible to callers. The eligibility for the catalog items
in this example is based on the following subscriber fields:
- A subscriber custom extension field named Level.
- The existing subscriber Status field.
Table 1 shows the metadata configured for catalog item 1
and catalog item 2.
The metadata configured for Catalog Item 1 means that a caller is eligible
to purchase Catalog Item 1 only if the
Metadata Properties | Catalog Item 1 | Catalog Item 2 |
---|---|---|
Metadata Type | Custom | Custom |
Name | requires | excludes |
Type | String | String |
Value | Subscriber.Level.vip, Subscriber.Status.1 | Subscriber.Level.newcustomer, Subscriber.Status.1 |
Subscriber.Level
extension
field is set to vip, and the Subscriber.Status
field is set to 1
(for active subscribers).The metadata configured for Catalog Item 2 means that a caller may not purchase
Catalog Item 2 if the Subscriber.Level
extension field is set to
newcustomer
, and the Subscriber.Status
field
is set to 1.
Catalog Item Compatibility Configuration
You can define catalog item compatibility to control which set of catalog items can
be combined together for a caller. You define catalog item complatibility by
specifying custom requires and
provides metadata tags for the catalog items in the set,
where the metadata Value field for:
- requires — Defines a required item that the subscriber, group, or device must have within the set of already purchased items, or be about to be purchased items, for this catalog item to be compatible.
- provides — Defines an item that is provided when the catalog item is purchased.
- excludes — Defines an item in the catalog item set that the subscriber, group, or device must not have already purchased, or be about to purchase, for this catalog item to be compatible.
- provides — Defines an item that is provided when the catalog item is purchased.
Note: The
Product Catalog extension uses the provides tag value to
determine catalog item compatibility.
Compatibility Examples
Table 2 shows metadata configured for catalog item 1 and
catalog item 2. In this example, if the subscriber purchases catalog item 2, the
DataBundle is provided. This means that the DataBundle combatibility requirement for
catalog item 1 is met, and therefore the subscriber can also purchase catalog item
1.
Metadata Properties | Catalog Item 1 | Catalog Item 2 |
---|---|---|
Metadata Type | Custom | Custom |
Name | requires | provides |
Type | String | String |
Value | DataBundle | DataBundle |
Table 3 shows metadata configured for catalog item 3 and
catalog item 4. In this example, if the subscriber purchases catalog item 4, the
DataBundle is provided. Because the DataBundle is excluded for catalog item 3, this
means that catalog item 4 and catalog item 3 are not compatible and therefore the
subscriber cannot also purchase catalog item 3.
Metadata Properties | Catalog Item 3 | Catalog Item 4 |
---|---|---|
Metadata Type | Custom | Custom |
Name | excludes | provides |
Type | String | String |
Value | DataBundle | DataBundle |