Your point is incorrect. It is not needlessly complicated. It has to do with mainframe batch processing times.
It’s not a conspiracy, it is a technical challenge that is not easy to some. It is complicated, but not needlessly. If it was easy, it would have been fixed.
I am sure there are a number of private companies that do the same but simply don’t tell you.
E.g., every bank has a cut off time for transfers, same reason.
Waiting to hear how this plays out. But I feel this will end up being a non issue.