Friday, June 30, 2017

ScotiaBank and Interac In Action

This article has been updated to reflect 
further communication with the bank,
as well as further examination by myself.

So today I had to deal with Scotiabank.  The idea was to Interac money from one account to another account.  Obviously, because this post exists, you can guess this simple process turned into a bit of a train wreck along the way.

If you're not experienced with Canada's "Interac" system, allow me to quickly get you up to speed on this boondoggle.  

In short, you have banks connected to the Internet, who can't send money between bank computers over the Internet. To resolve this silliness, another organisation was created called Axcsys and they have this service called Interac, where you send money between bank computers over the Internet and they then charge you a fee for this. With me so far?  Right... Somehow, instead of sending these money instructions immediately, like you'd send anything else over the internet, this takes about 30 minutes.  Compare this with the longest known time to get a signal to Mars (24 minutes), and you'll that instructions can reach Mars about 6 minutes faster than they can reach you in the same city.

First, I sent the money from Scotiabank (yes, it's also going into Scotiabank on a different account, which is likely held inside the very same physical computer).  This email arrives about 30 minutes later.  

So far, so good.   

 

(Click for full-size)


I clicked to deposit it and log into Scotiabank, at which point the transaction goes into some kind of Schroedinger's transaction state by being both "temporarily unavailable" and just plain "unavailable".  


(Click for full-size)

I interpret that to mean the transaction is unavailable - and as it suggests, I wait for a bit before trying again.

This is the beginning of the where things get weird...  

The money is debited from the sending account and is sitting in a pool account at the Bank to be settled between banks tonight whilst the promise of the money is sent immediately to the depositing bank (the same bank it just left).  As a customer, I don't expect the bank software to lose money at any point or not be able to tell me where it is, but let's follow this process through to its logical conclusion.

I waited a little bit and tried again, just as the previous screenshot has suggested...  Now, I got this error, telling me that the transfer cannot be deposited.  


(Click for full-size)

So if the transaction was previously unavailable, and is now unavailable forever, you'd think that the transaction was unavailable, right?  It's pretty clear that the bank is trying to tell me "This transaction will never go through", right?

Wrong. 

I've seen this type of breakdown before where Interac transactions go into a weird state of quantum superposition.  We can see this breakdown of logic here, because this transaction has clearly been communicated to the customer as both a) unavailable previously, and b) no longer available going forward.  So, if the bank is saying this is "UNAVAILABLE", you should never then get an email from Interac like this:


(Click for full-size)

This email is written confirmation that the "unavailable" transfer has apparently gone through.  If you're not confused yet, you soon will be.  I gave it 30 more minutes and then checked the receiving account to see if the money ever arrived.  

Of course, despite having written confirmation the money arrived, the money never actually arrived.  

So, what does this mean?  

This means either:
a) The ScotiaBank online banking system was lying when it said the transaction was not available.
- or -
b) The Interac system was lying when it said the money was accepted on the receiving end.

As a programmer, it doesn't take many brain cells to realise that the Interac email couldn't have been sent out without some trigger from the bank telling it the money was received.  In the same way you can't move an object without applying overcoming forces, you can't have Interac tell you that the money was received without ScotiaBank telling Interac the money was received.... computers may be many things, but they're not psychic, so this has to have happened. 

To recap so far:  At this point, we know the customer has been led up the garden path and the bank has effectively lost track of my mortgage payment again.

So, I phoned Scotiabank and determined the following:

1) Apparently the system isn't working too well this morning and they are aware of this. 
2) It's going to take 48 hours to move the money from Scotiabank to Scotiabank to refund it.


Let's back this truck up a bit and look at things logically. 

1) Despite apparently knowing that things are broken, they're still allowing customers to initiate new transactions that will never succeed, instead of just being honest and transparent and saying "Hold off whilst we fix this mess".  That's wrong right there.

2) If Interac sent the email out that the amount had been accepted on the receiving end, this means ScotiaBank has told Interac that the amount was received - which is in contradiction to the online banking system that doesn't show the amount because it wasn't received.  This means that whilst the audit trail can be followed backwards to find out what really happened, they've effectively temporarily lost the transaction and my money in a gumbo of instructional baggage that's piling up somewhere because they haven't stopped accepting new transactions.



It's like there's some "common sense horizon" which when crossed, breaks down normal common sense and sensible logic. This should never have been allowed. It doesn't make sense to keep taking instructions if they're never going to work. Of course, now I'm waiting to get screwed when they don't refund the fee that I paid to send it.

I will do a second post when I get a resolution to this stupidity.