https://medium.com/slope-stories/solving-the-five-most-common-pitfalls-from-building-a-payments-ledger-0afe1a6eceae