I’m reaching out regarding a pretty big mistake involving my father’s accidental direct transfer of Bitcoin to a Compound smart contract. We’re hoping someone here might be able to help or provide guidance.
The Situation:
My father (mid-60s) is an avid crypto enthusiast who uses Compound regularly.
In March 2024, he accidentally sent ~0.9882 BTC directly to a Compound contract address instead of using the supply function.
Has anyone experienced a similar issue with direct transfers to Compound smart contracts?
Are there any Compound contributors who could assist with this situation?
What options, if any, exist for recovering funds sent directly to a smart contract address?
Is there a procedure in place for handling these types of mistakes?
Why This Matters:
This Bitcoin represents a significant portion of my father’s savings. While we understand the risks associated with crypto, this honest mistake has had severe consequences for our family’s financial situation.
Call to Action:
If you have any insights, suggestions, or can offer any assistance in resolving this issue, please reply to this thread or reach out via DM. We’re open to any potential solutions and deeply appreciate any help the community can provide.
Thank you for your time and consideration. We hope that by sharing this experience, we can not only find a solution but also help prevent similar mistakes in the future.
Hi, sorry to hear about this unfortunate situation. The Comet contract does not have a sweep function. If I remember correctly, the Timelock cannot arbitrarily transfer tokens out of a Comet contract through governance. So there is no way to return the WBTC to the sender.
It seems like there are several withdrawal functions here. A few of them sound like the normal withdraw path, but i believe one of these two might allow the admin wallet to withdraw funds stuck in the contract.
Sorry to hear about your fathers mistake. @adam is correct that there is no sweep function for collateral. However that isn’t really important since excess token reserves are eligible to be purchased at a discount by any user, which is exactly what happened immediately after your fathers deposit here: https://etherscan.io/tx/0xf10466bd9f46be1f49d05173e1cbe6e2e4870793e03e3eafe7c44ce10019d5b3
A bot purchased your father’s BTC (and some dust that was already in the comet) at a price of $65,703 per BTC. Meaning he sent the comet ~$64,927 for your father’s bitcoin.
Governance can call withdrawReserves to send that $64,927 USDC back to your father.
Yes, great insights here. This is correct. The WBTC is already gone. I was wrong. The withdraw reserves function can move collateral reserve tokens out to an address if a successful governance vote went through. In my opinion, I don’t think that this is a proper course of action because that MEV bot already took the tokens based on the contract rules. Others can weigh in.
Thank you guys both for the responses, this is hugely helpful!
It’s great to hear that it would be technically possible to make this happen. Is there any precedent for a Governance proposal of this nature? I haven’t found much looking so far unfortunately.
@adam curious to better understand your thoughts here as well. Obviously the contract functioned as intended and a mistake was made, but if the assets were purchased and the funds are sitting there then I don’t see why this wouldn’t be a proper course of action personally. But obviously am biased in this situation!