Clunky software with a confusing UI just cost Citibank $500 million

Cal Jeffrey

Posts: 4,180   +1,427
Staff member
Facepalm: Citibank is learning a costly lesson in software design as a triple-checked mistake caused the bank to send out almost a billion dollars in loan payments instead of only $7.8 million. Citibank blamed the blunder on an Oracle banking program with a confusing user interface.

On Wednesday, a judge ruled that creditors do not have to return payments that Citibank made to them in error. The bank was attempting to make $7.8 million in interest payments on behalf of Revlon last August, but a subcontractor in India handling the transaction mistakenly issued $900 million instead. The ruling described the overly confusing process required when using the software in question called "Flexcube"—part of the Oracle Banking Suite.

"On Flexcube, the easiest (or perhaps only) way to execute the transaction—to pay the Angelo Gordon Lenders their share of the principal and interim interest owed as of August 11, 2020, and then to reconstitute the 2016 Term Loan with the remaining Lenders—was to enter it in the system as if paying off the loan in its entirety, thereby triggering accrued interest payments to all Lenders, but to direct the principal portion of the payment to a 'wash account'—'an internal Citibank account... to help ensure that money does not leave the bank.'"

The subcontractor did not fill out the user interface correctly, and the entire amount went out to lenders rather than the majority being deposited to the wash account. Citibank requires that three people sign off on large transactions like this. Two workers at the outsourced firm okayed the transfer, and the final signature came from a Citibank senior official in Delaware, writing, "Looks good, please proceed. Principal is going to wash."

Citibank approached creditors and was able to get around $400 million of the funds back from some of the lenders, but others said, "no way." Bloomberg reports that Revlon debt is trading at only about 42 cents on the dollar, and some of its creditors were not willing to re-assume the risk of returning the early payoff.

Citibank filed suit to force them to pay back the funds, but District Court Judge Jesse Furman denied the bank's plea. Generally, in cases like this, the law would be on Citibank's side since it made the payments in error. However, there is an exception in New York called "discharge-for-value."

This defense says that if the receiver of a wire transfer is entitled to the money sent and did not know that the funds were sent by mistake, it does not have to refund the transaction. Revlon's lenders contend that they did not realize the transfers were overpayments. They claim they were under the impression that they were "prepayments" on the loans since the amounts were equal to the outstanding balances "to the penny." The District Court agreed.

"To believe that Citibank, one of the most sophisticated financial institutions in the world, had made a mistake that had never happened before, to the tune of nearly $1 billion — would have been borderline irrational," Judge Furman wrote in his opinion. "Accordingly, and for the reasons discussed above, the Court holds that the August 11th wire transfers at issue were 'final and complete transaction[s], not subject to revocation.'"

Citibank plans to appeal the decision saying, "We believe we are entitled to the funds and will continue to pursue a complete recovery of them." In the meantime, the judge ordered the lenders to keep the funds in escrow until the appeal process plays out.

Image credit: TungCheung

Permalink to story.

[/s]
 
herman-cain-smile.gif
 
I remember one of the instructors we had eon's ago when I was learning COBAL (Yes, that was decades ago). He said quite simply, if you can't demonstrate the function of any particular piece of software in 30 seconds or less, it's too complicated and needs to be re-written. While I laughed at the time, over the years I found his principle to be quite valid, especially since the vast majority of users are not sophisticated users but simple people trying to do a basic job.
 
They didn't LOSE 500 million techspot. Instead of making interest payments of 7.8 million, they ended up paying the full amount oweing of 900 million. If you do the match 7.8/900 x 100 = 0.9% of the total owing is interest payments. If the 7.8 million (0.9% of the principle) is interest payment for one month, then the yearly interest is 10.4%.

They got back 400 million from creditors but the rest of the 500 million they couldn't get back. In other words, they paid off 500 million of the 900 million owing.

They didn't LOSE money. They paid back their debt.

Silly mistake but there was NO LOSS
 
