Skip to main content

Overview

The DVM™ sends notifications to your system whenever a Consumer Offer or Entitlement changes state. These notifications allow you to react in real time to subscription lifecycle events — provisioning outcomes, cancellations, activations, and product changes — and take the appropriate action for your consumers. There are two categories of notification covered on this page:

Consumer Offer Notifications

Triggered when the overall status of a Consumer Offer changes — for example when all entitlements are created, or when a cancellation completes.

Entitlement Notifications

Triggered when an individual Entitlement changes state — for example when a consumer activates their product, or when their access is terminated.
Billing-related notifications — including renewal charges, pro-rated charges, and refund outcomes — are covered separately on the Billing & Charging Notifications page.

Consumer Offer notifications

A Consumer Offer is the top-level object that represents a consumer’s subscription. The DVM™ sends a notification whenever the overall status of the Offer changes — whether provisioning succeeds, partially fails, or cancellation is scheduled or completed.

Notification types

Offer Created

All entitlements in the Offer were successfully created. The consumer now has access to all purchased services. notificationReason: CONSUMER_OFFER_CREATED

Offer Partially Created

At least one entitlement was created and at least one failed. The Reseller must review and decide whether to retry, notify the consumer, or cancel. notificationReason: CONSUMER_OFFER_PARTIALLY_CREATED

Cancel Pending

Cancellation has been scheduled. The Offer remains active but is marked with sub-status PENDING_CANCELS. notificationReason: CONSUMER_OFFER_CANCEL_PENDING

Offer canceled

All entitlements have been successfully terminated. The consumer no longer has access to any purchased services. notificationReason: CONSUMER_OFFER_CANCELLED

Offer Partially Cancelled

At least one entitlement was terminated and at least one was not. The Reseller must review which products are fully terminated and apply the appropriate access rules. notificationReason: CONSUMER_OFFER_PARTIALLY_CANCELLED

Examples

Sent when all entitlements in the Offer are successfully created. The Offer status is FULLY_CREATED and all entitlements have status CREATED. The Reseller can safely assume the consumer now has access to all purchased services.
Sent when at least one entitlement was created successfully and at least one failed. The Offer status is PARTIALLY_CREATED. The Reseller must review the entitlements array to identify which products failed and decide whether to retry, notify the consumer, or cancel the Offer.
Sent when a cancellation is initiated and the scheduling service successfully schedules it. The Offer status does not change but the sub-status moves to PENDING_CANCELS. The plannedCancellationTs indicates when the cancellation is due to complete.
Sent when all entitlements in the Offer have been successfully terminated. The Offer status is FULLY_CANCELED and all entitlements have status ENDED. The Reseller can safely assume the consumer no longer has access to any purchased services.
Sent when at least one entitlement was terminated and at least one was not. The Offer status is PARTIALLY_CANCELED. The Reseller must review the entitlements array to determine which products are fully terminated and apply the appropriate product access and business rules.

What to do with Consumer Offer notifications


Entitlement notifications

An Entitlement represents an individual consumer’s access to a specific product tier provisioned as part of a Consumer Offer. The DVM™ sends a notification whenever an Entitlement changes state — from activation through to termination and product changes.

Notification types

Activation Success

The consumer’s entitlement has been activated and they now have active access to the product. notificationReason: ACTIVATION_SUCCESS

Termination Pending

The entitlement is pending termination at a future date. Access continues until the termination date is reached. notificationReason: TERMINATION_PENDING

Termination Success

The entitlement has ended. The consumer’s access to the product has been removed. notificationReason: TERMINATION_SUCCESS

Product Update

The product the consumer has access to has changed — for example following an upgrade, downgrade, or catalog change. The productKey is updated to the new value. notificationReason: PRODUCT_UPDATE

Metadata Update

Metadata on the entitlement has been successfully updated. notificationReason: METADATA_UPDATE

Entitlement notification payload structure

All entitlement notifications follow the same structure. Fields may vary slightly depending on the event.

Examples

Sent when the consumer’s entitlement has been successfully activated. The entitlement status is Active. Use this notification to confirm to the consumer that their product is ready to use.
Sent when the consumer’s entitlement is scheduled for termination at a future date. The entitlement status is Active-Ending — the consumer still has access until the termination date. A TERMINATION_SUCCESS notification will follow when termination completes.
Sent when the consumer’s entitlement has been successfully terminated. The entitlement status is Cancelled or Revoked. The consumer no longer has access to the product.
Sent when the product associated with the entitlement has changed — for example following an upgrade or downgrade. The productKey is updated to reflect the consumer’s new product tier. Use this notification to update your records and surface the change to the consumer.
Sent when metadata on the entitlement has been successfully updated. This notification signals that non-product, non-status attributes on the entitlement have changed — for example custom data, source information, or extension fields. Use this notification to keep your records in sync with the latest entitlement metadata.

What to do with Entitlement notifications


Key fields explained

string
required
Identifies the notification type. See the tables above for all possible values across Consumer Offer and Entitlement notifications.
string
Present on Consumer Offer notifications. The overall status of the Consumer Offer. Key values: FULLY_CREATED, PARTIALLY_CREATED, FULLY_CANCELED, PARTIALLY_CANCELED.
string
Present on Consumer Offer notifications where a transitional state applies. For example PENDING_CANCELS when a cancellation has been scheduled but not yet completed.
object
Contains key timestamps for the Consumer Offer lifecycle — including createdTs, terminatedTs, and plannedCancellationTs where applicable.
array
Present on Consumer Offer notifications. An array of all entitlements associated with the Offer, each with its own entitlementId, status, subStatus, productKey, and merchantAccountKey. Check each entry individually when handling partial creation or partial cancellation notifications.
string
Present on Entitlement notifications. The unique identifier of the entitlement that changed state.
string
Present on Entitlement notifications. The product key associated with the entitlement. Updated to the new value on PRODUCT_UPDATE notifications.
string
Present on Entitlement notifications. The current status of the entitlement. Key values: Active, Active-Ending, Cancelled, Revoked.
object
Present on Consumer Offer notifications. Contains emailAddress and msisdn for the consumer — useful for triggering downstream consumer communications.