# F-186 — POS configurable checkout, mixed payments and receipts Complete the TPV cashier flow for touch terminals and self-payment use cases. ## Scope - Increase configurable quick products from 6 to 8. - Replace line discount text/inline interaction with a touch-sized button; allow admins to disable line discounts per terminal. - Let admins configure and enable payment methods (cash, card, Bizum, Stripe, Apple Pay, or another named method). - Payment modal must allocate either the full remaining amount or a partial amount. Keep partial allocations visible in the cashier and permit another method until the total is covered. - For cash, accept tendered amount above the outstanding amount and calculate change. - Require an explicit final confirmation after payment allocation before closing the sale. - Generate a receipt with company identity, date/time, configurable ticket numbering, item name, quantity, subtotal, totals, payment methods/amounts, cash change, and return policy. - Offer print and email delivery. Clear the cashier only after print/email action succeeds or is explicitly completed. - Add a free-item flow for a non-stock product/service with required name and positive price; free items must not mutate inventory. - Keep monetary validation and sale completion authoritative on the backend. ## Out of scope - Real integrations with external payment processors. - Certified fiscal-printer protocols or country-specific fiscal certification. - Hardware-specific printer drivers; browser print is sufficient. ## Acceptance 1. Admin can configure up to eight quick products and POS renders all configured slots. 2. Line discount is a touch target and is absent/blocked when the terminal disables discounts. 3. Enabled admin payment methods appear in POS; disabled methods cannot be submitted. 4. Cashier supports full and partial payment allocations, displays paid/remaining totals, and permits mixed methods. 5. Cash tender above the remaining total displays and records change; non-cash overpayment is rejected. 6. A sale can only be confirmed when allocations cover the exact total, and requires explicit confirmation. 7. Receipt contains all requested company, numbering, line, total, payment, change, and return-policy data. 8. Receipt supports browser print and email delivery; cashier resets only after delivery completion. 9. A free item can be added with name and positive price and does not reserve or decrement stock. 10. Existing POS sale/reporting contracts remain compatible and tests plus `verify.sh` are green.