A single transfer command in monero-wallet-cli may include multiple payments to different addresses (or to the same address). Is there a hard limit to the number of payments that can be included? I don't need this option at the moment, and I haven't tested large numbers, but this might be useful for businesses that need to make a lot of payments at the same time.
If this answer to a related question is correct, the transfer will be split into multiple transactions when it's too big to be included in a block, so there shouldn't be a limit on the protocol level.
Regardless of any limit hard-coded in the wallet, there will be a variable limit, depending on the mixin and the total amount paid relative to the balance. What happens if the amount needed for the total transfer is larger than the available balance?