MtxEventChargeNormalizationInfo MDC

For normalizing on the information related to each charge record, information in the MtxEventChargeNormalizationInfo MATRIXX Data Container (MDC) includes the following:

  • The type of balance impact (charge, discount, grant, cancelation refund, cancelation forfeiture, adjustment, forfeiture, transfer to, transfer from, rollover to, rollover from, tax, cancelation tax refund, usage tax refund, debt balance).
  • The top-level event type (usage, first-use, purchase, and recurring).
  • The hasDeferredRevenue field, set to 0 for immediate revenue recognition, or 1 for straight-line, consumption-based, or pending recognition.
  • The ID and name of the currency balance class.
  • The ID and name of the currency balance template.
  • The amount of the currency impact.
  • The payment type for the purchase.
  • The tax class ID.
  • The tax class name.
  • The tax class rate.
Note: The tax class ID, name, and rate are set only for the balance impact type tax, cancelation tax refund, and usage tax refund. These fields are only populated when tax class taxation is used. For more information, see the discussion about taxation in MATRIXX Pricing and Rating.
If the charge pays for an asset, then the container includes the following:
  • The ID and name of the asset balance class.
  • The ID and name of the asset balance template.
  • The amount of the asset granted.
If the charge record is associated with an applied product offer, then the container also includes the following:
  • The numeric pricing ID of the product offer.
  • The external ID of the product offer.
  • The product offer version.
  • The external ID of the product offer version.
If the charge record is associated with a catalog item, then the container also includes the following:
  • The pricing catalog item ID.
  • The external catalog item ID.
If the charge record includes a balance transfer, then the container includes the following:
  • The adjustment type (either to or from the event initiator).
  • The adjustment reason.
  • The transfer reason.

If a balance is updated, the container indicates if the charge impacts are on a rollover balance.

If the charge record is generated by components in a bundle, the ImpactSource field is set to 2 (bundle) and the container also includes the following:
  • The bundle ID.
  • The bundle external ID.
  • The bundle version.
  • The bundle version external ID.
Note: Separate charge records and GL information are generated for product offer components and bundle components, even if the product offer and bundle are for the same balance instance and balance impact type (charge, discount, grant, and so forth).
If US taxation is enabled, the container includes the following:
  • The tax type.
  • The tax category.
  • The tax authority ID.
  • The tax product group.
  • The tax product group item code.
  • Whether tax is paid by the customer or the carrier.
Note: These fields are only populated when US taxation is used. For more information, see the discussion about taxation in MATRIXX Pricing and Rating.
The MtxEventChargeNormalizationInfo MDC includes the fields listed in MtxEventChargeNormalizationInfo Fields.
Table 1. MtxEventChargeNormalizationInfo Fields
Field Type Description
AdjustReason STRING The reason for the adjustment. Set only for balance adjustments. Not set for top-ups.
AdjustType UINT16 The type of adjustment to apply. Set only for balance adjustments and balance transfers. Values are:
  • 1 — Credit Balance
  • 2 — Debit Balance
  • 4 — Top up
Amount DECIMAL The impact amount.
AssetAmount DECIMAL The amount of asset purchased. Set only if the charge purchased an asset.
AssetBalanceClassId UINT32 Set only if the charge purchased an asset. Balance class ID of asset balance.
AssetBalanceClassName STRING Set only if the charge purchased an asset. Balance class name of asset balance
AssetBalanceTemplateId UINT64 Set only if the charge purchased an asset. Pricing ID of currency balance template.
AssetBalanceTemplateName STRING Set only if the charge purchased an asset. Name of asset balance template.
BalanceClassId UINT32 Balance class ID of currency balance.
BalanceClassName STRING Balance class name of currency balance.
BalanceTemplateId UINT64 Pricing ID of currency balance template.
BalanceTemplateName STRING Name of currency balance template.
BilledToCustomer UINT8 Set only if US taxation is enabled.
Specifies whether the tax is paid by the customer of carrier. Values are:
  • 1 — tax paid by customer
  • 0 — tax paid by carrier
BundleExternalId STRING The external ID of the bundle. Set only if event charge is associated with an applied offer that was purchased as part of a bundle.
BundleId UINT64 The pricing object ID. Set only if event charge is associated with an applied offer that was purchased as part of a bundle.
BundleVersion UINT32 The version of the bundle. Set only if the event charge is associated with an applied offer that was purchased as part of a bundle.
BundleVersionExternalId STRING The external ID of the bundle version. Set only if event charge is associated with an applied offer that was purchased as part of a bundle.
CancelReason STRING The reason for the cancelation. Set only for cancelations.
CatalogItemExternalId STRING The external catalog item ID string. Only set when it is present on the relevant catalog item.
CatalogItemId UINT64 The pricing object ID of catalog item. The value does not include the object type bit field. This value is always set except applicable. It is not set when a global offer is applied.
ChargeProductOfferId UINT64 The pricing object ID of the product offer that has charge or tax impacts to which the discount is applied. The pricing object ID does not include the object type bit field. This field is set only if the balance impact is Discount.
ChargeProductOfferId UINT64 This field is set to pricing object ID of applied offer for the charge component. The value does not include the object type bit field. This field is set only if the event charge is associated with an applied offer.
ChargeRateTagExternalId STRING Set only if event charge is for a discount that is associated with a charge rate tag. Value is the external ID field of the rate tag object.
ChargeRateTagId UINT64 Set only if event charge is for a discount that is associated with a charge rate tag. Value is the pricing object ID of the rate tag object. The value does not include the object type bit field.
ChargeRateTagName STRING Set only if event charge is for a discount that is associated with a charge rate tag. Value is the tag field of the rate tag object.
DebtBalanceType UINT8 Indicates the debt type. Possible values are defined in EventDebtBalanceSubtype subtype. Values are:
  • 0 — not debt
  • 1 — fee debt
  • 2 — purchase debt
  • 3 — recurring debt
  • 4 — contract debt
