When a payment goes wrong, it is never forgiven. People care about their money, and the easiest way to mess things up is to mess up a payment processing task.
Each step for a payment process requires careful checking and double-checking, and all errors should be recorded and appropriately handled without over-charging the customer. Another challenge is that it is sometimes hard to test the changes in payment systems as it involves real money.
On a separate note, it is pretty mindboggling to see so many hacks on crypto--which all transactions are essentially irrevocable--are treated differently by the community. Interestingly, because blockchain is immutable, there is a chance that the perpetrators could be tracked down. This is partly because most projects would let the hackers keep a 10% "fee" to treat it like a white hat reward. Some hackers do refund their "heist money." In other instances, rich platforms refund all the users' losses since the hacked amount is usually insignificant compared to their revenue.
Banking systems sometimes are impacted more adversely. For example, if a user is overcharged, there will be consequences like overdraft fees, bouncing checks for other transactions that may cause other financial consequences.