Wednesday, February 16, 2011

31 Day Billing in BRM

By default, the billing day of month (BDOM) can be set to any day between 1 and 28. If a customer signs up on 29th, 30th, or 31st, the BDOM gets set to the 1st. This is done because all months do not have these days. This can result in a large number of customers being billed on the 1st of the month.
This default setting can be changed to support billing on all days of the month. For example, if you create a customer account on the 29th, the billing day is set to the 29th instead of the 1st. 

Setting the alternate billing day of month

If your customers’ billing day of month (BDOM) is the 29th, 30th, or 31st, for the months that do not have these days, you can configure whether billing should be run on the last day for the same month (set to back option) or the first day of the next month (set to forward option). By default, the BDOM is set to the 1st day of the next month.

For example, if a customer registers on March 31st:
  • The set to back option sets the following billing dates:
    • March 31
    • April 30
    • May 31
In this example, since April doesn’t have 31 days, the BDOM is on the last day of April.
  • The set to forward option sets the following billing dates:
    • March 31
    • May 1
    • May 31
In this example, since April doesn’t have 31 days, the BDOM is on the first day of the following month, May. 

Tip
To set the BDOM to always be the last day of the month, set it to 31 and use the set to back option.


Notes
  • Using these special days means that BDOM varies from month to month in a calendar year.
  • The general ledger (GL) earned and unearned report accounts for the variation in the number of days in different accounting cycles.
  • The cycle fees are charged in full regardless of how many days there are in a month. Cycle fees will be prorated only in special cases, for example, if you cancel a service in the middle of a month, or if you register in the middle of a month and your billing day of month is different from the date of account creation, the cycle fee may be prorated for such months. 

 

Setting the 31 day billing feature

By default, billing does not use the special days 29th, 30th, and 31st. To use the special days, you must modify the init_objects.souce file before loading it into the database or modify the /config/fld_validate object using testnap.

By default, you can set the billing day of month (BDOM) to any day between 1 and 28. If your customer signs up on 29th, 30th, or 31st, the BDOM gets set to the 1st. This is done because all months do not have these days. This can result in a large number of customers being billed on the 1st of the month.
You can change this default setting to support billing on all days of the month. For example, if you create a customer account on the 29th, the billing day is set to the 29th instead of the 1st.

Setting the alternate billing day of month 

If your customers’ billing day of month (BDOM) is the 29th, 30th, or 31st, for the months that do not have these days, you can configure whether billing should be run on the last day for the same month (set to back option) or the first day of the next month (set to forward option). By default, the BDOM is set to the 1st day of the next month.
For example, if a customer registers on March 31st:
  • The set to back option sets the following billing dates:
    • March 31
    • April 30
    • May 31
In this example, since April doesn’t have 31 days, the BDOM is on the last day of April.
  • The set to forward option sets the following billing dates:
    • March 31
    • May 1
    • May 31
In this example, since April doesn’t have 31 days, the BDOM is on the first day of the following month, May.
Tip
To set the BDOM to always be the last day of the month, set it to 31 and use the set to back option.


Notes
  • Using these special days means that BDOM varies from month to month in a calendar year.
  • The general ledger (GL) earned and unearned report accounts for the variation in the number of days in different accounting cycles.
  • The cycle fees are charged in full regardless of how many days there are in a month. Cycle fees will be prorated only in special cases, for example, if you cancel a service in the middle of a month, or if you register in the middle of a month and your billing day of month is different from the date of account creation, the cycle fee may be prorated for such months.

Setting the 31 day billing feature

By default, billing does not use the special days 29th, 30th, and 31st. To use the special days, you must modify the init_objects.souce file before loading it into the database or modify the /config/fld_validate object using testnap.

>> Switching to 31 day billing during BRM installation

Before loading the init_objects.source file, change the value of the PIN_FLD_MAXIMUM field from 28 to 31 in the /config/fld_validate object which has the "Actg_cycle" value in the PIN_FLD_NAME field as follows:

# /config/fld_validate  - Actg_cycle validation
<PCM_OP $PIN_OPNAME=$PIN_CONF_INIT_OPNAME; $PIN_OPFLAGS=$PIN_CONF_
INIT_OPFLAGS>
0 PIN_FLD_POID           POID [0] $PIN_CONF_DB_NO /config/fld_validate 606 0
0 PIN_FLD_DESCR           STR [0] "Field Validation"
0 PIN_FLD_HOSTNAME        STR [0] "-"
0 PIN_FLD_NAME            STR [0] "Actg_cycle"
0 PIN_FLD_PROGRAM_NAME    STR [0] "-"
0 PIN_FLD_VALIDATION           SUBSTRUCT [0]
1       PIN_FLD_FIELD_TYPE     INT [0] 2
1       PIN_FLD_MAXIMUM        NUM [0] 31
1       PIN_FLD_MINIMUM        NUM [0] 1
</PCM_OP>
 

