| models | ||
| static/src/xml | ||
| views | ||
| __init__.py | ||
| __manifest__.py | ||
| .gitignore | ||
| README.md | ||
POS Cash Opening Adjustment
This module provides adjustments for the POS opening cash mechanism in Odoo 19.
Features
- Overrides
_set_opening_control_datato properly initialize and trackopening_cash_expectedandopening_cash_countedwhile utilizing Odoo's native functionality. - Tracks opening cash correctly so that the system correctly calculates differences.
- Leverages standard Odoo 19 journal handling for robust accounting integration.
- 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).
- Shortage Suppression: Automatically adjusts the real balance to match the expected balance when a shortage is detected, avoiding loss/expense journal entries.
- Surplus Recording: Allows standard Odoo behavior to record a surplus as a profit journal entry.
Technical Details
This module modifies the pos.session object, tracking:
opening_cash_expected: The expected cash balance when opening the session.opening_cash_counted: The actual cash counted by the cashier.opening_cash_difference: Computed difference between counted and expected opening cash.
It modifies the standard _validate_session process strictly for suppressing negative discrepancies (shortages where the ending cash register is lower than expected), logging the event into the chatter.
Author
Suherdy Yacob