Sales Invoices
Official guide · English · Version 9c253d0cf11816df
Sales invoices are the primary documents for recording revenue from your customers. The DirectSale accounting module supports standard invoices, walk-in (POS-style) sales, proforma invoices, and return invoices. Each invoice follows a structured approval workflow from creation through to payment.
Accessing Sales Invoices
Navigate to Dashboard > Accounting > Invoices > Sales Invoices. This opens the sales invoices list page with statistics, filters, and the invoices table.
Statistics Cards
At the top of the page, four cards provide a quick summary of your sales invoicing activity:
| Card | Description |
|---|---|
| Total Invoices | The total number of sales invoices across all statuses and time periods. |
| This Month | The number of invoices created during the current calendar month. |
| Paid | The total number of invoices with a "Paid" status. |
| Pending | The number of invoices currently waiting for approval (status: "Pending Approval"). |
Invoice Statuses
Every sales invoice has one of the following statuses:
| Status | Badge Color | Description |
|---|---|---|
| Draft | Gray | A newly created invoice that has not been submitted. It can be freely edited. |
| Pending Approval | Yellow | The invoice has been submitted and is waiting for an authorized user to approve or reject it. |
| Approved | Blue | The invoice has been approved and is ready for payment. Payments can now be recorded against it. |
| Paid | Green | The invoice has been fully paid. The balance due is zero. |
| Partially Paid | Orange | At least one payment has been recorded, but the total paid amount is less than the invoice total. |
| Cancelled | Red | The invoice has been rejected or cancelled. It no longer contributes to financial totals. |
Invoice Types
| Type | Badge Color | Description |
|---|---|---|
| Standard | Blue | A regular sales invoice issued to a customer. |
| Walk-in | Green | A point-of-sale invoice for walk-in customers. Created using the simplified Walk-in Sale form. |
| Return | Red | A return invoice generated when items are returned from a paid or approved invoice. |
| Proforma | Gray | A preliminary invoice sent before the final sale is confirmed. Not counted as revenue until converted. |
Filtering and Searching
The invoices list provides several filtering options:
| Filter | Description |
|---|---|
| Search | Free-text search by invoice number, customer name, or other fields. Results update as you type. |
| Status | Filter by invoice status: All Statuses, Draft, Pending Approval, Approved, Paid, Partially Paid, or Cancelled. |
| Type | Filter by invoice type: All Types, Standard, Walk-in, Return, or Proforma. |
| Date Range | Set a start date and end date to filter invoices by issue date. Use the X button to clear the date range. |
Info: Changing any filter automatically resets the page to 1. The table shows 10 invoices per page, with pagination controls at the bottom showing the current page, total pages, and total number of results.
The Invoices Table
Each row in the invoices table displays the following columns:
| Column | Description |
|---|---|
| Invoice Number | The system-generated invoice number (e.g., INV-00042). Displayed in monospace font. |
| Type | The invoice type badge (Standard, Walk-in, Return, or Proforma). |
| Customer | The customer's name. Displays a dash (-) if no name was provided. |
| Date | The issue date of the invoice, formatted according to your locale settings. |
| Total | The total invoice amount including all costs, discounts, and taxes. |
| Paid | The total amount paid so far against this invoice. |
| Status | The current status badge of the invoice. |
Clicking any row navigates you to the invoice detail page.
Creating a New Sales Invoice
Navigate to the New Invoice Form
From the Sales Invoices list page, click the New Invoice button (with the plus icon) in the upper right. This opens the invoice creation form.
Fill In Customer Information
The Customer Information card has the following fields:
| Field | Required | Description |
|---|---|---|
| Search Existing Contact | No | Type a customer name to search your existing contacts. A dropdown shows matching results with name, phone, and email. Click a result to auto-fill the customer fields. |
| Quick Add Contact | No | Click the "Quick Add Contact" button to create a new contact without leaving the invoice form. The new contact is automatically linked to the invoice. |
| Customer Name | Yes | The name of the customer. This is the only required field. It is auto-filled when you select an existing contact. |
| Phone | No | The customer's phone number. |
| No | The customer's email address. | |
| Address | No | The customer's address. |
| Invoice Date | No | The date the invoice is issued. Defaults to today's date. |
| Due Date | No | The date by which payment is expected. |
When you select an existing contact, a blue banner appears showing "Linked to contact: [Name]" with a Clear button to unlink.
Add Line Items
The Items card allows you to add one or more line items. Each item has the following fields:
| Field | Description |
|---|---|
| Product Name | Type to search for existing products. An autocomplete dropdown shows matching products with name, SKU, image, and price. Selecting a product auto-fills the name, SKU, and unit price. You can also type a custom product name manually. |
| SKU | The stock keeping unit code. Auto-filled when selecting a product from search. |
| Qty | The quantity of this item. Minimum value is 1. |
| Unit Price | The price per unit. Auto-filled from the product's sale price when selected. |
| Discount | A flat discount amount applied to this line item (not a percentage). |
| Line Total | Automatically calculated as (Quantity x Unit Price) - Discount. |
Use the Add Item button to add additional line items. Click the trash icon to remove a line item (you must always have at least one item).
Add Additional Costs (Optional)
The Additional Costs card lets you add extra charges such as packaging, handling, or service fees.
Each additional cost has:
- Description -- A text description of the cost (e.g., "Packaging fee").
- Amount -- The monetary amount of the cost.
Click Add Cost to add more entries. Click the trash icon to remove one.
Configure Invoice Settings
The Settings card provides the following options:
| Setting | Description |
|---|---|
| Shipping Cost | The shipping/delivery cost for this order. |
| VAT Rate (%) | The VAT/tax rate as a percentage (e.g., 10 for 10%). Set to 0 for tax-exempt invoices. |
| Overall Discount | A flat discount applied to the entire invoice (subtracted from the total before VAT). |
| Currency | The currency for this invoice. Options: USD, EUR, GBP, IRR, AED, TRY. Defaults to your tenant's configured currency. |
| Payment Method | The expected payment method: Cash, Card, Transfer, Check, or Online. |
| Payment Reference | A reference number or note for the payment (e.g., check number, transfer reference). |
Review the Totals Summary
The Summary card on the right side shows the calculated totals:
| Line | Description |
|---|---|
| Subtotal | Sum of all line item totals. |
| Additional Costs | Sum of all additional cost entries (shown only if greater than zero). |
| Shipping | The shipping cost (shown only if greater than zero). |
| Discount | The overall discount amount, shown in red with a minus sign (shown only if greater than zero). |
| VAT (x%) | The calculated VAT amount based on the rate (shown only if VAT rate is greater than zero). The VAT is calculated on: (Subtotal - Discount + Shipping + Additional Costs) x VAT Rate. |
| Total | The final total: Subtotal - Discount + Shipping + Additional Costs + VAT. |
Add Notes (Optional)
The Notes card provides two text areas:
- Customer Notes -- Notes visible to the customer (e.g., on the printed invoice or PDF).
- Internal Notes -- Notes visible only to your team. These are not shown on customer-facing documents.
Save the Invoice
At the bottom of the form, you have three action buttons:
| Button | Description |
|---|---|
| Cancel | Discards all changes and returns to the invoices list (or the invoice detail page when editing). |
| Save Draft | Saves the invoice with a "Draft" status. You can edit it later before submitting. |
| Submit | Saves the invoice and sets its status to "Pending Approval". This button only appears for new invoices (not when editing). |
Editing an Invoice
Only invoices in Draft status can be edited. From the invoice detail page, click the Edit button. This opens the same form as creating a new invoice, pre-filled with the existing data. When editing, the Submit button is replaced with Save Changes.
Invoice Detail Page
Clicking any invoice row in the list navigates to the detail page. The detail page shows:
Header Section
The header displays the invoice number, type badge, status badge, issue date, and due date. Action buttons appear on the right side based on the current status.
Customer Information
A card showing the customer's name, phone, email, and address (when available).
Items Table
A read-only table showing all line items with columns for row number, product name, SKU, quantity, unit price, discount, and line total.
Additional Costs
If the invoice has additional costs, they are listed with their descriptions and amounts.
Totals
A summary showing subtotal, shipping, discount, VAT, total, amount paid, and balance due. The balance due is shown in red if there is an outstanding amount, or in green if fully paid.
Linked Transactions
If payments or other transactions have been recorded against this invoice, they appear in a table with columns for date, type, description, reference, and amount.
Notes
Customer-facing notes and internal notes are displayed when present.
Invoice Actions
The available actions depend on the current invoice status:
Draft Status Actions
| Action | Description |
|---|---|
| Edit | Opens the invoice in edit mode to modify any field. |
| Submit for Approval | Changes the status to "Pending Approval" and sends it into the approval workflow. |
| Print PDF | Generates a printable PDF version of the invoice. |
Pending Approval Status Actions
| Action | Description |
|---|---|
| Approve | Approves the invoice, changing its status to "Approved". The invoice is now ready for payment recording. |
| Reject | Opens a dialog where you can optionally enter a rejection reason. Rejecting the invoice changes its status to "Cancelled". |
| Print PDF | Generates a printable PDF version. |
Approved Status Actions
| Action | Description |
|---|---|
| Record Payment | Opens a payment dialog (see below). |
| Create Return | Opens a return dialog to process item returns (see below). |
| Print PDF | Generates a printable PDF version. |
Paid Status Actions
| Action | Description |
|---|---|
| Create Return | Opens a return dialog to process item returns. |
| Print PDF | Generates a printable PDF version. |
Recording a Payment
When you click Record Payment on an approved invoice, a dialog appears with these fields:
Enter Payment Amount
The Amount field is pre-filled with the remaining balance due. You can change this to record a partial payment. The field is required and must be greater than zero.
Select Payment Method
Choose the payment method from the dropdown: Cash, Card, Transfer, Check, or Online.
Enter Payment Reference (Optional)
Add a reference number such as a check number, wire transfer reference, or transaction ID.
Select Bank Account
Choose which bank account the payment should be deposited into. The dropdown shows your configured treasury/bank accounts.
Confirm
Click Confirm to record the payment. If the payment fully covers the balance due, the invoice status changes to "Paid". If a partial payment is recorded, the status changes to "Partially Paid".
Creating a Return
For approved or paid invoices, you can create a return to process item returns:
Open the Return Dialog
Click the Create Return button on the invoice detail page.
Select Items to Return
Each line item from the original invoice is shown with a checkbox. Check the items that are being returned.
Set Return Quantities
For each selected item, a quantity field appears. Set the number of units being returned (cannot exceed the original quantity).
Enter Return Reason (Optional)
Provide a reason for the return in the text area.
Confirm the Return
Click the Confirm button to create the return invoice. This generates a return-type invoice linked to the original.
Walk-in Sales
The Walk-in Sale feature provides a simplified, POS-style interface for processing sales to walk-in customers who do not need a formal invoice.
Accessing Walk-in Sales
From the Sales Invoices list page, click the Walk-in Sale button (with the shopping bag icon) in the upper right.
Walk-in Sale Form
The walk-in sale form is streamlined compared to the standard invoice form:
| Field | Required | Description |
|---|---|---|
| Customer Name | No | Defaults to "Walk-in Customer" if left blank. |
| Phone | No | The customer's phone number for records. |
| Items | Yes | Add items with name, quantity, and unit price. |
| Payment Method | No | Select from Cash, Card, Transfer, Check, or Online. |
| Bank Account | No | Choose the bank account for depositing the payment. |
After Completing a Walk-in Sale
Upon successful submission, a success screen appears with three options:
- Print Receipt -- Prints a receipt for the customer.
- New Sale -- Starts a fresh walk-in sale form.
- Back to Invoices -- Returns to the sales invoices list.
Info: Walk-in sales are automatically created with the type "Walk-in" and status "Paid", since payment is assumed to be collected at the point of sale.
Printing Invoices
The Print PDF button is available on every invoice detail page regardless of status. Clicking it generates an HTML-based print view in a new browser tab and opens the browser's print dialog. From there you can:
- Print to a physical printer.
- Save as a PDF file using your browser's "Save as PDF" print option.
Tips for Efficient Invoice Management
- Use the status filter to quickly find invoices that need attention. Filter by "Pending Approval" to see invoices awaiting your review, or "Approved" to find invoices ready for payment.
- Link contacts to invoices by searching for existing contacts when creating invoices. This keeps your customer records connected and allows you to view the full transaction history from the contact's ledger.
- Use the date range filter for period-specific reporting. Filter by a specific month to review all invoices for reconciliation purposes.
- Save as Draft first if you are unsure about any details. Draft invoices can be edited freely before submitting for approval.
- Add internal notes for any context your team needs to know about the invoice that should not be visible to the customer.
