Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
      • Get a Tailored Demo
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +32 2 290 34 90
    • Get a Tailored Demo
  • Pricing
  • Help
  1. APPS
  2. Point of Sale
  3. POS Payment Correction v 18.0
  4. Sales Conditions FAQ

POS Payment Correction

by AminiTech Solutions https://aminitechsolutions.com
Odoo

$ 29.00

v 18.0 Third Party
Live Preview
Apps purchases are linked to your Odoo account, please sign in or sign up first.
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Invoicing (account)
• Point of Sale (point_of_sale)
• Discuss (mail)
• Inventory (stock)
Lines of code 1153
Technical Name aminitech_pos_payment_correction
LicenseOPL-1
Websitehttps://aminitechsolutions.com
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Invoicing (account)
• Point of Sale (point_of_sale)
• Discuss (mail)
• Inventory (stock)
Lines of code 1153
Technical Name aminitech_pos_payment_correction
LicenseOPL-1
Websitehttps://aminitechsolutions.com
  • Description
  • License
For Odoo 18 · Community & Enterprise

POS Payment Correction

Fix the wrong payment method on a finalised order, split a single payment into many, or merge several into one — in one wizard, with a full audit trail. Open or closed session, invoiced or not.

✅ Open or closed sessions ✅ Invoice accounting preserved ⭐ 90 days free support
Restructure Payments wizard splitting a finalised POS order into multiple corrected payment lines
Overview Features Support FAQ
Overview

A wrong payment method should not mean a cancelled day

When the cashier picks Cash but the customer paid by card — or recorded one tender when there were two — the standard fix is to reverse the order and re-key it. POS Payment Correction lets a manager fix the payment in place, keep the order intact, and leave a complete audit trail of who changed what, when, and why.

💳

Change Payment Method

Switch a finalised payment line to a different method — the current method is hidden from the picker, so a no-op is impossible.

⚙️

Restructure Payments

Split one tender into many, merge several into one, or redistribute amounts across methods — all in a single wizard that respects the order total.

⚖️

Strict Balance Enforcement

The Apply button stays hidden until the corrected lines sum exactly to the order total — over-paying or under-paying is impossible.

🚫

No Duplicate Methods

Picking a method already used on another line surfaces an instant warning and clears the field — two lines on the same tender cannot slip through.

🔒

Immutable Audit Trail

Every correction writes a permanent log row with the reason, the user, and the linked journal entry — rows cannot be edited or deleted, even by managers.

🏦

Closed-Session Safe

A balanced journal transfer moves the cash from the old method's account to the new one — the original closing entry stays untouched.

How it works

Two wizards, one audit trail

Two manager-only buttons land on every finalised order — Change Payment Method for a one-line swap, Restructure Payments for splits and merges. Every action is logged.

01 — Change Method

Swap the wrong tender, keep the order

When the cashier picked the wrong payment method, open the order and switch it in seconds. The current method is hidden from the dropdown so a no-op change is impossible — if you somehow route an RPC with the same method, the server still refuses with a clear error.

  • ✔One-click — pick the payment line and the new method, add a reason
  • ✔No-op blocked — the current method never appears as a choice
  • ✔Manager-only — cashiers do not see the button
  • ✔Reason required — every change explains itself in the log
Change Payment Method wizard with the dropdown open, current method excluded from the choices
02 — Restructure

Split one payment into many — or the other way round

A single wizard handles every common split: one tender becomes two, two become one, or amounts redistribute across methods. Lines pre-populate from what was actually charged, so the manager edits from a known good starting point.

  • ✔Split, merge, redistribute — all in one wizard
  • ✔Pre-populated — starts from the order's current tenders
  • ✔Live totals — sum of lines and variance update as you type
  • ✔Delta labels — each line tags itself NEW or AMOUNT CHANGED
Restructure Payments wizard showing corrected lines that balance the order total
03 — Balance Gate

Apply stays hidden until the math works

If the corrected lines do not sum exactly to the order total, a red banner names both figures and the variance, and the Apply button disappears entirely. Over-paying or under-paying an order is structurally impossible — even a crafted RPC is rejected server-side with the same numbers in the error.

  • ✔View-level — Apply hidden the instant lines diverge from the total
  • ✔Variance banner — names sum, total, and the difference live
  • ✔Server backstop — rejected even if the form is bypassed
  • ✔Multi-currency aware — uses the order's currency rounding rules
Restructure wizard showing the red unbalanced-restructure variance banner
04 — Dedupe

One method per line, no surprises

If a manager picks a method that is already on another line, the wizard instantly pops a warning naming the tender and clears the field. Two lines on the same method — which would silently merge in the audit and confuse a reviewer — cannot happen.

  • ✔Server-side check — runs the moment a method is picked
  • ✔Clear message — names the conflict, suggests the next step
  • ✔Field cleared — the line stays open for a different method
  • ✔Editing in place — an existing line can still keep its method
Duplicate payment method warning popup with the tender name and remediation instruction
05 — Audit Log

Every correction, on the record

A dedicated Payment Method Changes menu lists every correction across every shop. Change-type rows show Old Method and New Method. Restructure rows show the Affected Method and per-tender delta amount. The Kind column tags each row so managers see at a glance what happened.

  • ✔Kind-aware — change rows and restructure rows clearly distinguished
  • ✔Searchable — filter by POS, user, method, date, kind, was-invoiced
  • ✔Multi-company scoped — rules keep companies separated
  • ✔Stat button on orders — jumps straight to that order's changes
