In order to test basic rating with a Use For Cost
configuration, you must have the following before proceeding to the usageRateGroup
, usageRate
and usageRatePlan
setup/screens:
Have 1x MRC service that has the checkbox
Usage Based Service = true
Have 1x package + frequency setup that uses the MRC service that was created from the above bullet
Package
Frequency
Now that we have the service, package and frequency setup we can proceed with the Use For Cost
configuration.
Create the first set of
usageRateGroup
-usageRate
-usageRatePlan
usageRateGroup screen: useForCost = true
usageRate screen: rate type = rated / type= use for cost
usageRatePlan screen: add the usageRateGroup created in the first sub bullet into the new
usageRatePlan
(i.e. useForCost_plan)
First set - usageRateGroup
First set - usageRate
First set - usageRatePlan
Create the second set of
usageRateGroup
-usageRate
-usageRatePlan
usageRateGroup screen: useForCost = false
usageRate screen: rate type = rated markup / type= standard
usageRatePlan screen: none and you must add the usageRateGroup created from the the first sub bullet of the second set into the usageRatePlan of the first set (i.e. useForCost_group_2 is added into useForCost_plan)
Second set - usageRateGroup
Second set - usageRate
Second set - usageRatePlan
Now that you have completed the Use For Cost
configuration it is time to test rating.
Have an account and ensure that it has a proper jurisdiction code for taxing purposes
Create an account package using the MRC service that was created from the prerequisite steps and ensure that you select the
Use For Cost
rate plan (i.e. useForCost_plan)Also ensure that the service has an proper UdrUsageIdentifier
Send usage against the service within the current period
Verify rating in the following tables
To check quickly if you have a proper UDRMediated and UDRRated record you can run the SQL below where UdrUsageIdentifier
is equal to whatever was added as the UdrUsageIdentifier into the service:
SELECT M.ID, M.Date, M.UDRUsageIdentifier, M.Value, R.UDRMediatedID, R.ValueRounded, R.ChargePreBucketing, R.Charge FROM UDRMediated M INNER JOIN UDRRated R ON M.ID = R.UDRMediatedID WHERE UDRUsageIdentifier like '%<UdrUsageIdentifier>%' ORDER BY ID DESC
Note that this query is expected to return 1 line/record which is from the UdrMediated and UdrRated tables
If the query returns blank then please check the
UDRUsageException
table for further investigation
Let’s take this account for example: I sent a “901” value for the usage towards the service with rated cost = 1 and the rated markup cost = 1 (based on useForCost_1 rate plan)
How
Use For Cost
works is that it “adds” the rated markup cost on top of the rated cost so in this particular test we have:Rated cost = 1 x value = 901 = Rated cost charge = $901
Rated markup = 1 x value = 901 = Rated markup cost charge = $901
(Rated cost charge = $901) + (Rated markup cost charge = $901) = $1,802.00 which is what you can see from the table and after the account was billed
There’s definitely room for experimentation, like having different rated cost and rated markup cost amounts but for now that concludes the basic Use For Cost
setup and configuration.