EventType UINT32 Top-level event type. Values are the MATRIXX defined values for the top-level of event types.
GlTxnType UINT32 Set only during calculations of General Ledger (GL) account names. Holds the calculated GL transaction type.
Note: The GL transaction type is calculated before the GL account names. It is available so that normalizations can use it in the generation of GL account names.
HasDeferredRevenueRecognition UINT8 Whether revenue recognition is to be deferred. Values are:
  • 0 — not deferred
  • 1 — is deferred
ImpactSource UINT8 The source of the balance impact:
  • 1 — product offer
  • 2 — bundle
PaymentReason STRING The reason for the payment. Set for Pay Now payments, Contract Debt payments, or payments from External Payment Requests.
PaymentType UINT8
  • 1 — Pay On Account
  • 2 — Pay Now
  • 3 — External Payment Request
ProductOfferExternalId STRING The external ID of the product offer. Set only if the charge is associated with a product offer.
ProductOfferId UINT64 The pricing ID of the product offer. Set only if the charge is associated with a product offer.
ProductOfferVersion UINT32 The version of the product offer. Set only if the charge is associated with a product offer.
ProductOfferVersionExternalId STRING The external ID of the product offer version. Set only if the charge is associated with a product offer.
PurchaseReason STRING The reason for the purchase. Set only for purchase.
RateTagExternalId STRING Set only if event charge is associated with an applied rate tag. Value is the external ID field of the rate tag object.
RateTagId UINT64 Set only if event charge is associated with an applied rate tag. Value is the pricing object ID of the rate tag object. The value does not include the object type bit field.
RateTagName STRING Set only if event charge is associated with an applied rate tag. Value is the tag field of the rate tag object.
RechargeAttr MtxRechargeExtension Extension object with custom attributes passed during recharge.
RechargeReason STRING The reason for the recharge. Set only for recharges.
RefundReason STRING The reason for the refund. Set only for Pay Now refunds.
RolloverBalanceType UINT8 Indicates if the charge impacts are on a rollover balance. Values are:
  • 1 — not rollover
  • 2 — is rollover
TaxAuthId UINT32 The value is a numeric identifier for tax authorities. Set only if US taxation is enabled.
TaxCategory STRING Set only if US taxation is enabled.

The value is a more specific differentiation under the corresponding TaxType, and is two characters long.

TaxClassExternalId STRING Set for a balance impact that is a tax or a tax refund. The value is the tax class external ID. Not set if the tax class object has no external ID.
TaxClassId UINT64 Set only if tax class taxation is used. Set for a balance impact that is a tax or a tax refund. The value is the ID of the tax class object.
TaxClassName STRING Set only if tax class taxation is used.

Set for a balance impact that is a tax or a tax refund. The value is the tax class name.

TaxClassRate DECIMAL Set only if tax class taxation is used.

Set for a balance impact that is a tax or a tax refund. The value is the tax rate. For example, 1.0 indicates 100%.

TaxPaidPreviously UINT32 Set only if a tax charge is applied from a tax class that is defined as already paid.
TaxProductGroup STRING Set only if US taxation is enabled.

The product group code of the purchased product offer instance.

TaxProductGroupItem STRING Set only if US taxation is enabled.

Concatenated product group code and product item code of the purchased product offer instance.

TransferReason STRING The reason for the balance transfer.
TaxType STRING Set only if US taxation is enabled.

The value is the general classification of tax, and is two characters long.

UpdateType UINT32 Type of balance impact (charge, discount, and grant). Possible values are defined in ImpactType subtype. Values are:
  • 1 — Charge
  • 2 — Discount
  • 3 — Grant
  • 4 — Adjustment
  • 5 — Cancellation Refund
  • 6 — Cancellation Forfeiture
  • 7 — Forfeiture
  • 8 — Usage Refund
  • 9 — Transfer To
  • 10 — Transfer From
  • 11 — Rollover To
  • 12 — Rollover From
  • 13 — Payment
  • 14 — Tax
  • 15 — Cancellation Tax Refund
  • 16 — Usage Tax Refund
  • 17 — Recharge
  • 18 — Payment Refund
  • 19 — Late Charge
  • 20 — Early Termination Charge
  • 21 — Write-Off
  • 22 — Finance
  • 23 — Debt Payment
  • 25 — Tax Payment
  • 26 — Payment Tax Refund
  • 27 — Tax Paid Previously

For a list of the possible update types for each event type, see the discussion about event types for balance impacts.