You've probably heard of Square, that payment processing company known for enabling smartphones to be business POS machines.
I was amused to see them, after ten years, breathlessly discover double entry accounting. Why, they even came up with a clever name for transactions, I see!
https://developer.squareup.com/blog/boo ... e-service/
"To address consistency, we picked a well-established, public-domain, battle-tested approach to modeling financials that enables all of our properties: Double Entry Accounting.
Double Entry Accounting forces you to state not just what financial state change occurred, but why. The accounting equation states that all transactions (which we call “journal entries”) must balance to 0, so each cent lost is matched with a cent gained."