Selling on Account
Selling on account uses the same order flow as usual. There is one difference: the payment method is On Account (Tempo), and the customer must already have a credit account.
Where it works
| Place | How |
|---|---|
| POS | Pick the customer, then On Account at checkout. The customer card shows the limit, debt, and available credit |
| Dashboard, Create Sale | Pick the customer and the On Account payment method |
| Online store (checkout) | The signed-in customer chooses On Account, if you allowed it in credit settings |
A registered customer is required. Guest checkout or an order with no customer cannot use credit.
Before the On Account button appears, Etalasse checks the customer's account. The button only shows for Active accounts, with the available credit displayed. If the customer has an invoice overdue by more than the grace days, a warning tells you to collect first. The real check is always done by the server when the order is created.
What happens when the sale succeeds
- The order is Paid immediately. There is no new status, no payment screen, no change due, and no cash drawer entry. Do not set the order to Paid again afterwards.
- The order total is the normal full price. The total calculation is unchanged.
- One invoice is issued for the order total, with an invoice number (for example
S-27-0042) and a due date (sale date + the account's terms). - Stock, coupons, and points spent are handled like any order.
- Loyalty points, challenges, and membership are awarded at the sale, because credit customers are trusted accounts. If the order is canceled or refunded, points are reversed as on a paid order. A write-off does not reverse points.
- Digital products are released as for a Paid order.
- A credit order never expires automatically.
- The order list shows an On account badge, the due date, and the amount still due. An order without that badge was not sold on account.
In the drawer report, a credit sale counts as non-cash. Cash only enters the drawer when the customer pays (see Receiving payments).
Check rules
Before the order is created, Etalasse runs these checks in order. If one fails, nothing is created and stock is untouched.
| Order | Check | Refusal message (code) |
|---|---|---|
| 1 | Your plan supports credit | Needs the Pro or Enterprise plan (PLAN_LIMIT) |
| 2 | A customer is selected | A customer is required (CREDIT_CUSTOMER_REQUIRED) |
| 3 | The order type is supported | Booking, rental, F&B, and marketplace-seller products cannot be sold on account (CREDIT_NOT_SUPPORTED) |
| 4 | For the online store: online credit is on | Credit is not allowed on the online store (CREDIT_STOREFRONT_DISABLED) |
| 5 | The customer has a credit account | The customer has no credit account (CREDIT_NO_ACCOUNT) |
| 6 | The account is not blocked | The account is blocked, with the blocked reason (CREDIT_BLOCKED) |
| 7 | No invoice is overdue beyond the grace days | An invoice is overdue: shows how many days late and the grace days (CREDIT_OVERDUE) |
| 8 | Debt + order total does not exceed the limit | Credit limit exceeded: shows the limit, debt, available credit, and order value (CREDIT_LIMIT_EXCEEDED) |
Notes:
- Debt + total exactly equal to the limit is still allowed.
- The limit check locks the account, so ten simultaneous sales cannot all slip past the limit.
- The same rules apply to everyone, including cashiers: a cashier can only sell to accounts in good standing.
- Grace days of 0 means a single day overdue already refuses new sales.
When refused because of the limit, offer the customer to pay part another way, or ask the Owner to raise the limit.
Canceling and refunding credit orders
Canceling or refunding a credit order is done as a credit note: it first wipes out what is still owed, and only the part the customer has already paid goes back as money.
Let the refund value be V, the invoice balance D, what the customer has paid P, and the cash already returned by earlier notes C:
- the invoice is reduced by the smaller of V and D
- the rest is returned as money, but never more than P - C
- a cancel wipes out all of D and returns P - C
Example: an order of Rp500,000, the customer has only paid Rp200,000 (Rp300,000 still owed).
- Order canceled: the Rp300,000 invoice balance is wiped out, and you return Rp200,000 in cash.
- Refund of goods worth Rp100,000: the invoice drops by Rp100,000 to Rp200,000. No money goes out.
- Refund of goods worth Rp400,000: the invoice drops by Rp300,000, and the remaining Rp100,000 is returned in cash (still below the Rp200,000 already paid).
Cancel from Sales as usual (Paid orders only). The customer cannot cancel it themselves. On a refund, the Dashboard shows "credited to the customer's account: X, cash to return: Y". Other refund details are in Refunds and returns.
The invoice then becomes Credited (or Paid when something had been paid). A given refund or cancel can only be credited once.
If the debt was already written off and the goods are then refunded, cash is returned only up to what the customer actually paid. The written-off part is not paid back. Cash returned records a PAY_OUT on the open shift; the credit-note part does not.