In Australia, our regular banking system lets you register your mobile phone number (or business/company number or email) as a 'PayID' and then that's all the info you need to send somebody an instant payment... Even our older system usually only takes until the next afternoon or morning on a business day (I believe the older inter-bank payments are settled in two batches per business day).
There is certainly no technical reason for the delay, a transfer should just be a transfer of a few bytes of information.
I think the usual explanation is that this system gives banks a pool of money that they are always free to invest in the time that it's neither in the original owner's nor the recipient's account.
In Australia, our regular banking system lets you register your mobile phone number (or business/company number or email) as a 'PayID' and then that's all the info you need to send somebody an instant payment... Even our older system usually only takes until the next afternoon or morning on a business day (I believe the older inter-bank payments are settled in two batches per business day).