Device Cancel Offer

Request to cancel one or more product offers associated with a device. Canceling a product offer directly associated with a device makes the product offer invalid.

To prevent bill shock, the PurchaseOffer and CancelOffer SubMan APIs can be called in advice mode (Advice of Charge) to estimate the cost of the purchase or cancelation. Response APIs describes the response SubMan APIs.
Table 1. Response APIs
Response Description
PurchaseOffer APIs When a PurchaseOffer SubMan API is called in advice mode, the response includes estimates for the purchase cost (charge and tax), any recurring charges, the amounts of granted assets, the cost of financing for a given down payment, including the principal amount financed, and the amount and number of installments in the finance contract offer.
CancelOffer APIs When a CancelOffer SubMan API is called in advice mode, the response includes estimates for the cancelation cost (charge and tax), the amount of the refund for any recurring charges, the amounts of forfeited assets, or the early termination charges in the finance contract.

For more information about execute mode, see the discussion about execute mode in the SubMan API overview.

Canceling Offers

If you specify a CancelType of balance_cycle (3) in MtxCancelOfferData, MATRIXX Engine calculates the CancelEndTime for the cancel operation using all required balances associated with the catalog item. This sets the CancelEndTime to the latest value associated with all required balance periods. For example,
  • CancelEndTime=now
  • For each required balance:
    • Simple balance with EndTime:
      • CancelEndTime = max(CancelEndTime, simpleBalance.EndTime)
    • Periodic balance:
      • CancelEndTime = max(CancelEndTime, periodicBalance.CurrentPeriodEndTime)

For more information about managing offers, see the discussion about product offer REST APIs.

When a product offer is cancelled, an MtxCancelEvent EDR is generated. The MtxCancelEvent EDR can be triggered by a system-initiated task or by any of the following SubMan API calls:
  • DeviceCancelOffer
  • SubscriCancelOffer
  • GroupCancelOffer

The IsSysInit boolean field in the MtxCancelEvent EDR is set to "False" when the EDR is triggered by one of these SubMan API calls. When the EDR is triggered by a system-initiated task, IsSysInit is set to "True".

Cancelling Purchase Packages

Call the CancelOffer SubMan APIs to cancel all purchased items in a purchase package. Specify the ResourceId of the purchase package to cancel a purchase package. If event generation is enabled, an MtxCancelEvent EDR is generated. If subscriber_purchase_package_cancel, group_purchase_package_cancel, or device_purchase_package_cancel notification types are enabled, MtxPurchasePackageCancelNotification notification are generated.

For more information about EDRs and notifications, see MATRIXX Integration.

The following example shows how to cancel offers with resource IDs 3 and 7 for device OID 0-1-5-7 using the optional advice execute mode.
URL
DELETE http://host:port/rsgateway/data/v3/device/0-1-5-7/offers/3,7?executeMode=2