Sales Invoices

Product version: 1.0.0+1 Last updated: 2026-08-03 Audience: Tenant users with sales:invoice:read (mark paid / void need sales:invoice:update)


A. What is a Sales Invoice?

A sales invoice is created automatically when you confirm a sale. It snapshots customer and line details, totals, and optional cost/profit fields for reporting.

Numbers look like INV-202608-0001.

Do not confuse these with Billing subscription invoices under the Billing module.

There is no “create invoice” button — confirm a sale instead.


B. Viewing invoices

  1. Open Sales > Invoices.
  2. Open a row for detail.
  3. Or open an invoice from a confirmed sale detail after confirm.

C. Print / share

Required permission: sales:invoice:read

On invoice detail, use Print / share actions. The app loads a print payload from the API and produces a PDF for sharing or printing (language/RTL quality may improve in later releases).


D. Mark paid

Required permission: sales:invoice:update

Available when the invoice is not paid and not void.

  1. Tap Mark paid.
  2. Choose a payment method: Cash, Card, Transfer, or Other.
  3. Status becomes paid; payment status paid.

There is no partial payment UI — full invoice amount only.


E. Void

Required permission: sales:invoice:update

Available when the invoice is issued (unpaid) and not already void.

  1. Tap Void and confirm.
  2. Invoice status becomes void.

Critical rule

Voiding does not restore inventory stock in the current product. The related sale typically stays confirmed. To attempt stock restore, cancel the sale after void (when your role allows and reverse succeeds).

Paid invoices cannot be voided in the app.


F. Status reference

Field Values
Status issued, paid, void
Payment status unpaid, paid

Previous: Sales

Related: Overview · Customers · Billing invoices (subscription billing — different module)