Bundle APIs and Status Life Cycles

The same APIs used for purchasing and canceling an offer catalog item are used for purchasing and canceling a bundle catalog item.

These APIs include:
  • MtxRequestSubscriberPurchaseOffer
  • MtxRequestSubscriberCancelOffer
  • MtxRequestGroupPurchaseOffer
  • MtxRequestGroupCancelOffer
  • MtxRequestDevicePurchaseOffer
  • MtxRequestDeviceCancelOffer
When using the product offer APIs, you do not indicate whether a product offer catalog item or a bundle catalog item is being purchased or canceled. However, object queries (subscription, group, or device) identify the type of catalog item purchased in the OfferType element.
The OfferType values are:
  • 1 = Purchased offer.
  • 2 = Purchased bundle.
  • 3 = Bundled purchase offer.

In addition, if an offer is part of a bundle when the catalog item is purchased, the ParentResourceId field indicates the resource ID of the bundle. If an offer catalog item was purchased individually, the ParentResourceId is zero (null).

For more information about purchasing bundle catalog items, see the discussion about purchasing bundles. For more information about canceling bundles, see the discussion about canceling bundles.

When querying a subscription, group, or device, all purchased catalog items are listed.

During the following status life cycle transition actions, purchased offers and purchased bundles may be suspended or resumed.
  • MtxStatusActionSuspendAllOffer
  • MtxStatusActionResumeAllOffer
If a state transition causes a bundle to be suspended, all the offers within the bundle that can be suspended are suspended.