Cash Flow for WHMCS - Track Accounts Payable and Receivable

Back   Posted on 9 september 2020 / Updated on 24 january 2021
Reading time 9 minutes

What is Cash Flow and why is it Important

Cash flow is the money that flows in and out of your business. With cash flow statement you can keep track of cash your received (payments, investing activities...) and the cash paid out (VAT, income taxes, dividends...) to make sure you have cash for daily operations, taxes, purchasing inventory, paying employees.

Many businesess focus too much on revenue and not enough on understanding when the actual cash will arrive in their bank account. This is one of the biggest reasons small business fail. Predicting your sales and preparing for paying expenses is crucial. The amount and the timing of payments to and from your business is as important as revenue.

Analytics and Reports

Although WHMCS provides a wide variety of reports to track your income, there's nothing to track expenses. Moreover income projections are basic offering extremely tentative statistics. Starting from version 2.2.132 of Billing Extension, we introduced the very concept of cash flow for WHMCS.

In essence, the module integrates two pages:

  • Addons > Billing Extension > Settings > Cash Flow automatically tracks inflow and outflow of money with WHMCS daily cron job. It is also possible to manually add entries to track purchases, loans, dividends etc.
  • Reports > More > Cash Flow is where you can find historical cash flow statement that goes from your first invoice up to 5 years into the future. That's plenty of time to make plans!

As for the reporting part, we're going to show some previews. This is the graph that shows cash flow statement from company founding date up to 5 years into the future.

Right below this graph, you'll find an extensive table that includes detailed statistics. In the next chapter we are going to explain you how to read your data. All projections automatically refresh with WHMCS daily cron job but you can also force an update from the following menus.

How to Read Cash Flow Statement

Cash flows are classified as operating, investing and financing activities. Each category has subcategories.

Activity Example

Operations (FCFO)

Free Cash From Operations

Cash generated from sales and paid for operating expenses

Investments (FCFF)

Free Cash Flow to Firm

Cash generated from sale of property and paid for investments

Financing (FCFE)

Free Cash Flow to Equity

Cash generated from stock sales and paid for dividends

Each category can be spot on the table that is in fact divided in 3 sections. You must read it from top to bottom and left to right as shown in the image on the right (you can click to enlarge). Here's how it works.

In 2020 we start the year with about 25.000 € of cash (1). In all rows below (2) the module applies inflow and outflow of money for year 2020 - we'll describe the meaning of each cell later.

At the very bottom of the column (3), we can see we end 2020 with 18.000 € in revenue. We can now move to 2021 (4). This time we start the year with 43.000 € (25.000 € + 18.000 € net increase from 2020).

As previously seen, the module applies inflow and outflow of money for 2021 (5) which brings us to the end 2021 with 81.000 € in revenue (6). The process repeats every year from company founding date up to 5 years into the feature.

To put things in perspective, if you started your business in 2010, Billing Extension provides a year-by-year report from 2010 to current date plus 5 years into the future.

Now that you know how to read data, we can focus on the meaning of each cell of the table.

Operations (Free Cash From Operations)

Inflow and outflow of money from operations such as payments received, transaction fees, refunds, credit notes etc.

This is the most important category for small-sized enterprises as they don't generate much cash for investing and financing activities. Every operation has a cycle (one time or recurring) just like WHMCS products/services, domains, product addons and billable items.

For the most part of this section, Billing Extension automatically calculates statistics since it looks for transactions, invoices and products. Obviously it doesn't know anything about your other expenses (bills, administrative and wage expenses, income taxes etc.) hence you'll need to manually enter such data from Addons > Billing Extension > Settings > Cash Flow.

Unlike WHMCS products/services, the module offers you maximum flexibility. In fact every operation you add can be set as recurring every X number of days, weeks, months or years. Moreover you can optionally set a start date and end date. Thanks to that, you can define a cash flow that looks like follows:

  • +400 € / month from other sources (rental revenue)
  • +10.000 € one time (initial capital)
  • -60 € every 2 months (internet and telephone expense)
  • -149 € / year for operating expenses (Billing Extension license)
  • -150 € / month from Jan 2020 to Jun 2022 (financing 30 months on server purchase)

For obvious reasons initial capital doesn't support start date and end date. In this case all it takes is defining the fiscal year.

Operation Activities
Category Direction Description
Beginning year cash

1st year starts with zero plus funds added manually (if applicable). Subsequent years start from cash at the end of last year plus funds added manually (if applicable). Here's an example:

  • Company founded in 2019 with a budget of 10.000 €
  • Beginning year cash for 2019 is 10.000 €
  • 2019 ends with a net increase of 5.000 €
  • Beginning year cash for 2020 is 15.000 €
Customers Subtotal (VAT excl.) of all paid invoices per year taking into account currency rate snapshots. Available for all fiscal years up to current date
Customers (projection)

