Create Sale Invoice
The Create Sale Invoice screen is the most powerful and carefully engineered page in the entire Agora system. It is built for speed — a trained cashier can process a full sale in under 15 seconds. The layout is a compact, two-column design that eliminates scrolling:
- Left column: Customer selection, product search, and line items table
- Right column: Invoice summary, discounts, and payment entry
Customer Selection
At the top of the left panel is the Customer Section. You choose between two customer modes:
Walk-In Customer: The default mode for anonymous, one-time customers. You can optionally enter a walk-in customer name for the receipt. Walk-in customers have a strict payment rule — they must pay the full invoice amount. The system blocks partial payment or overpayment at submission.
Registered Customer: Switch to this mode to link the sale to an account in your customer database. This enables:
- Credit sales (leaving a balance on the customer's AR ledger)
- Customer-specific discount rates fetched automatically
- Sales history tracking per customer account
Adding Products — Product Selector
Below the customer section is the Product Selector — the primary item entry point. It supports three input methods:
Barcode Scanning: The product selector input field is always focused and ready. When a barcode scanner fires, the scanned value is read instantly, the matching product variant is found, and the item is added to the line items table in under a second. The input clears automatically for the next scan.
Text Search: Type a product name, SKU, or variant name to search. A real-time dropdown appears with matching results. Click or press Enter to add.
Serialized Items (Per-Item Products): For products tracked individually by serial number (e.g., electronics, IMEI-tracked phones), scanning or searching resolves to a specific unique item. The system prevents the same serialized item from being added twice.
Line Items Table
The Line Items Table is a live, editable grid that grows as items are added. Each row contains:
- Product — Product name, variant name, and serial number (if serialized).
- Qty — Quantity controls:
−/+buttons and a direct input field. - Price — Unit price, editable inline if the user has the
Edit Pricepermission. - Disc — A discount badge button. Shows the total discount applied.
- Total — Calculated line total (Qty × Price − Discounts).
Item Discount Popover
Clicking the discount icon on any line item opens the Item Discount Popover:
- Product Discount (Auto-Applied): Shows the automatically fetched system discount.
- Manual Discount: The cashier can additionally apply their own manual discount (Percentage or Fixed Amount).
Invoice Summary Card
The right column is the financial control center:
- Invoice-Level Discount: Apply a blanket discount across the entire invoice.
- Round to 10: Automatically rounds the grand total down to the nearest 10.
- Totals Breakdown: Subtotal, Total Discount, Grand Total, Total Paid, and Balance.
Holding Invoices (Park & Resume)
One of the most powerful operational features is the Hold Invoice system. If a customer needs to step aside, the cashier can park the current invoice and immediately start a new one.
Ctrl+H or click the Pause button. A modal appears asking for an optional label.
Ctrl+J or click the Play button to open the Held Invoices Drawer.
Keyboard Shortcuts
The entire Create Sale Invoice screen is designed to be operated without a mouse for maximum cashier speed. All key shortcuts are discoverable by pressing ?.
Real-World Use Cases
- Standard Retail Checkout: A cashier processing a routine walk-in customer's purchase of multiple items.
- Split Payments: Processing a high-value transaction where the customer pays 50% in cash and the remainder via credit card.
- B2B Credit Sales: Issuing an invoice to a registered wholesale customer on a 30-day credit term instead of collecting immediate payment.