'Sweeping' simply means to import private keys + send them to an address generated by this wallet.
Isn't "Sweeping a paper wallet" and "Importing private keys of a paper wallet" different?
Importing private key of a paper wallet is just adding the "private key of paper wallet" to the list of private keys already present in the software wallet (for instance electrum). By this way we can have access to both the funds of the wallet and also the paper wallet and the wallet balance increases. Importing a private key is literally dangerous when compared to sweeping of paper wallet. If the paper wallet receives any funds, they are shown in the software wallet too.
Whereas "Sweeping a paper wallet" is similar to sending btc from one address to another. Sweeping makes the balance of the paper wallet to 0 and all the funds present in the paper wallet has been transferred to the software wallet. In order to perform a sweep, its literally a blockchain transaction and requires a fee to be paid to the miner for the transfer.
To be able to 'send from an address to another' you need the corresponding private key.
Whenever you are going to 'sweep' a wallet, the software you are using is importing the private key AND creating/broadcasting a transaction to an address generated by the wallet itself.
This does not mean that the private key will be stored inside the wallet. But it still had to be imported to make this transaction.
Either copay is coded realy realy bad or this is not the reason for the error OP gets.
Copay
doesn't support importing of private keys. It only supports sweeping of paper wallets. Hence we need to have enough funds in the wallet to pay for a transaction
This doesn't make any sense at all.
The moment the wallet scans the private key (containing more than just dust) there are funds available to create a transaction and pay a fee.
You don't need to have a balance BEFORE tryin to sweep. The UTXO's assigned to the public key which corresponds to the scanned private key will be the input of the transaction.
A paper wallet should always contain more than just a transaction fee.
Yes. But what about btc dust? There was a time before segwit where we need to spend around 20-25$ per transaction and the amount present in the paper wallet is 10$. During such times, we cannot perform a sweep!
OP is facing this problem now and not back in december where fees were at their ATH (what you probably mean with 'time before segwit').
Note that segwit has been activated 01.08.2017. Followed by a transaction spam attack on the network (see here:
https://jochen-hoenicke.de/queue/#1,all).
Still, the highest fees occured 5 months later. Segwit was already there. It just hasn't been used.
And currently fees are as low as 3-4 sat/B to get confirmed within the next block. Can't get much lower. If you are having dust now which is less than a transaction fee, then you won't ever be able to use it efficiently again..