As Michael already explained, it is not possible to make a transaction that spends unknown UTXOs since a transaction must state which outputs it consumes. Such a functionality could be partially enabled by e.g. sighash_anyprevout (BIP118) which identifies the spent input by the scriptPubKey
rather than identifying a specific UTXO, but even then you'd need to know the expected value of the UTXO in advance, as the output amounts are predetermined.
A practical solution might be to run an automated process which regularly checks if there is a balance on the online service's wallet and then creates a transaction which splits the funds in the pre-defined proportions to the receivers. The receivers would then trust this service for the duration until the wallet is swept not to steal or compromise the funds.