| models | ||
| static/src/xml | ||
| __init__.py | ||
| __manifest__.py | ||
| .gitignore | ||
| README.md | ||
POS Cash Opening Adjustment
Version: 17.0.1.1.0
Author: Suherdy Yacob
Category: Point of Sale
License: LGPL-3
Summary
Prevents unwanted journal entries by handling zero-amount payments and automatically adjusting negative cash differences during POS session closing.
Features
- Phantom Difference Prevention: Relies on standard Odoo mechanisms to ensure no journal items are created when the expected cash mathematically matches the inputted cash (e.g. opening with 150k and closing with 150k, or opening with 200k, selling 100k, and closing with 300k).
Technical Details
Validation Override
The module overrides _validate_session in pos.session:
- Auto-Adjustment: Detects if
cash_register_balance_end_realis greater thancash_register_balance_end. If so, it overrides the real balance to match the expected balance before standard accounting lines are generated, avoiding the creation of profit lines. - Zero-Amount Fix: Iterates through all orders in the session and unlinks any payment lines where the amount is considered zero by the session's currency.