Skip to main content

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​

PlaceHow
POSPick the customer, then On Account at checkout. The customer card shows the limit, debt, and available credit
Dashboard, Create SalePick 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
POS checkout for a sale on account: the customer credit card with what they owe, limit and available credit, and On Account (Tempo) selectedKBToko Kelontong Berkah0812-3456-7890Credit accountOwesRp 1.250.000Credit limitRp 5.000.000Available creditRp 3.750.000TermsNet 30 daysProductsRice 5 kg × 10Rp 650.000Cooking oil 2 L × 12Rp 432.000Sugar 1 kg × 12Rp 168.000PaymentCashQRISBank TransferOn Account (Tempo)On account: Net 30 daysAvailable credit: Rp 3.750.000This order: Rp 1.250.000TotalRp 1.250.000Pay123
POS checkout for a customer with a credit account: (1) the credit account card shows what they owe, the limit and available credit, (2) choose On Account (Tempo), (3) the terms and available credit before paying.

POS checkout for a customer with a credit account: (1) the credit account card shows what they owe, the limit and available credit, (2) choose On Account (Tempo), (3) the terms and available credit before paying.

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.

OrderCheckRefusal message (code)
1Your plan supports creditNeeds the Pro or Enterprise plan (PLAN_LIMIT)
2A customer is selectedA customer is required (CREDIT_CUSTOMER_REQUIRED)
3The order type is supportedBooking, rental, F&B, and marketplace-seller products cannot be sold on account (CREDIT_NOT_SUPPORTED)
4For the online store: online credit is onCredit is not allowed on the online store (CREDIT_STOREFRONT_DISABLED)
5The customer has a credit accountThe customer has no credit account (CREDIT_NO_ACCOUNT)
6The account is not blockedThe account is blocked, with the blocked reason (CREDIT_BLOCKED)
7No invoice is overdue beyond the grace daysAn invoice is overdue: shows how many days late and the grace days (CREDIT_OVERDUE)
8Debt + order total does not exceed the limitCredit 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.