Invoices & Payments
Manage the full billing lifecycle — from generating proforma invoices and folio statements to recording payments, issuing refunds and producing financial summaries.
Invoice types
BnBFlows generates four types of billing documents:
- Proforma Invoice — sent to the guest before check-in to confirm the booking and request a deposit. Does not affect your accounting ledger.
- Tax Invoice / Receipt — the official VAT-compliant invoice generated at or after payment. Includes your tax number and a sequential invoice number.
- Folio Statement — an itemised running total of all charges posted to a guest's room during their stay (room charges + extras). Shown at checkout.
- Credit Note — issued when a refund is processed. Reduces the outstanding amount on the corresponding invoice.
Generating an invoice
Go to Bookings → [Booking Reference]. The Finance tab shows all billing history for this booking.
Choose the invoice type: Proforma, Tax Invoice, or Folio Statement. The system pre-fills all line items based on the booking and any posted charges.
Add, remove or edit line items if needed. Each line shows a description, quantity, unit price, VAT rate and subtotal. You can also add discounts per line or on the total.
Click Send to Guest to email the PDF, or Print for a physical copy. The invoice is also downloadable as a PDF at any time.
Recording a payment
To record a payment against an invoice:
You can also record payments from Finance → Payments → + New Payment and link it to an invoice manually.
Options: Cash, M-Pesa (manual entry), M-Pesa STK Push (automatic), Card (manual), Pesapal, DPO, MomoPay, Bank Transfer, Cheque, or House Account (city ledger).
For M-Pesa, enter the Mpesa transaction code (e.g. QJL2XKFM5P). For bank transfers, enter the bank reference. This is stored in the audit trail.
The invoice status updates to Paid (or Partially Paid if the amount is less than the balance). A payment receipt is generated automatically.
Online payment via STK Push (M-Pesa)
If you have M-Pesa Daraja configured, you can trigger a payment directly from the invoice:
- Open the invoice and click Request M-Pesa Payment.
- Enter the guest's Safaricom number (07XX or 254XX format).
- Click Send STK Push. An M-Pesa prompt appears on the guest's phone within seconds.
- The guest enters their M-Pesa PIN. Payment confirmation arrives in real time and the invoice is automatically marked Paid.
Refunds & credit notes
To issue a refund:
- Open the original invoice and click Issue Refund.
- Enter the refund amount and reason.
- Select the refund method (must match or be compatible with the original payment method).
- A Credit Note is generated and linked to the original invoice. The net balance is updated.
House accounts (corporate / city ledger)
For corporate guests billed to a company account:
- Create the company under Guests → Companies → + New Company.
- Set a credit limit and billing cycle (weekly, monthly).
- When checking in a corporate guest, select Post to House Account as the payment method.
- At the end of each billing cycle, go to Finance → House Accounts → [Company] → Generate Statement. Send the consolidated invoice to the company's accounts department.
Financial reports
Find all financial reports under Finance → Reports:
- Daily Revenue Report — total revenue by room type, extras category and payment method for any date range.
- Outstanding Invoices — all unpaid or partially paid invoices, aged by 30 / 60 / 90+ days.
- VAT Report — tax collected per period, formatted for KRA or your local authority.
- Payment Method Breakdown — cash, M-Pesa, card and other channel split.
- Occupancy & RevPAR — occupancy %, average daily rate (ADR) and revenue per available room.
All reports can be exported to PDF, Excel or CSV.