Consumer- and Provider-Paid Taxes

Taxes can be imposed on both consumers and providers. Taxing authorities regulate whether providers are permitted to pass a tax on to the consumer, and how the tax is passed on.

For example, sales tax is generally imposed on a consumer with the provider acting as collector for the tax authority. The provider is required to pass the tax on to the consumers using a separate line item on the bill, using approved wording. Excise tax is ordinarily imposed on the provider, but provider might have the option to include this tax in their rates or pass it on to the consumer as a separate line item. Some taxes are prohibited from being passed on to consumers.
  • If a provider tax is required to be passed on to the consumer, tax is calculated and recorded in the Event Detail Record (EDR) in the same manner as consumer tax.
  • If a provider tax is prohibited from being passed on to the consumer, it is calculated and recorded in a separated charge list in the Event Detail Record (EDR).
    Note: This tax has no impact on balances in the consumer's wallet. The CarriesChargeList field in the EDR records provider-paid taxes.
  • Optional provider taxes are passed on to the consumer unless the provider prohibits this action.
    • MATRIXX Engine calculates the tax, and the tax is recorded in the EDR in the same manner as a consumer tax is recorded.
    • If the provider does not want to pass the provider's tax on to the consumer, the provider must specify this action as prohibited in the CCH Tax Data source.

Provider-paid taxes are the taxes the Operator pays, and are recorded in the EDR. During rating, the Charging Server calculates the amount of taxes the provider is liable for and records the amount in the EDR so that general ledger (GL) journal entries can be generated.

If the rating results of used quantities reported in Diameter Gy or 5G N40 messages include taxes paid by the Operator, the taxes are tracked by usage aggregation and recorded in the aggregation usage events generated at the end of usage aggregation.

For information about US tax refunds, see the discussion about US tax refunds.

Tax-On-Tax

A product offer is defined using a single application profile, for example, purchase, and the application profile specifies the taxes to be collected for each charge. A proportional charge bundle includes multiple offers for multiple services, and taxes are calculated based on the net revenue allocation in the proportional charge bundle.

If the provider passes the provider tax on to the consumer, the funds representing the passed on tax are added to the base amount of the invoice and are treated as taxable gross receipts to the provider. This tax then becomes subject to various consumer- and provider-based taxation. This is called tax-on-tax.

When the Charging Server receives a list of taxes for a charge, if a tax is a provider-based tax and it can be passed on to the consumer, the Charging Server checks if the tax is subject to any consumer-based and provider-based taxes. These taxes are called taxing taxes and are applied to the amount of the provider-based tax. The Charging Server then repeats this process to check if the taxing taxes are subject to tax-on-tax. Each time the Charging Server repeats this process constitutes a new round of tax-on-tax.

To set the maximum number of rounds used in the tax-on-tax calculation, answer the create_config.info question: Global:How many rounds of Tax On Tax should be calculated?. For more information about setting the maximum number of rounds used in the tax-on-tax calculation, see the discussion about global system configuration in MATRIXX Configuration.

Data is imported from the TaxOnTax CCH table, and compiled and deployed in My MATRIXX. The data is then processed and loaded into MATRIXX Engine. For more information about compiling and deploying the TaxOnTax CCH table, see the discussions about importing tax and deploying a US tax compilation in My MATRIXX Help. For more information about loading CCH data into MATRIXX Engine, see the discussion about administering US tax data in MATRIXX Administration. For more information about the US tax data, see the discussion about US tax database.

Events show the total impact amount for each impacted balance instance. This includes a set of charge detail records that break down the impact and the product offer generating the impact and the impact type, for example, tax. A separate charge record is generated for base charges from product offers for each tax applied to that charge. When there is tax-on-tax, the TaxOnTaxChargeList field is added to the EDR to list the tax-on-tax charges. For more information, see the discussion about MtxEvent in MATRIXX Integration.