Point of Sale SubsystemCore Module

Cashier Terminal

1. Overview & Purpose

What is the Cashier Checkout Terminal?
Cashier Terminal provides a high-speed touch and barcode retail checkout interface. It validates real-time branch stock, handles item and order-level discounts, supports split and multi-tender payments, and immediately deducts inventory upon checkout.
Menu Location:Point of Sale > Cashier

2. When to Use Cashier Terminal

High-Speed Barcode Scanning & Instant Drawer Pop (Rush Hour)

Frontline cashier processes high-volume customer queues during peak lunch hours using a 2D barcode scanner in keyboard wedge mode.

Recommended Action:Scan item barcodes rapidly; system validates stock, calculates tax/subtotal, and pops the cash drawer via printer kick pulse upon cash tender entry.

Split Multi-Tender Settlement (Cash + QRIS / Card)

A retail customer purchasing goods worth Rp 350.000 pays Rp 100.000 in paper currency and covers the remaining Rp 250.000 via QRIS e-wallet.

Recommended Action:Open the payment tender dialogue, enter Rp 100.000 under Cash, select QRIS for the remaining balance, and complete transaction without manual calculation.

Member Account Lookup & Order-Level Promotional Coupons

A registered loyalty member presents their phone number to claim wholesale tier pricing and a 10% store anniversary coupon code.

Recommended Action:Search customer in customer picker to apply member price list automatically, then apply order discount percentage before finalizing payment.

Stock Availability Guard & Negative Checkout Controls

Cashier attempts to ring up an item whose digital system balance is currently zero on the store floor.

Recommended Action:If location policy enforces strict stock, checkout blocks the item; if "Allow Negative Stock" is enabled, checkout proceeds uninterrupted while logging negative on-hand units.

Line-Item vs Whole-Order Promotional Discount Stacking

Applying a 15% promotional markdown on an individual clearance SKU while also honoring a Rp 20.000 store anniversary shopping voucher on the cart subtotal.

Recommended Action:Apply line discount directly on the target item row, then input the voucher discount on the order summary pane; the engine computes tax on the net subtotal.

Dine-In Guest Count & Table Identifier Tracking (FnB Operations)

Restaurant cashier or counter attendant rings up an order for a party of 4 guests seated at Table #12.

Recommended Action:Enter Guest Count = 4 and record "Table 12" in transaction remarks; metrics feed average-spend-per-head analytics in daily reporting.

B2B Client Tax Identifier & Dedicated NPWP Billing at POS

A corporate representative purchases retail office supplies at the checkout register and requests an official company tax receipt with corporate NPWP.

Recommended Action:Select the registered corporate customer account before completing checkout; the receipt prints the customer tax ID and generates an official commercial sales invoice.

3. Data Dictionary & Fields

Schema structure for the transactional sales_transactions header table:

Field / ColumnInput TypeRequirementDescription & Operational Guide
invoiceNumber
STRING(100)Required
Unique receipt invoice code generated upon payment commit (e.g. INV-POS-20260521-001).
orderChannel
ENUM(POS, ONLINE, MOBILE, MARKETPLACE)Required
Originating sales channel, defaulted to POS for counter transactions.
customerId
BIGINT (FK)Optional
Customer reference or null for anonymous Walk-in Customer.
totalQuantity
DECIMAL(18,6)Required
Sum of all item quantities rung up in the transaction.
subtotal
DECIMAL(18,4)Required
Pre-tax and pre-discount gross price of all cart items.
discountTotal
DECIMAL(18,4)Required
Cumulative amount deducted via percentage or manual promotional discounts.
taxTotal
DECIMAL(18,4)Required
Calculated value-added tax according to applied tax configurations.
grandTotal
DECIMAL(18,4)Required
Net total payable by customer after taxes, service charges, and discounts.
paymentStatus
ENUM(UNPAID, PARTIAL, PAID)Required
Payment status of the sales transaction.

4. Interface Preview

Frontline cashier checkout interface featuring rapid product barcode scanner, shopping cart, tender breakdown, and live shift status.

Menu Location:Route: /admin/point-of-sale/cashier

Screen Preview: Cashier Terminal Interface

Visual interface illustration and control layout for menu Route: /admin/point-of-sale/cashier

1Barcode Scanner & Search2Order Items & Quantity Editor3Tender & Change Calculator4Shift Drawer & Cash In/Out
Cashier terminal interface showing product barcode search, guest count, order cart, multi-tender modal, and thermal slip printing.

5. Fast Checkout Workflow

1

Scan or Add Products

Scan item barcode with laser scanner or type product SKU/name into product search box.

2

Adjust Quantities & Discounts

Modify item quantities or assign line-item and order-level discount percentages.

3

Attach Customer & Guest Count

Assign customer account or keep Walk-in Customer default; enter guest count if required.

4

Trigger Payment Modal

Click the green PAY button at the bottom of the order summary pane.

6. Payment Processing & Tenders

1

Select Payment Method

Choose Cash, QRIS, EDC Debit/Credit, or Bank Transfer from tender options.

2

Enter Tendered Amount & Change

Input cash received; the interface immediately computes exact customer change due.

3

Confirm Payment

Click Complete Payment to finalize transaction and post stock deductions.

7. Receipt Printing & Drawer Pop

Automatic Cash Drawer Kick
If configured with an ESC/POS network printer, committing a cash payment sends the drawer kick pulse (ESC p 0) to open the cash box automatically.
1

Print Thermal Receipt

The system triggers print dispatch to thermal printer daemon or browser print dialog.

8. Cross-Module Impact

Target SubsystemRelational & Transactional Effect
Inventories & Stock MovementsInstantly writes OUTBOUND stock movement rows with SALE type and decreases branch on-hand stock.
Shift ManagementUpdates totalSalesAmount, expectedCashAmount, and transaction counts in the open shift.
Sales HistoryPersists completed transaction record and detailed line items for historical auditing.
Operational Best Practices
  • Use standard USB or Bluetooth 2D barcode scanners configured in keyboard wedge mode for fastest input.
  • Keep stock levels accurate in the branch storage to prevent checkout blocks caused by insufficient stock validation.