You're going to have to say how this will be done but I'll go with what I'd expect:
If you're using a HD wallet with a derived xpub and xprv then you merely import the xpub into the server for the clients to pay into and keep the xpriv on an offline device...
You'd then sign a transaction with the xpriv and transfer it to an online device to consolidate everything.
The actual signing of the 1000 inputs into one transaction is trivial and will be handled by any client. The important thing is, if you don't need to consolidate quickly, you should consolidate at a 1 sat per byte fee where possible and enable a rbf double spend in the software you're using.
yes, currently looking on HD wallet
If you figure things out this wouldn't be a problem if you use your main BTC address as the payment address for all of your clients.
it is hard to do accounting if every payment go to the same address.
i do not know which payment coming from which client.
so, it is easier to give a client a dedicated btc address.
any payment goes to that address, will link automatically to that client.
This isn't hard to do if the 1000 bitcoin address is in the same wallet you can just simply send it all to your main Bitcoin address.
Sample this image below I'm going to spend/send bitcoins from my client's addresses(Bitcoin address that you give to your clients) to my main address.
[Electrum testnet as a sample.]
Choose the client's addresses that you want to spend or send to your main BTC address right-click and then spend.
You will be redirected to send tab on Electrum then put your main BTC address and click the max under amount and set the fee then click send.
And that's it.
But if the 1000 bitcoin addresses are not on the same wallet you have to take all private keys from all of these 1000 addresses and import it to Electrum and then go to send tab>put your main address>click the max button under amount>set the fee> then click send.
This is what it looks like on the send tab you will notice there is a new box appear below the description.
yes, i found about this electrum too yesterday.
i can generate a lot of addresses to give to the clients.
next step, should i link with blockchain api to read transaction history of each btc address?
or should i setup my own bitcoin server to do it?
but the syncing process will take a lot of time.
any opinion?