Invoices & Payments

How billing, invoicing, and payment tracking works in Qserve.

Automatic Invoice Generation

Every time a subscriber's package is activated or renewed — whether via M-Pesa, manual entry, or voucher — Qserve automatically creates an invoice. Invoices are numbered sequentially per ISP and include your business name, subscriber details, package description, amount, and payment method.

Recording a Manual Payment

When a subscriber pays in cash, via bank transfer, or through any channel outside of M-Pesa:

  1. Open the subscriber's profile.
  2. Click Record Payment.
  3. Enter the amount, payment date, payment method (Cash, Bank Transfer, etc.), and an optional reference number.
  4. Click Save. Qserve creates an invoice and activates/extends the relevant package.

Viewing Invoices

From Invoices in the left menu, you can see all invoices sorted by date. Filter by subscriber, payment method, or date range. Click any invoice to view its full details.

Each subscriber's profile also has an Invoices tab showing their full billing history.

Downloading Invoice PDFs

Click any invoice → Download PDF. The PDF includes your ISP logo (if configured in Settings), invoice number, subscriber details, package details, payment information, and a summary table. You can share PDFs with subscribers on request.

Transaction History

Go to Transactions to see all financial transactions across all subscribers — M-Pesa callbacks, manual payments, and refunds. This is your complete audit trail for payments.

Each transaction shows the M-Pesa transaction code (for M-Pesa payments), timestamp, subscriber, amount, and status (completed, pending, failed).

Reconciliation

To reconcile M-Pesa payments with your M-Pesa statement:

  1. Go to Transactions → Filter by M-Pesa → Select date range.
  2. Export as CSV using the Export button.
  3. Compare the transaction codes against your Safaricom M-Pesa statement.

Partial Payments

If a subscriber pays a partial amount, Qserve records the payment but does not automatically activate a package. The payment appears in Transactions as a credit balance. You can apply it manually when the full amount is collected.