One person organizes it, everyone chips in a share by card into one visible place, and the venue, cake, and drinks come out of that table. Never book the venue and collect after.
A group birthday party has a venue deposit, a cake, decorations, and a bar tab, and usually the birthday person shouldn't be paying for any of it. So one friend books everything, fronts the deposit, and then collects from the group afterward, which is exactly the awkward money nobody wants attached to a celebration.
Most groups don't want the guest of honor paying for her own party, so her share gets carried by everyone else. The clean way is to leave her off the shares entirely and set each person's number a little higher to cover her part, agreed once, in the open, instead of someone quietly eating the difference at checkout.
The same works for a friend who can't afford the full share: the group can lower hers and spread the rest, and because every number is on the record, nobody's guessing who paid what. During the party, a shared bar tab or a last-minute run comes out of the table too, so nobody fronts it. (A milestone graduation instead of a birthday? See collecting for a graduation party.)
The organizer holds the money the way one person always does, only now everyone sees every dollar. It goes through Stripe to the organizer; TableCash never holds it and is just the record.