Achekam

Billing call usage on top of a monthly VoIP fee

How a VoIP provider bills each customer's call usage on top of the monthly fee, shares the call detail behind it, and credits calls a customer disputes.

By Achekam · · 4 min read · For Telecoms businesses in South Africa, Nigeria, Kenya

VoIP call usage billing

A hosted PBX customer pays a fixed monthly fee per extension, and on top of that pays for the calls their staff make: local, national, to mobiles, international. The fixed part is easy to bill. The usage part changes every month, comes from your switch as thousands of call records, and is exactly what a business customer's finance team will question when the invoice is higher than they expected.

Usage billing goes wrong in two ways: the amount on the invoice cannot be traced to the calls behind it, or the call detail is sent in a form the customer cannot open or should not be forwarding around. This article sets out how to put usage on the monthly invoice in Achekam, share the detail safely, and handle the calls a customer disputes.

Usage comes from your switch, not from Achekam

The usage figures do not come from Achekam. Your switch or billing platform produces the call detail records, and your rating, whether by your own tariff table or your platform's, turns them into amounts per customer.

So the monthly usage process has two halves:

  • Rating, outside Achekam. Export the month's call records per customer, apply your rates, and produce a call detail report and a summary by call type.
  • Invoicing, in Achekam. Put the summary on the customer's invoice, share the report, and keep both on file.

Close the usage month on the switch on the same day each month, and record the cut-off time. Calls made after the cut-off belong in the next month's usage, and a consistent cut-off is what stops the same call appearing twice.

Usage as typed lines on the monthly invoice

Invoice lines in Achekam are typed in rather than picked from a product list. For usage, that is not a drawback: each month's amounts are new anyway.

Build each customer's monthly invoice as a draft with:

  1. The fixed lines: extensions, numbers, any bundled minutes, as every month.
  2. One usage line per call type: for example local, national, mobile and international, each stating the month and the amount from your summary.
  3. A reference to the report: "Per call detail report for the month, shared separately."

Separate lines per call type help later: if a customer disputes their international calls, you can correct that line without touching the rest. Check the drafts against your rating summary, then issue them. Issuing takes the next number in your sequence and posts debtors, sales and output VAT. An issued invoice can be downloaded as a PDF on your letterhead and e-mailed, with or without a pay link, and a failed send is reported as not sent.

A call detail report lists who called whom, when and for how long. That is personal information about your customer's staff and the people they call, and it deserves more care than an e-mail attachment.

Upload each customer's monthly report to Document Centre, then share it by e-mailing a personal link to the customer's billing contact. For each share you set an expiry, can require a one-time code, and choose whether download is allowed; the share can be revoked. A link that expires after the invoice due date gives the customer time to check, without leaving the report available indefinitely.

If you are a member of South Africa's ISPA, its Code of Conduct for ISPA Members sets out obligations on privacy and confidentiality, consumer information and complaints that bear directly on how you handle call records and billing queries. Providers in Nigeria and Kenya should follow their own regulator's rules on subscriber information.

Keeping each month's usage report

Document Centre is a folder-based store with tags and search, and a new version of a document keeps the earlier ones. Keep one folder per customer with a report per month, tagged by month.

Every stored file also gets a SHA-256 fingerprint, a code computed from its exact contents. If a customer later claims the report you shared was different from the one their invoice was based on, the fingerprint shows whether the stored report has changed since it was uploaded. Every upload passes a malware check as well.

If a report has to be corrected, upload the corrected one as a new version rather than replacing the file, so both remain visible.

Disputed calls and the credit note

Customers dispute usage for good reasons: a PBX compromised overnight and used for international calls, a number ported away but still billed, a rating error. Investigate before deciding:

  • Rating error on your side: credit it in full.
  • Fraudulent calls through the customer's own system: a commercial decision, under your terms, about who bears the cost.
  • Calls correctly billed: send the extract for the disputed numbers and explain.

Where a credit is due, a credit note is issued from the invoice it corrects, in full or for chosen lines, posted to the ledger, and can be downloaded or e-mailed. It uses its original invoice's date and tax codes, so VAT is reversed exactly as it was charged. Any leftover credit is held for the customer. Usage split by call type makes this easier, because the credit can target the line in question.

For the fixed monthly side of the invoice, see monthly invoices for subscribers; for proof that invoices reached the customer, see knowing a subscriber actually got the invoice; and for a new customer's first part-month, see invoicing installation and a first part-month.

The next usage month

Fix the cut-off time, agree the call types you will show as lines, and set a default share expiry for call detail reports. Then run next month's usage through the routine end to end, and keep a note of anything that took longer than it should.

General guidance only, not advice on your own circumstances. Tax and payroll rules change: check the current position with the authority or your adviser.

Related articles

More on Telecoms

See how Achekam handles it with your own records: create your account