Prices are decided by the server, not the till.
The till sends item IDs and quantities. The server re-reads every price from your catalogue, applies the quantity tier, the discount and the tax, and writes the sale inside a single transaction with row-level locking on stock. A tampered till cannot change what a sale costs, and a sale that fails part-way through leaves nothing behind.
Cashier discount caps are checked in the same place, so they can’t be worked around from the interface.