A cash counter that posts through the same books

PHP Ledger's optional cash point of sale builds a cart, reviews cash and change, and prints a receipt. A confirmed sale records one balanced journal through the central posting service, so the day's takings appear in the reports without re-keying. Switch the module on under Modules when a counter needs it.

Screens show a fictional sample business, Willow Corner Shop, in version 1.4.7.

Three steps at the counter

The screen stays on one page: products on the left, the current sale on the right. A sale date is set before review, and the total is verified again when you confirm, so a slow connection cannot post a stale cart.

  1. Build the cart

    Tap a product to add it, search or filter the catalogue by category, and adjust quantities in the cart. Prices come from the product register, so the counter never types a price by hand.

  2. Review and cash

    Check the total and the sale date, enter the cash received and see the change. Nothing is posted until you confirm, and the review step is where a wrong quantity is caught.

  3. Receipt

    Print the receipt for the customer. The confirmed sale posts one balanced journal through the central posting service, the same path every invoice and expense takes.

Point of sale, build cart stepSample business
The same point of sale screen on a phone, with the product grid in two columns and the empty current sale panel showing a total of USD 0.00 below the products.
Point of sale on a phoneSample business

What it records

A confirmed sale in PHP Ledger posts one journal: debit cash, credit sales. The entry goes through the same central posting service as every other document, so the books stay balanced and the sale appears in the account statements, the profit and loss and the cash position immediately.

Confirming the same sale twice returns the same receipt instead of posting twice, and a reversal of a counter sale is a linked entry with its reason recorded, like any other correction.

What it is for

Two situations suit the cash counter: evaluating the posting path with a real till before committing to it, and small counters that take cash only, such as a kiosk, a canteen or a workshop front desk.

Businesses that need stock, tax or card handling at the till keep selling through invoices and receipts, where those workflows are complete. The counter is a convenience over the books, not a second set of them.

What the counter does today, and what it does not

The limits are published rather than implied, and a production shop point of sale was never added; maintenance has stopped for lack of funds.

Today

  • A cart with search and category filters, cash and change review, and a printable receipt
  • One balanced journal per confirmed sale, posted through the same central service as every document
  • Switched on or off per company under Modules

Not yet

  • Stock movements and cost of sales at the counter
  • Tax at the counter
  • Discounts, card payments, credit sales, refunds and tills
  • A production shop point of sale; that is a later capability release

Questions about the counter

Does a cash sale update stock?

Not at the counter in version 1.0. The cash point of sale posts one journal, debit cash and credit sales. Stock movements and cost of sales at the counter were never added at the counter; they were recorded through invoices and stock counts instead.

Can I print a receipt?

Yes. Every confirmed sale produces a printable receipt, and confirming the same sale twice returns the same receipt instead of posting twice.

Can I switch the module off?

Yes. The point of sale is a module that a company switches on or off under Setup, Modules. Businesses that sell through invoices only never see it.

Product screen

Screens show a fictional sample business

Scroll the image to explore it. With a keyboard, focus the image area and use the arrow keys.