Projected income (VAT excl.) if all active services, domains, billable items and addons are renewed within the year. Projection starts from current date up to 5 years into the future. Let's suppose today's date is 2020-06-01:

  • No projection for 2019
  • For 2020 the projection starts from 2020-06-01 until the end of the year
  • For subsequent years the module shows the projected income if all services are renewed within that year
Other sources Useful to track payments from other sources not related to WHMCS (eg. rental revenue, equipment)
Inventory purchaes Computers, desks, charis...
General operating and administrative expenses Accounting, suppliers, bills, stationary...
Transaction fees Transaction fees for payment gateways (PayPal, Stripe...). For future years the module assumes that you will pay the same amount of money of the last fiscal year
Refunds and payouts Outcome transactions (ones in tblaccounts)
Credit notes Paid credit notes. Credit notes with outcome transactions count as one (transactions are ignored). This is required because of WHMCS weird calculations
Wage expenses Anything related to paying employees (salary, severance pay...)
Interest Any interest your company has to pay
VAT VAT of all paid invoices per year taking into account currency rate snapshots. Available for all fiscal years up to current date
VAT (projection)

Projected VAT if all active services, domains, billable items and addons are renewed within the year without changes to tax rates and tax configuration. Let's suppose today's date is 2020-06-01:

  • No projection for 2019
  • For 2020 the projection starts from 2020-06-01 until the end of the year
  • For subsequent years the module shows the projected VAT if all services are renewed within that year
Income taxes Income tax depending on income at the end of every year

Investments (Free Cash From to Firm)

Tracks things like sale/purchase of property and equipment, loans and investment securities (equities, bonds).

It's the amount of cash flow from operations available for investments after expenses. This is arguably the most important financial indicator of a company value for medium and large-sized enterprises enabling to reinvest in long-term assets (eg. equipment and property).

As previously seen for operations, you can enter activities from Addons > Billing Extension > Settings > Cash Flow. We still have cycle, start date, end date with an addition: depreciation. Depreciation allows to divide the cost of an equipment by the number of years in the asset's useful lifespan. For example, the annual depreciation on a computer with a useful life of 5 years and a cost of 1000 € is 200 € (1000 / 5).

Investing Activities
Category Direction Description
Sale of property and equipment

Selling old office furniture and computers

Collection of principal on loans Revenue from loans
Sale of investment securities

Selling stocks, bonds, mutual funds or other types of investments you can sell

Purchase of property and equipment Buying new office furniture and computers
Making loans to other entities Borrowing money
Purchase of investment securities Purchasing stocks, bonds, mutual funds or other types of investments you can buy

Financing (Free Cash to Equity)

Tracks dividends, repayment of loans, buy-back (repurchase of stock), borrowing and issuance of stocks.

As you can imagine, this section is mainly used by medium and large-sized enterprises. Here we find cycle, start date and end date but not depreciation. Data entry can still be made from Addons > Billing Extension > Settings > Cash Flow.

Financing Activities
Category Direction Description
Issuance of stock

Selling stocks

Borrowing Taking out loans
Repurchase of stock (treasury stock)

Share repurchase or buy-back

Repayment of loans Loan repayments
Dividends Payment of cash dividends

Cash Flow Customization

We understand every business is different and unique in terms of needs. We planned in advance a system that suits the need of every business.

The module lets you enter detailed descriptions for every operation with the usual WYSIWYG editor of WHMCS but there's more! You can also attach a maximum of 50 files (64.00 MB each) with the following format: jpeg, jpg, png, gif, bmp, ico, svg, pdf, rtf, txt, xlsx, xls, csv, ods, docx, doc, pptx, ppt, zip, rar.

This is particularly useful for accounting purposes. For example for each of your employees you could attach the employment contract. Same goes for office lease agreement, income taxes etc.

Recurring Flows Logic

In WHMCS we often see reports that provide approximate calculations. Let us give you some examples.

  • Domain registration
  • Registration period: 2 years
  • Recurring amount: 20 €

Most developers in WHMCS oversimplify calculations. They divide 20 € by 2 years and tell you that you're earning 10 € per year. This is completely false.

  • Product/Service
  • Billing cycle: Monthly
  • Recurring amount: 10 €

If the product is due on 1st Jan, we can expect to receive a payment for every month of the year. 10 € multiplied by 12 months equals 120 €. So far so good. But what about a product ordered on 1st Dec? Some developers still use the same logic and end up telling you that you're earning 120 € while in reality you earned one-twelfth.

  • Billable Item
  • Recurring: Every week
  • Recurring amount: 10 €
  • Recur for: 10 times from 1st Dec

According to the lazy-way of doing calculations, we divide 365 days by 7 days. Then we multiply 52.14 weeks by 10 €. In the worst case scenario, the developer ignores both the starting date and the "recur for" concluding you're earning 521.42 €. The truth is you're earning 100 € over the course of two years. That's a big difference!

We know what you're thinking. Can you trust the numbers you see in cash flow statement? We got nothing but good news here. Billing Extension loops through days of years respecting start dates, end dates and cycles. Calculations are 100% accurate.

Comments (0)

Speak Your Mind Cancel Reply