| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Sales (sale_management)
• Discuss (mail) • Invoicing (account) |
| Lines of code | 273 |
| Technical Name |
sale_round_total |
| License | LGPL-3 |
| Website | https://profast.supply |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Sales (sale_management)
• Discuss (mail) • Invoicing (account) |
| Lines of code | 273 |
| Technical Name |
sale_round_total |
| License | LGPL-3 |
| Website | https://profast.supply |
The U.S. is phasing out the penny. The Treasury stopped minting new pennies in early 2025 — leaving businesses that handle cash needing to round transactions to the nearest nickel. No More Pennies makes that automatic in Odoo.
No More Pennies
Automatic sales order rounding built for the post-penny era. Your customers see a clean rounded total from their very first quote — no buttons, no rounding lines, no manual math.
Not Your Average Cash Rounding
Odoo's built-in Cash Rounding adds an extra line to your invoice. This doesn't.
Everything You Need
A complete rounding solution — two settings, zero friction
Rounded Before the Customer Sees It
Rounding fires when you send a quote — not just on confirm. The price the customer sees in their email is already the clean rounded total. No surprises between quote and invoice.
Three Rounding Increments
Choose 5¢ (nickel), 25¢ (quarter), or $1.00 from Sales Configuration Settings. Change it any time — takes effect on the next order.
Three Rounding Directions
Round Up — total never decreases, customers always pay a clean amount. Nearest — whichever boundary is closer. Round Down — total never increases, good for goodwill or promotional rounding.
Mixed Tax Line Safety
Orders mixing taxed and non-taxed items are handled correctly. The adjustment is applied only to the dominant tax group using its actual rate — no blended averages.
No Rounding Line Items
Unit prices are adjusted directly on your existing lines. No extra entries appear on the order or invoice — it just looks like naturally clean pricing.
Correction Pass Accuracy
After adjusting prices, the module measures the actual recomputed total and applies a micro-correction if needed. Odoo's per-line tax rounding never throws off the final number.
The Math, in Plain English
How we get from a messy total to a clean one
Find the rounded target
Calculate the next rounded total (5¢ / 25¢ / $1) from the current after-tax amount. With Round Up Only on, we always move to the next boundary — never down.
Back-calculate the pre-tax adjustment
Using the dominant tax group's actual rate: subtotal_adj = delta ÷ (1 + tax_rate). This is the exact pre-tax amount to add so the after-tax total hits the target.
Distribute across line items
Split evenly across eligible lines, then divide by each line's quantity to get the unit price delta. Odoo recomputes taxes naturally from the updated prices.
Correction pass
Force Odoo to recompute, measure the actual result, and fix any residual on a single line. The displayed total always matches the target — even with Odoo's per-line tax rounding in play.
Three Settings. That's It.
Sales → Configuration → Settings → Total Rounding
Common Questions
Yes — rounding fires when you send the quote, so the price the customer approves is already the rounded total. The invoice is generated from those same adjusted line prices. There is no difference between the quoted and invoiced amount.
Yes — since unit prices are adjusted on the sale order lines, any invoice generated from the order carries those same adjusted prices and produces the same rounded total.
Unlock the order back to draft using the standard Odoo lock button and original prices are automatically restored. Re-sending the quote or confirming will apply rounding fresh at whatever direction and increment are currently configured.
The module groups lines by their exact tax configuration, identifies the dominant group (most lines; ties broken by highest subtotal), and applies the adjustment only to those lines using their actual tax rate.
No. Odoo's Cash Rounding adds a separate rounding line to the invoice. This module adjusts unit prices directly — no extra line ever appears. The order and invoice totals are naturally clean.
Round Down guarantees the customer's total never increases — useful if you want to absorb the rounding difference yourself, run promotional pricing, or simply prefer the customer always pays the lower clean amount. Some cash-handling businesses also use it to avoid customers feeling overcharged even by a few cents.
Very little. With 5¢ rounding the maximum total adjustment is 4.9¢ spread evenly across all lines. With $1 rounding the maximum is 99¢ total. On a typical multi-line order the per-unit price change is a fraction of a cent — invisible to customers.
Sales Order Rounding for Odoo 18 · Free & Open Source (LGPL-3) · Requires sale_management
Please log in to comment on this module