4 ms·
Not the OP but I think it's essentially a event driven system as opposed to real time. Think of a account with $0 in it. 1. A -$25 event comes in 2. A +$50 e
by willcipriano 6y ago
Not the OP but I think it's essentially a event driven system as opposed to real time.
Think of a account with $0 in it.
1. A -$25 event comes in
2. A +$50 event comes in
3. A -$25 event comes in
The first event would fail in a transactional/real time system, but in my bank it doesn't. This tells me the balance is only calculated every once in a while. The balance you get in a app is only a estimate.
This makes sense when you think how slow bank transfers and using paper checks is. At some point it is decided to run the events "for real" and that's where overdrafts and the like are applied.
Don't think of them as transactions, instead it's a transaction request that can be rejected.
- bouncycastle 6y agoSure, it just means that the processing is done in a batch job at the end of the day. However, it doesn't mean that the batch jobs don't use a database. There's probably something like db2 on the mainframe, possibly even COBOL or RPG
- sohamsankaran 6y agoYep, it's pretty clear they use IBM db2 on z/OS internally for some applications. Here's an example job posting: https://webcache.googleusercontent.com/search?q=cache:Aqb9oUECiiYJ:https://intellijobs.ai/job/HSBCJava-DB2-Corporate-Functions-IT-vlNi7DLloFfOK915ijrK+&cd=4&hl=en&ct=clnk&gl=in https://webcache.googleusercontent.com/search?q=cache:Aqb9oU...
- kenniskrag 6y agoIt depends on the country and currency but there is the SWIFT system, which works like messaging. There is also the SIC and EuroSIC. For SWIFT system as a bank you have an account on the other bank and sends an instruction to decrease your amount and book it to a receiver. If there are more than one bank between them it gets routed but always "own decrease and other bank increase". Only the receiver bank books to the client. This system works because every bank has an account on other banks and you can build up some paths.
- lscharen 6y agoRelated to this — Wells Fargo was sued[1] (and lost) around 2010 for the practice of ordering daily transaction to (indirectly) maximize fees and penalties. In your example, a “good” bank would order the transactions: +$50, -$25, -$25 resulting in a zero balance with no penalties. What Wells Fargo did could result in the transactions being ordered as: -$25 (overdraft), -$25 (overdraft), +$50. Each overdraft could charge a fee up to $35, leaving the account holder with a -$70 balance. [1] https://www.latimes.com/nation/la-fi-court-bank-overdraft-fees-20160404-story.html https://www.latimes.com/nation/la-fi-court-bank-overdraft-fe...
- alexchamberlain 6y agoSeems much simpler only to charge fees at the end of the day...
- eqvinox 6y agoUnfortunately, the optimization goal for commercial entities generally is maximum money extraction, not simplicity :)
- tigershark 6y agoHow slow bank transfers are? Is 2 seconds really that slow?
- willcipriano 6y agoIn the US they clear overnight, as I understand (from a previous hn post I can no longer find) it's a big sftp server and flat files.
- nobleach 6y agoWorking in the fintech has opened my eyes to how many shortcomings there really are in banking/ACH. What you describe above is both my nightmare, and my reality. Pipe-delimited flat files being SFTPed via cronjobs overnight. Getting the emails at 5am that balances are off/not reconciled because somehow an errant '|' got into the mix. Additionally, the number of folks that ask for spreadsheets (not encrypted) with your SSN... and then proceed to email that data around (sometimes via Gmail!)
- deleted 6y ago[deleted]
- tigershark 6y agoThe article is about HSBC, a British bank, where the transfers happen in a matter of seconds. What is the point of comparing it with US banks?