Skip to main content

Sales

Use Sales to review transaction activity and merchant selling performance at the record level.

What to look for​

  • recent orders — the table shows Order No., Customer, Total, Status, and Date
  • payment completion — orders move from PAYMENT-WAITING to PAID, ON-DELIVERY, DELIVERED, or CANCELED
  • order-level details that may affect support or stock follow-up

What this page includes​

  • transaction search by order number
  • a Create Sale button for recording manual sales
  • a Detail action per row, showing the customer, item breakdown, subtotal, discount, delivery fee, points used, and grand total
  • from the Detail dialog: a Print Invoice button plus status-workflow buttons matching the order's stage — Mark as Paid, Mark On Delivery, Mark Delivered, and Cancel Order
  • from the Detail dialog: a Refund button for orders that are paid, on delivery, or delivered
  • from the Detail dialog: the transfer proof photo uploaded by the customer for manual bank transfer payments
  • a Delete row action with a confirmation dialog — only for canceled or expired orders

The Create Sale form contains: Customer (optional — guest sales can still be recorded), Payment Method, Coupon (optional), Delivery (optional, with its fee added automatically), a list of Products with a quantity per row, and a Redeem customer loyalty points checkbox when a customer is selected. FNB shops also get an Order Type choice (Dine In / Takeaway / Delivery) and a Table picker for dine-in orders.

Wholesale prices now apply in Create Sale: when a product's quantity reaches its wholesale minimum, the unit price automatically switches to the wholesale price. Previously, a manual sale with a wholesale quantity could fail to save. For wholesale tiers, the quantity is the product's total across all rows.

Typical workflow​

  1. review the recent sales activity
  2. search for a transaction by order number
  3. open Detail to confirm the payment status and item breakdown
  4. update the order status (paid, on delivery, delivered, or canceled) or print the invoice as needed
  5. connect the sales result to customer, inventory, or support actions if needed
Sales page: an order table with number, customer, total, coloured status badges and datedashboard.etalasse.comKopi SenjaWORKSPACEHomeReportsCOMMERCECustomersProductsInventorySalesStocksSuppliersSalesARCreate SaleSearch order no…Order No.CustomerTotalStatusDateS-118-20261012-00042Rina WulandariRp 86.000PAID12 Oct 2026S-118-20261012-00041Budi SantosoRp 154.000ON-DELIVERY12 Oct 2026S-118-20261011-00040—Rp 42.000DELIVERED11 Oct 2026S-118-20261011-00039Sari RahayuRp 210.000PAYMENT-WAITING11 Oct 2026S-118-20261010-00038Agus PratamaRp 65.000CANCELED10 Oct 2026Status orderPAYMENT-WAITINGPAIDON-DELIVERYDELIVERED123
The sales list: (1) search by order number, (2) Create Sale records a manual sale, and (3) the badge colour shows the status of each order.

The sales list: (1) search by order number, (2) Create Sale records a manual sale, and (3) the badge colour shows the status of each order.

Order status​

Status only moves forward: waiting for payment → paid → on delivery → delivered. An order can be canceled until it ships. Canceling puts stock, coupons, and spent points back, and frees any booking slot or rental unit it was holding. If the order was already paid, the points it earned are taken back and you refund the customer's money yourself. If some items were already refunded, canceling only puts back the items that were not refunded, so nothing is counted twice.

An order that expires because it wasn't paid in time is treated like a canceled order: the stock, coupons, points, booking slots, rental units and flash sale quota it held are released, and the customer gets a notification that the payment expired.

Unpaid orders expire automatically​

An order waiting for payment no longer holds stock forever. Etalasse checks unpaid orders every 10 minutes and marks them expired after these limits:

How it is paidExpires after
Online payment through Midtrans or Stripe (virtual account, QRIS, e-wallet, card)24 hours
Manual transfer or manual e-wallet7 days, unless the customer has uploaded payment proof. An order with proof waits for you to check it and mark it paid
Pay on the spot (COD, pay at the cashier) and open F&B billsNever expires automatically

On expiry, everything the order held is released as on a cancel (stock, coupons, points, slots, rental units, flash sale quota), any still-open online payment is closed, and the customer is notified. These limits are set by Etalasse, not a shop setting, and only apply to orders created since this feature went live. Old orders left hanging are not changed automatically. An expired order can no longer be paid, so the customer needs to place a new order.

Seller commission when an order is canceled​

In multivendor shops, canceling a paid order now also takes back the seller's earnings from that order:

  • if the seller's earnings were already credited to their balance, that amount is debited again through a Cancellation entry in the seller's wallet ledger, minus the part already taken back by earlier refunds, and never twice;
  • if the earnings were not credited yet, the item's commission and net amount are zeroed and its payout status becomes Canceled.

The same applies to an order that expires. Before, a seller's commission could stay on record after the order was canceled.

The order number carries the order date in the shop's time zone, so an order placed just after midnight gets that day's date.

Each status change can send the customer an automatic update by WhatsApp, Email, or Push. Choose which updates are sent in Customer Notifications.

Bank transfer proof​

Customers who pay by manual bank transfer can upload a photo of their transfer receipt (a slip or a mobile-banking screenshot) right on their order.

New feature

Transfer proof upload launches with this release. Screens may differ slightly from the description below, but it works the same way.

  1. once the customer uploads the proof, you get a notification
  2. open Sales, then click Detail on that order to see the transfer proof photo
  3. check the amount and destination account against your bank statement
  4. if the money has arrived, click Mark as Paid

Important: the transfer proof does not confirm the payment automatically. The order stays waiting for payment until you press Mark as Paid yourself. Always check your bank statement, not just the photo, because a proof photo can be wrong or fake.

Refunds and returns​

Use Refund in the Detail dialog to give back part or all of a paid order.

  1. enter the quantity to refund per item, or choose Refund everything
  2. pick the method: Cash, Bank transfer, or Other
  3. choose whether the items go back into stock, and whether delivery is refunded too
  4. check the amount the system calculated, then click Record refund

What happens automatically:

  • the money amount is each item's share of the order, including the coupon discount and tax pro rata; the payment fee is not refunded
  • if the customer paid partly with points, those points come back in the same ratio; points earned from the order are taken back
  • cash refunds are recorded as a pay-out on the open cashier shift
  • the seller's share (multivendor shops) is adjusted
  • revenue reports show figures after refunds
  • if the order is canceled after a partial refund, only the items not yet refunded go back to stock. Items refunded without returning them to stock (damaged, for example) are not put back by the cancel either. Points are worked out the same way

Orders sold on account are canceled or refunded as credit notes instead of a full cash payout. See Canceling and refunding credit orders.

You can change the money amount, as long as it doesn't exceed what is still refundable. Only the owner or an admin can record refunds, not cashiers.

When to open Sales first​

Use this page when the main question is “what happened in the transaction?” rather than “what happened to stock?” or “who is the customer?” For aggregate analysis, use Reports.

Common review scenarios​

  • confirm whether a payment completed from the order's status badge
  • investigate a disputed or confusing order record through the Detail dialog
  • trace a sale before checking its impact on the customer or Stock Sold