>>   Switching to 31 day billing after you have installed BRM

To switch to 31 day billing after you have installed Portal, use the testnap utility to set the Forward or Back billing option in the /config/business_params object


In this example, PIN_FLD_MAXIMUM is set to 31 indicating that Portal will use 31 day billing:

0 PIN_FLD_POID           POID [0] 0.0.0.1 /config/fld_validate 606
0 PIN_FLD_VALIDATION     SUBSTRUCT [0]
1       PIN_FLD_MAXIMUM  DECIMAL [0] 31 
 

Setting the Forward and Back billing options

By default, the BDOM is set to the 1st day of the next month. If you use 31-day billing, you can choose to run billing on the last day for the same month (set to back option) or the first day of the next month (set to forward option).
You configure the BDOM by modifying a field in the billing class /config/business_params object created during Portal installation.
You modify the /config/business_params object by using the pin_bus_params utility.

To configure BDOM to be last day of the month or 1st day of the next month:
  1. Use the following command to create an editable XML file for the BusParamsBilling parameter class:
pin_bus_params -r BusParamsBilling bus_params_billing.xml

This command creates the XML file named bus_params_billing.xml.out in your working directory. If you don’t want this file in your working directory, specify the full path as part of the file name.
  1. Search the XML file for following line:
<MoveDayForward>firstDay</MoveDayForward> 
  1. Change firstDay to lastDay.
  1. Use the following command to load the change into the /config/business_params object:
pin_bus_params bus_params_billing.xml  

You should execute this command from the PIN_HOME/sys/data/config directory, which includes support files used by the utility.
  1. Read the object with the testnap utility or the Object Browser to verify that all fields are correct.
  1. Restart Connection Manager (CM).
  1. For multiple databases, run the pin_multidb script with the -R CONFIG parameter.

      Switching to 31 day billing during BRM installation

Before loading the init_objects.source file, change the value of the PIN_FLD_MAXIMUM field from 28 to 31 in the /config/fld_validate object which has the "Actg_cycle" value in the PIN_FLD_NAME field as follows:


# /config/fld_validate  - Actg_cycle validation
<PCM_OP $PIN_OPNAME=$PIN_CONF_INIT_OPNAME; $PIN_OPFLAGS=$PIN_CONF_
INIT_OPFLAGS>
0 PIN_FLD_POID           POID [0] $PIN_CONF_DB_NO /config/fld_validate 606 0
0 PIN_FLD_DESCR           STR [0] "Field Validation"
0 PIN_FLD_HOSTNAME        STR [0] "-"
0 PIN_FLD_NAME            STR [0] "Actg_cycle"
0 PIN_FLD_PROGRAM_NAME    STR [0] "-"
0 PIN_FLD_VALIDATION           SUBSTRUCT [0]
1       PIN_FLD_FIELD_TYPE     INT [0] 2
1       PIN_FLD_MAXIMUM        NUM [0] 31
1       PIN_FLD_MINIMUM        NUM [0] 1
</PCM_OP>  
 

    Switching to 31 day billing after you have installed BRM

To switch to 31 day billing after you have installed Portal, use the testnap utility to set the Forward or Back billing option in the /config/business_params object


In this example, PIN_FLD_MAXIMUM is set to 31 indicating that Portal will use 31 day billing:

0 PIN_FLD_POID           POID [0] 0.0.0.1 /config/fld_validate 606
0 PIN_FLD_VALIDATION     SUBSTRUCT [0]
1       PIN_FLD_MAXIMUM  DECIMAL [0] 31 
 

Setting the Forward and Back billing options

By default, the BDOM is set to the 1st day of the next month. If you use 31-day billing, you can choose to run billing on the last day for the same month (set to back option) or the first day of the next month (set to forward option).
You configure the BDOM by modifying a field in the billing class /config/business_params object created during Portal installation.
You modify the /config/business_params object by using the pin_bus_params utility.

To configure BDOM to be last day of the month or 1st day of the next month:
  1. Use the following command to create an editable XML file for the BusParamsBilling parameter class:
pin_bus_params -r BusParamsBilling bus_params_billing.xml  

This command creates the XML file named bus_params_billing.xml.out in your working directory. If you don’t want this file in your working directory, specify the full path as part of the file name.
  1. Search the XML file for following line:
<MoveDayForward>firstDay</MoveDayForward> 
  1. Change firstDay to lastDay.
  1. Use the following command to load the change into the /config/business_params object:
pin_bus_params bus_params_billing.xml  

You should execute this command from the PIN_HOME/sys/data/config directory, which includes support files used by the utility.
  1. Read the object with the testnap utility or the Object Browser to verify that all fields are correct.
  1. Restart Connection Manager (CM).
  1. For multiple databases, run the pin_multidb script with the -R CONFIG parameter.

1 comment:

Migrating PDC data from one system to another

Given System “A” with BRM and PDC and System “B” with BRM and PDC, following is the process for moving new or changed pricing data from ...