pos_cash_opening_adjustment/README.md

20 lines
1.2 KiB
Markdown

# POS Cash Opening Adjustment
**Version:** 17.0.1.1.0
**Author:** Suherdy Yacob
**Category:** Point of Sale
**License:** LGPL-3
## Summary
Prevent opening cash journal entries and exclude opening float from closing totals while keeping reconciliation data.
## Features
- **Opening Cash Adjustment:** Modifies how opening cash is handled to prevent unwanted journal entries.
- **Closing Totals:** Excludes opening float from closing totals calculation.
- **Zero-Amount Payment Cleanup:** Automatically removes `pos.payment` lines with `0.00` amount during session verification. This prevents the creation of "Difference at closing PoS session" journal items triggered by empty payments (e.g. from 100% discount or external payment edge cases).
- **Negative Cash Closing Adjustment:** Automatically overrides the cashier's input to match the expected closing balance if a negative difference is detected, logging the action in the chatter and preventing a loss journal entry.
## Technical Details
### Zero-Amount Payment Fix
The module overrides `_validate_session` in `pos.session`. Before the standard validation process begins, it iterates through all orders in the session and unlinks any payment lines where the amount is considered zero by the session's currency.