10 Configuring Billing for Groups and Hierarchies
Learn how to configure the way Oracle Communications Billing and Revenue Management (BRM) bills sharing groups and account hierarchies.
Topics in this document:
Setting Up Billing for Charge and Discount Sharing Groups
By default, when billing is run, bill units are billed in this order:
-
All nonpaying child bill units in all accounts.
-
All remaining bill units in all accounts.
If you have discount or charge sharing groups in your BRM system, you must reconfigure your system to bill accounts in this order:
-
All nonpaying child bill units in all accounts.
-
All remaining discount group member bill units in all member accounts.
-
All remaining charge sharing group member bill units in all member accounts.
-
All remaining bill units in all accounts.
This ensures that billing is run for all member accounts before it is run for any discount or charge sharing group owner account.
Note:
If you do not reconfigure your system, discount and charge sharing group owner accounts might be billed before some of their member accounts. When this occurs, the members' sponsored charges are not included in the owner's bill for the current billing cycle. Instead, they are added to the owner's bill for the next billing cycle.
To enable this feature, run the pin_bus_params utility to change the BillingFlowSponsorship business parameter. For information about this utility, see BRM Developer's Guide.
The following setups ensure that two-level discount and charge sharing relationships are correctly billed. For sharing relationships that exceed two levels, the billing sequence might be incorrect, resulting in incorrect billing.
For example, suppose account A owns a sharing group to which account B belongs, and account B owns a sharing group to which account C belongs. Owner account A and member account B are billed in the correct order: member before owner. Owner account B and member account C, however, might not be billed in the correct order. This happens because B is an owner of account C's group and a member of account A's group. As a member, it is billed at the same time all other member accounts are billed and thus might be billed before account C.
To set up billing for charge sharing groups:
-
Go to BRM_home/sys/data/config.
-
Use the following command to create an editable XML file from the Billing instance of the /config/business_params object:
pin_bus_params -r BusParamsBilling bus_params_billing.xml
This command creates an XML file named bus_params_billing.xml.out in your current directory. If you do not want this file in your current directory, specify the path as part of the file name.
-
In bus_params_billing.xml.out, set the following entry:
<BillingFlowSponsorship>value</BillingFlowSponsorship>
where value is one of the following:
-
sponsorsFirst: Specifies to bill group owner accounts before member accounts.
-
sponsoreesFirst: Specifies to bill member accounts before owner accounts.
-
undefined: Specifies that the billing order of owner and member accounts does not matter. This is the default.
Caution:
BRM uses the XML in this file to overwrite the existing instance of the /config/business_params object. Use care when updating parameters in the file.
-
-
Save and exit the file.
-
Rename the bus_params_billing.xml.out file to bus_params_billing.xml.
-
Use the following command to load your changes into the /config/business_params object:
pin_bus_params bus_params_billing.xml
You should run this command from the BRM_home/sys/data/config directory, which includes support files used by the utility. To run it from a different directory, see "pin_bus_params" in BRM Developer's Guide.
-
Read the object with the testnap utility or the Object Browser to verify that all fields are correct.
For general instructions on using testnap, see "Using the testnap Utility to Test BRM" in BRM Developer's Guide. For information on how to use Object Browser, see "Reading Objects" in BRM Developer's Guide.
-
Stop and restart the Connection Manager (CM).
For more information, see "Starting and Stopping the BRM System" in BRM System Administrator's Guide.
To set up billing for discount sharing groups:
-
Go to BRM_home/sys/data/config.
-
Use the following command to create an editable XML file from the Billing instance of the /config/business_params object:
pin_bus_params -r BusParamsBilling bus_params_billing.xml
This command creates an XML file named bus_params_billing.xml.out in your current directory. If you do not want this file in your current directory, specify the path as part of the file name.
-
In bus_params_billing.xml.out, set the following entry:
<BillingFlowDiscount>value</BillingFlowDiscount>
where value is one of the following:
-
discountParentsFirst: Specifies to bill group owner accounts before member accounts.
-
memberDiscountFirst: Specifies to bill member accounts before owner accounts.
-
undefined: Specifies that the billing order of owner and member accounts does not matter. This is the default.
Caution:
BRM uses the XML in this file to overwrite the existing instance of the /config/business_params object. If you delete or modify any other parameters in the file, these changes affect the associated aspects of the BRM configuration.
-
-
Save and exit the file.
-
Rename the bus_params_billing.xml.out file to bus_params_billing.xml.
-
Use the following command to load your changes into the /config/business_params object:
pin_bus_params bus_params_billing.xml
You should run this command from the BRM_home/sys/data/config directory, which includes support files used by the utility. To run it from a different directory, see "pin_bus_params" in BRM Developer's Guide.
-
Read the object with the testnap utility or the Object Browser to verify that all fields are correct.
For general instructions on using testnap, see "Using the testnap Utility to Test BRM" in BRM Developer's Guide. For information on how to use Object Browser, see "Reading Objects" in BRM Developer's Guide.
-
Stop and restart the Connection Manager (CM).
For more information, see "Starting and Stopping the BRM System" in BRM System Administrator's Guide.
Skipping Validation of Billing for Nonpaying Child Bill Units
If you use bill unit hierarchies, BRM validates that all nonpaying bill units have been billed successfully before billing the paying parent bill unit. When billing fails for a nonpaying child bill unit, the parent bill unit is not billed. In rare instances, however, when billing for the nonpaying child bill unit continuously fails and you want to proceed with billing the parent bill unit, you can skip validation of billing for the nonpaying child bill unit.
To enable this feature, run the pin_bus_params utility to change the SkipCheckForSubordinatesBilled business parameter. For information about this utility, see "pin_bus_params" in BRM Developer's Guide.
To skip validation of billing for nonpaying child bill units:
-
Go to BRM_home/sys/data/config.
-
Use the following command to create an editable XML file from the Billing instance of the /config/business_params object:
pin_bus_params -r BusParamsBilling bus_params_billing.xml
This command creates an XML file named bus_params_billing.xml.out in your current directory. If you do not want this file in your current directory, specify the path as part of the file name.
-
In bus_params_billing.xml.out, set SkipCheckForSubordinatesBilled to enabled:
<SkipCheckForSubordinatesBilled>enabled</SkipCheckForSubordinatesBilled>
Caution:
BRM uses the XML in this file to overwrite the existing instance of the /config/business_params object. Use care when updating parameters in the file.
-
Save and exit the file.
-
Rename the bus_params_billing.xml.out file to bus_params_billing.xml.
-
Use the following command to load your changes into the /config/business_params object:
pin_bus_params bus_params_billing.xml
You should run this command from the BRM_home/sys/data/config directory, which includes support files used by the utility. To run it from a different directory, see "pin_bus_params" in BRM Developer's Guide.
-
Read the object with the testnap utility or the Object Browser to verify that all fields are correct.
For general instructions on using testnap, see "Using the testnap Utility to Test BRM" in BRM Developer's Guide. For information on how to use Object Browser, see "Reading Objects" in BRM Developer's Guide.
-
Stop and restart the Connection Manager (CM).
For more information, see "Starting and Stopping the BRM System" in BRM System Administrator's Guide.