Use For Cost Configuration

Last Updated: Wed Aug 04 2021

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



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
    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/rated markup cost amounts also with different rate types but for now that concludes the basic Use For Cost setup and configuration.