Billing is one of the core competencies of the EngageIP application and an important aspect of the overall EngageIP value proposition. EngageIP has a full featured billing engine that can handle subscription and usage billing, invoice presentment and delivery and dunning. The system can accommodate different billing frequencies from one time invoices to monthly and annual billing periods.
By default, the account bill day determines when an account gets billed. Every account must have a bill day – defaults are set when an account is initially added. The account bill day can be overridden through the account settings. The account bill day is used when determining the day on which the packages and services assigned to that account get billed. For a $20 monthly recurring package and an account bill day of 1, the account would get charged 20 dollars on the 1st of every month. For a $50 annual package, and an account bill day of 1, the account would get billed annually on the 1st day of the month the package was added.
It is possible to decouple the billing of a package from the account bill day by configuring a bill day on the package. The system will always choose the package bill day override over the account bill day. Such an override may be necessary to support scenarios where multiple packages are added to an account and one or more packages need to be billed on a different cadence than the rest.
Associated with every package is a bill frequency - also called the package price frequency. This dictates when and how often the package is billed. By default, all packages and services that have been added to the account will be synchronized to get billed on the Account Bill Day at a cadence dictated by the package price frequency. A monthly package on an account with a Bill day of 1 will get billed every month on the 1st, while a quarterly package will get billed on the 1st of the month every quarter (Jan 1, April 1, July 1 ....).
|Once||Bill the package only once (e.g. Sell a piece of hardware for a one time charge of $100)|
|Day||Bill every x amount of days (e.g. Daily billing or bill every 90 days etc.)|
|Week||Bill every x amount of weeks (e.g. Bill customer every 4 weeks)|
|Month||Bill every x amount of months (e.g. Bill customer monthly or once every 3 months (quarterly billing))|
|Share Level||Share level specifies the level at which sharing occurs. A share level of parent indicates that all accounts and services that report to that parent are eligible to participate in the share plan. A share level of account indicates that all services that are assigned to that account are eligible to participate in the share plan.|
|Year||Bill every x amount of years (e.g. Annual billing)|
Packages have the option to prorate their charges to the bill day depending on when they were added. As an example, a monthly package added on the 9th of the month with a bill day of the 1st will be billed as follows:
Transactions, adjustments, payments and charges are accumulated over the billing period and on Bill day an invoice is generated with a consolidated list of all charges incurred by that account (or invoicer hierarchy in the case of multiple accounts rolling up into a single invoicer).
Bill Groups are used to segment the accounts based on when they bill. Typically accounts that need to be billed together are selected as part of a group. When configuring a bill run, the administrator will select the groups that need to be billed. All accounts in that bill group will then be selected for billing. A bill day is associated with a bill group. By default, all accounts that are part of that bill group inherit that bill day which the administrator can override at the account level. The account level bill day always takes precedence over the bill group.
Billing does not occur automatically. A bill run has to be kicked off to initiate the billing process. The administrator must set up bill run schedules to determine when a given set of accounts and bill runs gets billed. When a bill run is initiated, the system will only bill the bill groups and accounts that are part of that bill run. The billing process will survey all selected accounts and bill only those accounts whose bill days fall within the billing range specified by the bill run. This billing period is defined when creating a bill run and is delineated by the Bill Period Start and Bill Period End dates.
When configuring a bill run several options are selected that determine what billing, invoicing and payment workflows are actioned. Runs can be created to bill subscriptions only or bill usage only or both. Likewise, a run can be initiated to start the invoicing workflow or to run payments and AR Terms. EngageIP has the ability to automatically charge the default account payment method based on the collection type. ACH and Credit Card token and non tokenized methods are supported. To automate processing of items on Bill Runs, EngageIP provides the option to schedule bill runs on a regular cadence.
Bill on first use scenarios are gaining more prominence particularly in certain verticals such as IoT . A service is not billed until a certain usage threshold is reached or a configurable period of time has expired. Once either of these conditions are met, subscription and usage billing is triggered and the state of the service is transitioned (e.g. preactive to active). As part of this workflow, EngageIP also provides a facility to optionally add a time window for when usage needs to come in. If no usage comes in within that timeframe, then the state change is triggered and any applicable one time and recurring charges due to the state change will be charged to the account.
When pricing devices (represented as services in the billing platform), it is possible to configure recurring charges based on service/device states. For example, a device can have two states: active and suspended. The suspended state can be associated with an MRC of $5 and the active state can be associated with an $10. When the device is in suspended state it will get billed an MRC of $5 while in active state it will be billed an MRC of $10.
In a prepay scenario, a customer will be invoiced the device charge for the upcoming period. The billing system will look at the state that the device was in as of the bill day to compute the invoice amount. Based on the example in 5.4.1, if the bill day was the 1st, and the device was in the active state, the invoiced amount will be $10; if instead the device was in suspended state on the 1st, the device would be charged an MRC of $5.
If the device changed state during the period, the system will record two transactions:
The figure below assumes a monthly billing cycle with a bill day of the 1st.
Dunning and Payment Terms define the rules with which accounts are processed and assessed penalties for overdue invoices. These include sending of email notifications, late fee charges on customer accounts, and other custom actions. Payment terms are represented by a list of rules that will execute various actions on an account in EngageIP or with an account so as to enforce a late invoice payment policy. As an example, payment terms may be defined to send emails, add late fees to accounts or cancel accounts altogether. Actions can be specified on a default dunning rule with payment terms to take specific actions: e.g. sending a late payment email once 10 days past the invoice date has been reached.