Are recurring charges stacking up every month? This post will walk you through how to bill recurring charges using an Acumatica project in two widely-used variations: a fixed recurring charge and a fixed recurring charge plus additional usage.
Each month, you receive an invoice from a vendor who provides support services for your company. This support is provided for different customers (detailed by line item on the invoice). The support fees from the vendor need to be re-billed to your customers. The cost of the support needs to be tracked against a project.
There are different customer billing scenarios that need to be addressed. Some customers pay a fixed hourly rate, other customers pay a recurring fee for unlimited support, and some pay a fixed recurring fee for some included hours and pay an additional hourly fee on top of that.
We are illustrating an example with three different customer billing options:
- Vendor 1: $40 / hour for support provided to our customers
- Customer 1: $50 / hour for support
- Customer 2: $200 / month includes 5 hours, $50 / hour for each additional hour
- Customer 3: $600 / month for unlimited support
The software will highlight the fact that the unlimited support plan is not profitable.
Using the recurring billing feature in the Acumatica project, we can use the allocation rules to apply the appropriate rate to the SUPPHOURS non-stock item. The rate for support hours can vary by project, so we need to decide on a strategy to define that rate:
- Rate Strategy 1: Different rate tables (optimal when there are only a few rates)
- Rate Strategy 2: Define rates in attributes (optimal with different rates for each project/customer)
- Rate Strategy 3: Different inventory items (optimal when rates can be linked to inventory items)
In this example, we will use rate strategy 2, but we also included some information on the other strategies below.
Step 1: Implement Allocation Rates and Rules
In this section we briefly discuss how to set up allocation rules and rate tables in Acumatica for the three different rate strategies:
- Strategy 1: Different rate tables. This is best if there are a limited number of different customer prices. This involves creating different rate tables in the billing settings area of the project.
- Strategy 2: Attributes. This is optimal if the billing rate is non-standard and is negotiated for each project. This involves:
- (a) creating an attribute,
- (b) linking the attribute to projects, and
- (c) setting up allocation rules to include the attribute in your allocation rules (replaces the @rate construct).
An example allocation rule for using an attribute is illustrated below.
Step 1: Create the attribute
Step 2: Link attribute to projects
Step 3: Modify allocation rule
Note: since I defined the attribute as a text field, I used the CDec() function to convert it to a number before using it in my calculation.
- Strategy 3: Different inventory items. This is optimal if you want to use different inventory non-stock items to drive expenses and revenues. This involves
- (a) creating different non-stock items for different rates you want to charge,
- (b) Creating rate lookup rules driven by inventory (see below), and
- (c) assigning rates in the rate tables,
- (d) selecting the proper inventory item when paying/billing.
Different inventory items.
Step 2: Project Implementation
For this implementation, we will create three customers as well as a project for each customer. The project setup will vary slightly depending on our contract arrangement with the customer.
Pay as you Go
Customer 1 pays for all the support hours consumed during each billing period. This project is set up by selecting the appropriate allocation rules and assigning the proper rate to the attribute:
Customer 1 pays for all the support hours consumed during each billing period.
Fixed recurring charge with included hours and overage
Customer 2 pays a fixed recurring charge for included support hours and pays an overage rate for additional hours. This project is set up by selecting the same allocation rule as pay-as-you-go, assigning the overage rate to the project attribute, and adding the non-stock item SUPPHOURS to the Recurring Billing tab of the Project Task as illustrated below.
Project setup for a recurring charge of 200 dollars and 5 included support hours
When the bill is created there will be two lines. One for the fixed recurring fee with 5 hours, a zero charge, and the ‘bill complete’ flag set. A second line with 5 additional hours charged at $50 per hour.
Fixed monthly Fee
Customer 3 pays a fixed monthly fee. This is accomplished by adding a line for the fixed recurring fee to the Recurring Billing tab of the Project Task as illustrated below. The allocation rules and attribute are not needed.
Customer 3 pays a fixed monthly fee.
Step 3: Monthly Processing
Input Vendor Invoice
The vendor invoice that includes hours for each project is illustrated below.
Vendor invoice includes hours for each project
After releasing the bill, the projects have the costs $400, $400, and $800 associated with them. Project 3 is shown below.
Run Project Allocations
After running project allocations, the appropriate rate is applied to the support hours that have been received on the vendor invoice.
Note that charges for customer 2 are fully allocated ($50/hour x 10 hour = $500) even though at billing time only $200 + $250 will be billed.
Run Project Billing
At the end of the month, run project billing. Here’s how your invoices will look:
Project 1 Invoice
Project 2 invoice
Project 3 invoice
Questions or comments? Feel free to ask away in the comments, we’d love to hear from you. If you’d like to try this process to see how it works for you, you can always give Acumatica’s Cloud ERP Software a whirl on with a full software test drive!