We were having a "lunch" discussion if banks still take every transaction and write it to an OLTP database, or do they use event sourcing. The fact that ATMs need to provide money when disconnected, or the fact that transaction takes 24h to approve suggest it might not be a direct OLTP transaction. Anyone implemented a bank system care to shed some light on the matter ?
> The fact that ATMs need to provide money when disconnected<p>Is this a fact though? We provide ATM rentals/leases for our customers (though few ask for it these days) and I'm pretty sure they do not function if they are disconnected.<p>As far as I am aware a failure to connect to the issuing bank for a card will cause your card to be declined so that would lead me to believe their mainframes (and yes they are actually IBM mainframes in the cases I've experienced) must be online and connected.<p>Regarding the 24-48hr approval process.. that is more because of batches. And you're dealing with a responsible merchant (or host-capture environment) if you get those timeframes.<p>A merchant can wait for days to batch their credit cards in which case you're waiting as well.
most banks don't talk about this stuff, either since their tech is outdated or because they don't think customers are interested in improvements in this field.
the new banks in the UK <a href="https://monzo.com/blog/" rel="nofollow">https://monzo.com/blog/</a> <a href="https://www.atombank.co.uk/blog" rel="nofollow">https://www.atombank.co.uk/blog</a> <a href="https://www.starlingbank.com/blog/" rel="nofollow">https://www.starlingbank.com/blog/</a> don't blog about their stack as much as you'd hope - but they do everything online.