Cash-sale entry

The screen where a shop owner types in a cash sale — the step right before the confirmation. The job is small and frequent: enter an amount, record it.

Before
9:41
After
9:41

Existing screen. A home-made calculator: an "Add items to get started" empty state fills the top half, a price field reads $100 and a big "= $100" repeats it, the operators sit as bare grey glyphs, and a red C wipes everything in one tap.

Proposed screen. The real Numpad in calculator mode. The owner keeps the power a shop actually needs — total a few items, take off a discount — but on the system component: one clear amount readout, a running subtotal above the keys, tinted operator keys, a neutral AC beside a non-destructive delete, and one primary "Record sale." (It's live — tap the keys.)

What changed.

  • The "Add items" empty state is gone — the screen does one thing.
  • The doubled readout ($100 and = $100) collapsed to one amount, with the calculator's running subtotal shown quietly above the keys.
  • The home-made keypad became the shared Numpad — tinted operators, a live subtotal, and proper AC / / =.
  • The destructive red C became a neutral AC plus a delete that removes one digit instead of the whole entry.
  • The $ became the local currency, Ks.

Why it changed. Totalling a few items or taking off a discount is a real counter-side need, so the calculator stays — but as the design-system component, not a cramped one-off. Two readouts of the same number make the owner stop and check which is real, so there's now one. Red is the system's colour for destructive and error states; a red "clear-everything" key punishes an ordinary correction, so clearing is neutral and a single-digit delete sits next to it. And an empty "items" panel competing for the top half implies a step that isn't there.

Which rule applies.

  • One job per screen — remove the competing empty state.
  • One readout per value — never show the same amount twice.
  • Reuse the component — a money screen that needs maths uses Numpad's calculator mode, not a hand-built keypad.
  • Colour roles — red is reserved for destructive/error; a neutral clear plus a single-digit delete replace a red "C".
  • Currency and number formatting follow the user's locale, not USD.

User outcome. The owner totals the sale the way they think — add two items, knock off a discount — sees one clear amount, and records it, without a red key that threatens to erase everything or a second number to reconcile.

Edge case fixed. Mistyped amount. The pad's delete () fixes a single wrong digit, while AC clears deliberately — instead of one red C that wipes the whole entry and makes the owner start over.

Reusable rule

If a money screen needs maths, use Numpad's calculator mode — don't hand-build a keypad. Show the amount once, keep clears neutral (a red key means "destroy"), and put the currency in the user's locale.