Sales
Sales, credits, invoices, delivery notes, offline sales.
Access
- Route:
/sales - Permission:
sale.view(create/update/delete/force for actions) - Offline: list, view, create, and edit supported (pending sync)
- Phone: create/edit redirect to the list (except offline/tablet pending flows as implemented)
You can
- List sales (ID, sync/draft, customer, amounts, status)
- Create sale with
sale.create - Create credit online via
/sales/credit; apply credit on unpaid/paid sales with create+update - Duplicate with
sale.create - Edit when status is created/unpaid/unapproved and delivery is still hold/open — otherwise needs
sale.forceafter delivery has progressed - Approve, download invoice/delivery note, send invoice/delivery note with
sale.update - Delete with
sale.delete - Offline: queue pending sales (“Draft – not synced”) that sync when back online
- Credit notes can return stock to inventory and respect customer credit limits
You cannot
- Edit credit document types, or sales outside editable statuses (e.g. paid/cancelled), regardless of permission
- Edit after delivery leaves hold/open without
sale.force - Create credits offline (credit option hidden offline)
- Use most send/download/delete actions offline on already-synced sales
- Record payments via a dedicated in-app payment UI (
sale.paymentis not wired in the UI today) - Exceed a customer credit limit when creating a credit note
How to
Find a sale
- Open Sales in the sidebar.
- Click a row (or row menu → View) to open it.
Create a sale
- Click Create sale.
- Pick a Customer — their shipping/billing address, balance, and overdue count appear once selected.
- Set Invoice date, Delivery date, PO number, and Assigned to; add a customer-facing Message or internal Notes.
- If a matching quote exists for the customer, pick it under Quotes (auto-applies if the quote is marked auto-apply).
- Search and add products, then adjust each line's quantity, unit type (unit/box), discount (click the
%/$toggle to switch types), and price. - Click Create.
Create a credit
- From Sales, open the Create sale split button and choose Create credit (hidden while offline).
- Pick the Customer, then add only the products being returned/refunded and adjust their quantities down to what's kept.
- Toggle Return back to inventory? if the returned stock should go back into inventory.
- Click Create.
Apply a credit to an existing sale
- Open a sale with status Unpaid or Paid that isn't already credited, and click Apply credit (needs
sale.create; not shown offline or for credit documents). - In the product list, keep the lines to credit, lower their quantity to the amount being returned, and remove any lines the customer is keeping — the credit total is calculated only from what's left in the list.
- Toggle Return back to inventory? if needed, then click Apply.
Duplicate a sale
- From the sale's row menu, choose Duplicate (needs
sale.create). - Everything is pre-filled from the original — change the customer, dates, or products as needed.
- Click Duplicate to save it as a new sale.
Edit a sale (including after delivery has started)
- Open the sale and click Edit, or use the row menu → Edit (needs
sale.update). - Editing is offered while status is Created, Unpaid, or Unapproved, the document isn't a credit, and delivery is still Hold/Open. Once delivery has moved past Hold/Open, editing is only available to users with the
sale.forcepermission. - Update the fields/products and click Update. If the sale is no longer in Created status, confirm the change in the warning dialog before it saves.
Approve a sale
- Open a sale with status Unapproved and click Approve (needs
sale.update; unavailable offline).
Download invoice / delivery note
- From the sale view, click Download to get the invoice PDF (or Download credit if a credit note exists for it).
- From the Sales list, use a row's menu, or select rows and use the bulk actions bar, to Download invoice or Download delivery note.
Send invoice / delivery note
- From the sale view, click Send to customer to email the invoice (needs
sale.update). - From the Sales list, use a row's menu, or select rows and use the bulk actions bar, to Send invoice or Send delivery note — pick recipients/CC in the dialog that opens.
Delete a sale
- From the sale view, or the list's row menu/bulk actions bar, click Delete (needs
sale.delete) and confirm.
Export
- Click Export on the list to download the current rows as
sales.xls.
Offline pending sales
- While offline, creating or editing a sale saves it to the device instead of the server; it shows in the list tagged Draft - not synced.
- Pending drafts only offer View/Edit from the row menu — send, download, and delete stay unavailable until the draft syncs.
- Once you're back online, drafts sync automatically in the background; the list refreshes and the draft tag clears once syncing completes.
Credit limits
- If credit limits are enabled for a customer, the credit screen shows a Used / Draft / New / Left / Limit bar that updates as you add products.
- Going over the customer's remaining limit blocks creation until the credit note total is reduced.
Updated about 2 months ago
Did this page help you?

