In transactional systems like banks the most reliable approach to implement the the software is event sourcing.