CASHIER · CASH EXCHANGE

Cash Exchange Entry

Customer gives notes/coins and takes equal-value change. Net amount must be ₹0.

{{ isAccountHolder ? 'check_box' : 'check_box_outline_blank' }} Account Holder
@if (isAccountHolder) { } @else { person_outline Walk-in Customer } @if (needsIdProof) {
warning Amount ≥ ₹50,000 — Customer PAN / Aadhaar required (RBI)
}
south Received from customer ₹{{ receivedTotal | number: '1.2-2' }}
@if (notes.length) {
Bank Notes
} @for (d of notes; track d.id) {
{{ d.label }}
₹{{ subtotal('r', d) | number: '1.2-2' }}
} @if (coins.length) {
Coins
} @for (d of coins; track d.id) {
{{ d.label }}
₹{{ subtotal('r', d) | number: '1.2-2' }}
}
north Given to customer ₹{{ givenTotal | number: '1.2-2' }}
@if (notes.length) {
Bank Notes
} @for (d of notes; track d.id) {
{{ d.label }}
₹{{ subtotal('g', d) | number: '1.2-2' }}
} @if (coins.length) {
Coins
} @for (d of coins; track d.id) {
{{ d.label }}
₹{{ subtotal('g', d) | number: '1.2-2' }}
}
Received₹{{ receivedTotal | number: '1.2-2' }}
swap_horiz
Given₹{{ givenTotal | number: '1.2-2' }}
Difference ₹{{ difference | number: '1.2-2' }}
@if (receivedTotal > 0 && !matches) {
warning Received and Given totals must match (net ₹0).
} @if (hasGivenOverdraft) {
block Insufficient stock — cannot give to customer
@for (item of givenOverdraftItems; track item.label) {
{{ item.label }} Need{{ item.requested }} · Available{{ item.available }} Short: {{ item.requested - item.available }}
}
} @if (needsIdProof && !customerIdProof.trim()) {
badge Enter customer PAN / Aadhaar to proceed (amount ≥ ₹50,000).
}