Sales and Orders
Find any order, read its details, print or share it, change its order or payment status, cancel it with a refund, create a delivery, record packing, and fix orders that did not sync.
Every confirmed sale becomes an order. You manage orders from the Sales menu:
Menu item | What it shows | Permission |
|---|---|---|
Sales | The Orders List for your store |
|
Confirmed Orders | Sync attention: sales on this device that have not reached the server |
|
Sales Return | Returns. See Sales returns. |
|
Day Sale Closing | Shifts and day closes. See Day close and shifts. |
|
Admin Day Sale Records | Day closes of all executives (company admin only) |
|
Online Orders | The Online Orders List: orders that came from the online store |
|
Order number and receipt number
Each sale has two numbers. Both work in search.
Number | Example | Who makes it | Format |
|---|---|---|---|
Receipt number (offline receipt / bill number) | 2-11-261027-0003 | This counter, at the moment of sale | store id – counter number – date YYMMDD – daily sequence |
Order number | ORD-004851 | The server, when the sale arrives |
|
So 2-11-261027-0003 means store 2, counter 11, 27 October 2026, the third bill of the day on that counter. The receipt number is printed on the bill straight away, even when the device is offline. The order number appears once the server has the sale.
The Orders List

*Sales > Orders List: filters (order, customer, phone, email, price, amount range, dates, status, payment status, business date), the new order ORD-004851 with receipt number 2-11-261027-0003, and view / print / more actions*
The list shows the newest orders first, one page at a time. Each row shows the order and receipt number, date, customer, items, amount, order status and payment status.
Filters
Tap Filters to open the panel: "Filter by order, customer, phone, price, status and dates."
Filter | What to enter |
|---|---|
Order # | Order or receipt number, for example ORD-004851 or 2-11-261027-0003 |
Customer | Customer name |
Phone | Customer phone |
Customer email | |
Price | Exact order amount |
Min Amount / Max Amount | Amount range |
From Date / To Date | Order date and time range |
Status | All, NEW, PENDING, CONFIRMED, DELIVERED, CANCELLED |
Payment Status | All, Pending, Paid, Refunded |
Business Date | The day-close business date the sale belongs to |
Tap Reset to clear the filters. Export saves the filtered list to Excel, page by page. Refresh reloads. Tap an order number to copy it.
Row actions
Action | What it does |
|---|---|
View (eye icon) | Opens Order Details |
Opens the printer picker and prints the bill | |
More (⋮) → Share | Share the invoice (see below) |
More → Return | Starts a sales return for this order |
More → Cancel Order | Cancels the order with a refund |
More → Change Order Status | Opens Update Order Status |
More → Change Payment Status | Opens Update Payment Status |
Order Details

*Order Details for receipt 2-11-261027-0003 (backend ORD-004851): Print, Share, Return, Order Status and Payment Status actions, lines with MRP vs rate, tax and totals*
The top bar has Print, Share, Return, Order Status and Payment Status. All Orders takes you back to the list.
Lines and totals
The item table has the columns Sl#, DESCRIPTION, MRP, QTY, UNIT, RATE, TAX and AMOUNT.
For the demo order ORD-004851:
Item | Qty | MRP | Rate | Tax | Amount |
|---|---|---|---|---|---|
classic chicken bucket | 2 | 250.00 | 220.00 | 67.12 | 440.00 |
crispy chicken bucket | 1 | 230.00 | 218.00 | 33.25 | 218.00 |
Total line | Amount |
|---|---|
Net Total (Inc Tax) | 658.00 |
Tax Amount | 100.37 |
Net Total (Without Tax) | 557.63 |
Payable | 658.00 |
Prices include tax at 18%. When a discount was given, you also see Discount and Tax Amount After Discount.
Sections

*Order Details: status chips, store & delivery, payment breakdown (cash is stored net of change: 258 + card 400 = 658), customer information and Create Delivery*
Section | What it shows |
|---|---|
Order Status | Status chips: order status, payment status, delivery status |
Store & Delivery | Store, Delivery Method, Delivery Date, Delivery Time, Delivery Charge |
Payment Details | Payment Method, Transaction ID, Payment ID, Payment Breakdown, Total Paid |
Customer Information | Name, phone, Email, Alternate Phone, Address, and for B2B customers CR Number and VAT Number |
KYC Information | Customer KYC values, when captured |
Order Metadata / Order Properties | Token Number, Invoice Hash and other order properties |
Packing | Packing status, time, staff, photos and video |
Shipping Details | Shipping address and Create Delivery |
Order Documents | Delivery Note and Delivery Invoice PDFs |
In the demo, Layla paid card 400 + cash 300 = 700 for a 658.00 bill. The 42.00 excess went back as change. So the Payment Breakdown stores cash 258 + card 400 = 658. Cash is always stored net of the change given.
Print and share
Print opens Select Printer:

*Select Printer: paper size, printers found on this PC, and Print Receipt*
- Pick a paper size (thermal 112 / 80 / 58 mm, or A4 / A5).
- Pick a printer from the list.
- Tap Print Receipt.
The default printer, paper size and template come from Printing. If the order has returns, the bill can print as a sales-and-return bill.
Share opens Share Invoice with three options:
Option | What happens |
|---|---|
Share as PDF | Builds the PDF bill. On Windows it is saved in Documents/epos; use Open PDF, Open File Location or Copy Path. |
Share to Email | Opens your email app with the invoice link. Subject "Invoice #ORD-004851". |
Share via WhatsApp | Sends through the company WhatsApp bot: Send Invoice Link or Send with PDF. If the bot is offline you see WhatsApp Not Connected and Connect WhatsApp. |
The invoice link has the form https://{{server}}/invoice/ORD-004851. The customer needs a phone number for WhatsApp.
Change the order status
- Open the order, tap Order Status (or Change Order Status in the list).
- Pick a new Status in Update Order Status.
- For shipped or delivered, you can enter Delivery Logistics.
- For cancelled, pick a Refund Payment Method, enter a Refund Amount and set Delivery Charge Refundable.
- Tap Update Status.
The list offers new, confirmed, processing, shipped, delivered and cancelled. The server only allows these moves:
From | Allowed next status |
|---|---|
init | new, confirmed, cancelled |
new | confirmed, cancelled |
confirmed | processing, shipped, cancelled |
processing | shipped, delivered, cancelled |
shipped | delivered |
delivered | none (final) |
cancelled | none (final) |
Other rules:
- shipped needs packing to be complete first.
- A shipped or delivered order cannot be cancelled. Use a sales return.
- An order with a processed sales return cannot be cancelled.
- The refund amount cannot exceed the order total.
Change the payment status
- Tap Payment Status (or Change Payment Status).
- In Update Payment Status, pick Status: pending, paid or failed.
- Pick the Payment Method. It is needed for every status.
- Enter the Amount. The order total is shown for reference. Failed records no money, so no amount is sent.
- Tap Update Payment.
A paid amount must be above zero. If the order is already paid, the app says "This order is already paid". Payment statuses on the server are pending, paid, failed and refunded.
Cancel an order
- In the list, open More → Cancel Order.
- Cancel Order asks you to "Select a payment method and refund amount for this order."
- Pick the refund payment method and enter the Refund Amount. The original total is shown.
- Turn Delivery Charge Refundable off to keep the delivery charge out of the refund.
- Tap Confirm.
The refund must be more than 0 and not more than the original total. An unpaid Cash on Delivery order can be cancelled without refund details.
Create a delivery and record packing

*Order Details: shipping details with Create Delivery, and packing (status, packed at/by, packing photos and video)*
These actions are for the sales_executive and restaurant_sales roles.
Packing. Packing is available only for confirmed, processing or shipped orders.
- Tap Packing.
- Choose the staff member (Packed By (staff)) or type a Packer Name.
- Set Packed Date & Time.
- Add photos with Choose Photos (each up to 20 MB) and a video with Choose Video (up to 100 MB).
- Tap Save Packing.
The Packing section then shows Packed, Packed At, the packer, Packing Photos and Packing Video.
Create Delivery books an external courier:
Field | Notes |
|---|---|
Shipping Partner | Required. Your configured logistics partners. |
Pickup Location (Warehouse) | The partner's warehouse for pickup |
Shipping Method | From master data |
Transport Mode | From |
Payment Mode | From |
COD Amount | Required for Cash On Delivery |
Package Count, Weight (kg), Length (cm), Width (cm), Height (cm) | Parcel size |
Shipping Charge, Dispatch Date, Expected Delivery | |
Tracking / AWB No., Tracking URL, Remarks |
After saving you see "External delivery created successfully." and the Delivery Status.
Order Documents. Tap Delivery Note or Delivery Invoice to download that PDF for the order.
Online Orders
Online Orders is the same list filtered to orders placed on your online store. It has the same filters and actions. Its export file is named "online-orders".
Confirmed Orders (Sync attention)

*Sales > Confirmed Orders (Sync attention): offline orders that have not reached the server yet; empty when everything is synced*
When you confirm a sale, it is saved on the device first. It is then sent to the server once in the background. If that send fails or the result is unclear, the sale waits here. The page title is Sync attention.
When all is well it says "Every order on this device has reached the server."
Fix unsynced orders
- Open Sales → Confirmed Orders.
- Use Show filters to search by receipt number or customer, or pick a Status:
- Needs review: the result was unclear (for example the network dropped mid-send).
- Rejected: the server refused the sale.
- Not sent: the sale never left the device.
- Tap Sync all (n) to send everything, or tick orders and tap Sync selected (n).
- On a single order, use Sync order or Retry sync.
The More actions menu (⋮) on each order has:
Action | What it does |
|---|---|
View details | Order information, items, payment, discounts, delivery |
Print receipt | Reprints the bill |
Sale details (edit) | Fix the receipt number, date or time before resending |
Edit request JSON | Advanced: edit the saved request body (support use) |
Log (n) | Each send attempt with its request and response |
Delete / Remove from list | Removes the sale from this device. This cannot be undone. |
Dismiss | Hides it from the attention list |
There is no automatic retry. Check this page before every day close. Day Close warns you when orders are still waiting here.
How it works
- List:
GET /api/v1/order/executive/list-orderswithstore_id,number,filter_name,filter_phone,filter_email,filter_price,filter_status,filter_payment_status,filter_min_amount,filter_max_amount,filter_datetime[from],filter_datetime[until],business_date,page. Online Orders addsfilter_online_sales=true. - Details:
GET /api/v1/order/executive/order-details/{order_number}. - Status:
POST /api/v1/order/order-change-statuswithorder_id,status, and optionalrefund_amount,payment_method,delivery_charge_refundable,delivery_logistics. - Payment status:
POST /api/v1/order/order-change-payment-statuswithorder_id,status,amount,payment_method(the master-data id). - Cancel:
POST /api/v1/order/cancel-orderwithorder_id,refund_method,refund_amount,delivery_charge_refundable. - Documents:
order/documents/delivery-note/{no}andorder/documents/delivery-invoice/{no}. - Delivery and packing:
order/external-logistics,order/order-details/{no}/external-delivery,order/packing/{no},order/packing-staff. - Sync: offline sales are resent with
order/add-to-orderororder/update-order. Each carries a uniqueclient_sale_id, so a resend does not create a duplicate. - Order status is stored as text (new, confirmed, …). Payment method is stored as the
PAYMENT_METHODmaster-data id.