As a former Systems Automation Engineer in a Lagos bank, I worked at the heart of the bank: maintaining the systems which kept the general ledger working. Interestingly, when I came to the United States, I noticed that we could do things differently from how we worked in Lagos. And if we follow along, we will fix most of the bank transfer failures and reversals which have become prevalent in the nation’s banking sector. Here is my suggestion which I have shared here many times:
In Nigeria, the bank debits you before the ATM dispenses money. If the seconds between debiting you and dispensing money, a technical glitch happens, you will go home with no cash even though you have been “paid” according to the bank’s general ledger. The same applies in electronic transfer, POS, etc. In Nigeria, it is Debit and then Pay.
In the US, they actually “lock” your money, put a temporary pending state, then pay before they debit you, making sure under no circumstances would you be debited with no dispensing of cash. For electronic fund transfer, there is a PENDING state (you see that in your online account) before any debit as the bank “warehouses” the fund, making sure the payer cannot re-use it.
Notice that it has already sent value to the recipient. Once it establishes the recipient has the value, it moves from PENDING to DEBIT. Where it is unable to deliver value, it aborts that process and returns money to the payer. By doing this, it cannot debit you without serving your purpose; a great system design which works irrespective of network speed. This whole thing takes a short time. And because of it, there is no need for reversal as a confirmation handshake is established with the recipient before you are debited.
We can learn from this, upgrade our system design and get over the failures, irrespective of where the weak links are localized. This system design works for slow and fast networks because it is agnostic of speed, being fully structured to be state-based which means one state has to finish before the next begins, with all happening in seconds.
Comment on Feed
Comment 1: Your explanation immediately made me think of the seven-layer Open Systems Interconnection (OSI) model, which is a conceptual framework that standardizes the communication functions of computer networks….
1. Physical layer
2. Data link layer
3. Network layer
4. Transport layer
5. Session layer
6. Presentation layer
7. Application layer
And how each layer is responsible for ensuring one task is performed theoretically without fail. Where the Data link layer (layer2) his provides error-free transmission of data frames between two nodes on the same network segment, layer 3 (network) manages the addressing and routing of data packets between different networks, and layer 4 (transport) provides end-to-end communication between applications on different devices. The other layers providing equally important tasks on their own to ensure packets are delivered as they were sent. If an error is detected a request to resend a packet is produced.
It seems so simple – <debit account> only after confirmation of <credit account> is established.
My Response: Absolutely – resilient by design. When you check all the layers, it seems like an orchestra where everything works as expected.
Comment 2: These are technologies our country, particularly the banking sector shouldn’t be hesitant to adopt. At least, with such, there would be an enormous decline in the inflow of complaints revolving around these issues…either physically or electronically via social media or emails. Prof, could be that the banks don’t have the necessary capital to harness this sophisticated technology(ies)?
My Response: They already have the technology. They just need to change the system design flow. This is not about tech. This is about system design. Nigeria operates from the angle of trust deficit – a key reason to debit FIRST before doing anything. But we can handle that with a Pending state.
A Simple Reconfiguration for Nigerian Bank Transfer Failures in POS, ATMs, etc to Disappear