They didn't LOSE 500 million techspot. Instead of making interest payments of 7.8 million, they ended up paying the full amount oweing of 900 million. If you do the match 7.8/900 x 100 = 0.9% of the total owing is interest payments. If the 7.8 million (0.9% of the principle) is interest payment for one month, then the yearly interest is 10.4%.

They got back 400 million from creditors but the rest of the 500 million they couldn't get back. In other words, they paid off 500 million of the 900 million owing.

They didn't LOSE money. They paid back their debt.

Silly mistake but there was NO LOSS

Banks are in the business of making money through investments and lending. $500m is a lot of investment capital to lose which can easily translate into $millions of profit if the loan was repaid through agreed upon time table.
 
Except that he did follow procedure and had 2 other people to confirm the transaction, including a senior official.

"The subcontractor did not fill out the user interface correctly, and the entire amount went out to lenders rather than the majority being deposited to the wash account."

According to the article, it doesn't appear as if the subcontractor did. It still doesn't excuse the failures of both local subcontractor and corporate verification.

I will bet good money from personal experience, that the senior official from Delaware "reviewed" this transaction in all of 1.75 seconds flat, approved, and shot off that email. Unfortunately that happens alot in big corporations with senior leadership.
 
"The subcontractor did not fill out the user interface correctly, and the entire amount went out to lenders rather than the majority being deposited to the wash account."

According to the article, it doesn't appear as if the subcontractor did. It still doesn't excuse the failures of both local subcontractor and corporate verification.

I will bet good money from personal experience, that the senior official from Delaware "reviewed" this transaction in all of 1.75 seconds flat, approved, and shot off that email. Unfortunately that happens alot in big corporations with senior leadership.
Filling the form correctly is another thing. That's not about procedure, but about the lack of proper documentation of the application and confusing bad UI, the whole point of this article.

The procedure for this transaction was followed and 3 people gave the ok on the same thing.

I have seen some of these bank applications... you can spend years using them and you still will be confused as to what anything does in them or how they work. The worst part... they get updated constantly because of changing laws and bank policies, the UI getting more ugly and cluttered every time (tons of patchworks).
 
They didn't lose money overall, since they were credited on the debts for the overpayment, but they certainly lost a lot of... temporary liquidity. Which may put them in difficulty if there come up debts they have to pay right away. Like if their depositors want to withdraw their money.
 
It is amazing to me how bad a lot of software UI is.

Here's the thing: UI is one of those things people aren't usually taught; the only way to get good it at is to make a bunch and listen to complaints.

I'm a Software Engineer, and I normally work on embedded applications (no GUI). I'm working on my first Windows-based GUI application, and boy, I'm learning to HATE GUIs (and their internals) with a passion. GUIs are something you need to work with to really get a feel for how to make them good, unfortunately.
 
They didn't LOSE 500 million techspot. Instead of making interest payments of 7.8 million, they ended up paying the full amount oweing of 900 million. If you do the match 7.8/900 x 100 = 0.9% of the total owing is interest payments. If the 7.8 million (0.9% of the principle) is interest payment for one month, then the yearly interest is 10.4%.

They got back 400 million from creditors but the rest of the 500 million they couldn't get back. In other words, they paid off 500 million of the 900 million owing.

They didn't LOSE money. They paid back their debt.

Silly mistake but there was NO LOSS
Remember. It was NOT Citibank's loans that were being paid. It was Revlon. Citibank was responsible for paying $7.8 million of Revlon's loan payments. It accidentally paid $900 million (minus the $7.8M interest), so $892 million of Citibank's own money went out. Of course, it went out to pay Revlon's loans, of which, $500 million is now owed to Citibank. With Revlon's debt trading at $0.42 on the dollar, that means that $500 million is really only worth $210 million, and I doubt it is debt that Citibank wanted to buy up since it is high risk. If Revlon goes bankrupt, Citibank is screwed. It surely views this as a loss.
 
Back