Why does rounding matter? It's not important from an accounting perspective. And your billing system doesn't need to angrily send invoices when a customer owes a penny.
Tax laws were written for cash businesses where the cash in the register never 100% matches the sum of receipts. What matters in my experience is that your books are balanced, but there is no such thing as "perfect accounting." In the real world inventory goes missing for reasons unknown (broken, stolen, never delivered properly) and as long as you've got an entry in the books that plugs the hole it's fine in practice. Accountants and auditors don't do forensic investigations, not even for publicly listed businesses.
I have never met an accountant who cared even slightly even about very significant tax compliance issues. Businesses don't want to change their sloppy ways either. They want to make money first and let the accountants clean up the mess later (impossible).
We are talking about very different things. You are talking about mistakes that happen, sure that happens, write-offs of inventory or what have you obviously happen in every organization. We lose track of things, it happens, it's fuzzy. All accountants get that.
That's not what I'm talking about at all. I'm talking about rounding math. If you always round down, and I always round up, and then we supposedly have 50M identical transactions, what is the likelihood that we are even in the same ballpark? fairly low.
When you are talking about millions or billions of dollars, a rounding error can account for significant sums of money.
When you and your bank are off on how much money you supposedly have by 6 or 8 figures due to rounding, you absolutely better care.
The US has no consistent rounding laws for accounting, but the EU has a consistent rounding rule around the euro. The EU has an entire paper around rounding the euro available here: https://ec.europa.eu/economy_finance/publications/pages/publ... The US basically shrugs and makes no ruling, because if you ever go interact with many different banks, you will find out that they don't all round the same.
Also you might find the wikipedia page interesting: https://en.wikipedia.org/wiki/Rounding There are plenty of rounding options, and sometimes figuring out how an organization you interact with decided to do their rounding can be a fun exercise :)
If you know anything about dealing with money in computers, you know that floating point math and money math are completely incompatible, so you have to do decimal math to deal with money. This is like engineering of financial systems 101. Rounding math is financial systems 201.
We’ve processed millions of dollars and we have never encountered any sort of rounding issues. Our numbers always match to the penny. Yes, banks do all sorts of rounding internally, but this doesn’t affect us. We get detailed transaction statements from the bank (correct to the penny) that contain amounts, currencies, fees, interest, settlement dates and everything else. We take that data and match it to our invoices.
The bank’s numbers are authoritative. We don’t know what spot forex rate the bank will use for any given transaction. We don’t know what fees we get charged. There is no such thing as a disagreement with the bank about how much money we have. Our bank accounts were empty a decade ago. Sum all transactions between then and now and you end up with our current balance, to the penny.
There are some edge cases, where for instance your quarterly numbers are reported individually (and therefore rounded) but the annual report uses unrounded quarterly numbers but this is all pretty straightforward.
Unnecessary complexity would lead to rounding footguns, but money in my world is discrete and fixed precision (just like physical).
Then you won the rounding lottery. It's great that you and the bank each round the same way. Also I'm jealous you only have 1 bank to deal with.
We have many banks we do business with, one of them rounds differently than the rest. It was fun to figure out how they rounded :) Even more fun altering our software to round differently for transactions involving that bank.
I can imagine it's a real headache. Maybe I'm surprised because our bank just doesn't do any rounding. It's all fixed point math. Except for fees, but we don't try to reverse-engineer that black box algorithm :)
> our bank just doesn't do any rounding. It's all fixed point math.
I promise they and you round. As I linked above via Wikipedia, there are many rounding strategies. From what you describe, I'd guess they are Rounding toward zero, i.e. just truncating all digits past 2 decimal places, which is a very reasonable rounding strategy for banks.
First you need to be more specific than that, as many people have different meanings to that phrase. Please read the links I sent up-thread, so you can learn that rounding is much more complicated than you appear to think.
If you mean: "Rounds to the nearest value; if the number falls midway it is rounded to the nearest value with an even (zero) least significant bit." Then yes I agree it's commonly used by banks in the USA. I promise though that not every bank in the USA uses it, or they might have subtle differences. Also banks outside the USA might have their own common rounding methods. If you are in the EU, they regulate how to round their EU currency(again, see the link I gave upthread, where I link to the EU standard).