It was in the news recently that RobinHood had to prohibit some customer orders due to a lack of liquidity. The explanation was that because brokers like RobinHood take orders today which are fulfilled after some delay, they are at risk if the investor refuses to pay, and need to enough cash in reserve to cover that risk. e.g. Matt Levine said:
You don’t think about it much, but every stock trade involves an extension of credit. You see a price on the stock exchange and push a button and instantaneously get back a confirmation that you bought some shares of stock, but you actually get the shares, and pay the money for them, two business days later. This is called “T+2 settlement,” and it might seem a little silly in an age when a “share of stock” is an entry in an electronic database and “money” is also an entry in an electronic database.
I understand how that could cause problems for brokers, but I don't understand why a single broker can't unilaterally fix it. Why does RobinHood not simply take payment when an order is placed, and hold it for the 2 business days until the order is completed? This seems like it would reduce their risk, remove the scaling bottleneck of needing to find cash on short notice, and give them a nice buffer of cash.