Reports
Contents
- 1 Existing Reports
- 1.1 Affiliates Overview
- 1.2 Aging Invoices
- 1.3 Annual Income Report
- 1.4 Client Sources
- 1.5 Client Statement
- 1.6 Clients
- 1.7 Clients by Country
- 1.8 Credits Reviewer
- 1.9 Daily Performance
- 1.10 Direct Debit Processing
- 1.11 Disk Usage Summary
- 1.12 Domains
- 1.13 Income by Product
- 1.14 Income Forecast
- 1.15 Invoices
- 1.16 Monthly Orders
- 1.17 Monthly Transactions
- 1.18 New Customers
- 1.19 PDF Batch
- 1.20 Product Suspensions
- 1.21 Promotions Usage
- 1.22 Sales Tax Liability
- 1.23 Server Revenue Forecasts
- 1.24 Services
- 1.25 Support Ticket Replies
- 1.26 Ticket Feedback Comments
- 1.27 Ticket Feedback Scores
- 1.28 Ticket Tags
- 1.29 Top 10 Clients By Income
- 1.30 Transactions
- 2 Creating your own Reports
Existing Reports
WHMCS comes with a selection of reports by default. Some reports also include graphical representations of the data.
To view any of these reports, simply click the Reports button on the main menu and then choose the report you wish to view from the list. The output of every report can be downloaded in CSV format and is available in a printer friendly format. To access this simply click the appropriate link in the Tools section at the bottom of the report.
All reports are contained within the modules/reports folder, are open source, and can therefore be edited and modified to fit your needs.
Affiliates Overview
An overview of affiliates for the current year: Visitors referred, Pending Commissions, Available to Withdraw balance, Withdrawn Amount and Total Commissions Paid.
Aging Invoices
A summary of outstanding invoices broken down into the period by which they are overdue.
Annual Income Report
Shows the income received for the year broken down by month converted to the base currency using rates at the time of the transaction. It is based upon transactions recorded. The graph shows previous year's income for easy comparison.
Client Sources
A summary of the answers clients have given to the 'How Did You Find Us?' or 'Where did you hear about us?' custom field signup question between a specified date range.
Client Statement
Provides a statement of account for individual client accounts between a date range. Displays Type (add funds, transaction, invoice), date, description, credits, debits and a running balance
Clients
Generate a custom export of client information by applying up to 5 filters. CSV Export is available via the download link at the bottom of the page.
Clients by Country
The total number of active services per country in map format, as well as total active unique clients per country in a table beneath the map.
Credits Reviewer
Allows you to review all the credits issued to clients between two dates you specify.
Daily Performance
Shows daily activity summary for a given month. Data in this report are Completed Orders, New Invoices, Paid Invoices, Opened Tickets, Ticket Replies and Cancellation Requests
Direct Debit Processing
Displays all Unpaid invoices assigned to the Direct Debit payment method and the associated bank account details stored for their owners, ready for manual processing.
Disk Usage Summary
When the Update Usage Statistics option is enabled, this report shows the Disk Space & Bandwidth Usage Statistics for hosting accounts. Updated once per day with the cron job, click the 'Update Now' link to get current usage statistics.
Domains
Generate a custom export of domain name information by applying up to 5 filters. CSV Export is available via the download link at the bottom of the page.
Income by Product
Provides a breakdown per product/service of invoices paid in a given month. This excludes overpayments & other payments made to deposit funds (credit), and includes invoices paid from credit added in previous months, and thus may not match the income total for the month.
Income Forecast
Shows the projected income for each month of the year. Assumes all active services and domains are renewed on their next due date. Products with longer billing cycles (Quarterly, Semi-Annually, Annually, Biennially) are split evenly across the year. Addons are not included.
Invoices
Generate a custom export of invoice information by applying up to 5 filters. CSV Export is available via the download link at the bottom of the page.
Monthly Orders
Gives a breakdown of the number of units sold of each product per month per currency. Allows you to see your most profitable products.
Monthly Transactions
Provides a summary of daily payments activity for a given month per currency. This is based upon transaction data. The Amount Out figure includes both expenditure transactions and refunds.
New Customers
Shows the total number of new customers, orders and complete orders for the current year and compares each of these to the previous year on the graph.
PDF Batch
This report can be used to generate a single PDF document containing multiple individual invoices (one per page). Can be filtered by date range, payment methods and status. Useful for printing invoices for record-keeping or mailing to clients.
Product Suspensions
Allows you to review all services currently in suspended status and the reasons specified for their suspensions.
Promotions Usage
Shows usage statistics for each promotional code to see how often each promo code has been used. Click the Drill Down link to see exactly which orders used the code.
Sales Tax Liability
Shows sales tax liability for the selected period (invoice sub-total before tax, tax amount and total after tax).
Server Revenue Forecasts
Shows income broken down by billing cycle for each of your servers in the base currency. It then uses the monthly cost entered for each server to estimate the annual gross profit for each server.
Services
Generate a custom export of service information (domain, username, server ID etc.) by applying up to 5 filters. CSV Export is available via the download link at the bottom of the page.
Support Ticket Replies
Shows a breakdown of support tickets dealt with per admin for a given month. The 'Ticket' value is the number of unique tickets replied to, whilst 'Replies' is the total number of replies made across all tickets.
Ticket Feedback Comments
When the Ticket Closure Feedback option is enabled, this report displays general feedback comments submitted by customers. Can be filtered by date range and staff member.
Ticket Feedback Scores
When the Ticket Closure Feedback option is enabled, this report displays the ratings given to individual admins by clients. Can be filtered by date range. Click the admin's name to see comments left specifically about that member of staff.
Ticket Tags
Provides an overview of ticket tags assigned to tickets for a given date range. Tickets are tagged via the "Tag Cloud" field when viewing a support ticket.
Top 10 Clients By Income
Shows the 10 clients with the highest net income according to the transactions entered in WHMCS. If the client does not use your default currency, their income will be converted for ease of comparison.
Transactions
Generate a custom export of transaction information by applying up to 5 filters. CSV Export is available via the download link at the bottom of the page.
Creating your own Reports
With the modular reporting system WHMCS uses, it is easy to add your own reports into the system to generate the statistical information you need.
To create your own report, you should begin by looking at the format of a report module in one of the existing reports. These can be found in "modules/reports". The report name you choose must be unique, and should be all lowercase, containing only letters & numbers (a-z, 0-9), always starting with a letter.
The format with some descriptions is as follows:
<?php # The title of your report $reportdata["title"] = ""; # The description of your report $reportdata["description"] = ""; # Header text - this gets displayed above the report table of data $reportdata["headertext"] = ""; # Report Table of Data Column Headings - should be an array of values $reportdata["tableheadings"] = array("Column 1","Column 2","Column 3"); # Report Table Values - one of these lines for each row you want in the table # should be an array of values to match the column headings $reportdata["tablevalues"][] = array("Data 1","Data 2","Data 3"); $reportdata["tablevalues"][] = array("Data 1","Data 2","Data 3"); $reportdata["tablevalues"][] = array("Data 1","Data 2","Data 3"); # Report Footer Text - this gets displayed below the report table of data $data["footertext"] = ""; ?>