Payment Method Changes list with Kind column distinguishing Restructure rows from Payment Method Change rows
06 — Detail Form

Linked accounting, immutable record

Each log row records who changed what, on which session, with the operator's typed reason. When the change touches accounting — an invoiced order or a closed session — the linked journal entry is pinned to the row. Even a manager cannot edit or delete a posted log: the table is immutable at the access-control layer.

  • ✔Journal entry pinned — closed-session transfers and invoice reversals linked
  • ✔Reason captured — the operator's explanation lives with the row
  • ✔State at change — order state, session state, invoiced flag all snapshotted
  • ✔Immutable — perm_write=0 and perm_unlink=0 for every group
Audit log form for a closed-session change, showing the linked journal entry and the operator's reason
07 — Manager Controls

Right on the order, only for the right people

The two wizards live as header buttons on every finalised POS order, where the manager already works. A stat button shows how many corrections that order has seen and jumps straight to the log. Cashiers see none of it — the buttons are role-restricted at the view, the action method, and the access-control list.

  • ✔Header buttons — Change Payment Method and Restructure Payments on every paid order
  • ✔Stat button — per-order count of past corrections, one click to the log
  • ✔POS Manager only — three layers of group restriction
  • ✔Cashiers see nothing — the buttons disappear for non-managers
POS order form header with Change Payment Method, Restructure Payments, and the Payment Changes stat button
🏆

90 days of free support included

Free email support for 90 days from purchase — installation, configuration, and bug fixes. Real humans, one business day response time. Free lifetime v18.0.x updates continue forever.

90 DAYS
Support & Resources

Real help, from real people

We answer every email personally. No bots, no escalation queues.

📧

Email Support

One business day response time. Real humans answering real questions about installation and configuration.

reach@aminitechsolutions.com →
📚

Documentation

A short installation and configuration guide ships in the module README — everything you need to get running.

Request the guide →
FAQ

Frequently asked questions

Which Odoo versions are supported?
POS Payment Correction v18.0.x targets Odoo 18 Community and Enterprise editions. Odoo 17 and 19 builds are on the roadmap — email reach@aminitechsolutions.com if your business needs them prioritized.
Does this work after the POS session is closed?
Yes. When the session is already closed and posted, the correction triggers a balanced journal transfer from the old method's default account to the new method's — the original closing entry is preserved untouched, and the new transfer entry is pinned to the audit row.
What happens to the invoice if the order was invoiced?
For invoiced orders, the old payment journal entry is reversed and a new one is created on the new method, then reconciled with the invoice. The invoice stays in place — only the underlying payment moves change. The reversal, the new move, and the invoice are all linked from the audit log.
Can a cashier use these wizards?
No. Both wizards are restricted to the POS Manager group at three layers: the buttons disappear for non-managers, the underlying Python actions refuse to run without the manager group, and the access-control list denies wizard creation. The cashier never sees the option.
Can a manager edit or delete an audit log entry?
No. The audit log is immutable at the access-control list: perm_write and perm_unlink are 0 for every group, including POS Managers and even Administrators when acting through the UI. The module's own code is the only path that can create new rows.
What if the corrected amounts do not match the order total?
The Apply button is hidden until the lines balance exactly to the order total. The form shows a red banner naming the sum, the order total, and the variance — live, as you type. If a crafted RPC bypasses the form, the server still refuses and names the same numbers.
Does it work for multi-currency setups?
Yes. The wizard reads the order's currency and uses its rounding rules for both the balance check and the line validation. Different shops in different currencies are handled independently.
Does the license cover multiple databases?
One license covers one production Odoo database. SaaS platforms running multiple tenant databases need a license per tenant. Volume discounts are available for partners deploying to multiple clients.
Services We Offer

Beyond this module

If you need more than what this module ships, our team can build it. Eight years of Odoo work across East Africa retail, hospitality, and manufacturing.

💻

Custom Development

Bespoke Odoo modules built to your exact workflow. Quote on scope.

🚀

Odoo Implementation

End-to-end deployment, data migration, training, and go-live support.

🔧

Module Customization

Extend any AminiTech module to fit your specific business rules.

🛡️

SLA Support

Priority response, phone support, monthly health checks. Per-database plans.

About AminiTech Solutions

Production-grade Odoo apps

AminiTech Solutions builds Odoo modules that ship only after running in real production environments. Clear documentation, real support, no gotchas.

  • 📧 reach@aminitechsolutions.com
  • 📞 +254 746 883809
  • 🌐 Live demo — see "Live Preview" button at top of page
Odoo Proprietary License v1.0

This software and associated files (the "Software") may only be used (executed,
modified, executed after modifications) if you have purchased a valid license
from the authors, typically via Odoo Apps, or if you have received a written
agreement from the authors of the Software (see the COPYRIGHT file).

You may develop Odoo modules that use the Software as a library (typically
by depending on it, importing it and using its resources), but without copying
any source code or material from the Software. You may distribute those
modules under the license of your choice, provided that this license is
compatible with the terms of the Odoo Proprietary License (For example:
LGPL, MIT, or proprietary licenses similar to this one).

It is forbidden to publish, distribute, sublicense, or sell copies of the Software
or modified copies of the Software.

The above copyright notice and this permission notice must be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author or have a question related to your purchase, please use the support page.
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with