Accidentally sent DAI to the Matic Contract Address

I have been trying to reach out to the matic dev team for 1 month to get some help, but haven't been successful and I am in need of urgent help.

Last month somehow in the rush of things, I accidentally sent $35k DAI to the MATIC contract address instead of my metamask address.

I realize almost anytime this mistake happens, it's practically lost forever.

I spoke with a few friends who work at Alameda Research and they showed me that the MATIC contract code has a transfer function in it, meaning the devs should be able to call it and retrieve my funds.

Am I able to get some help with this?

I am going to link the contract code that shows the transfer function is enabled as well as my transaction:

Can a solidity dev look at the contract code and tell me if it's theoretically possible for the matic dev team to retrieve my funds?


I took a quick look at the matic contract address. Unfortunately it's not possible to withdraw your DAI tokens from the MATIC contract address. The transfer function in the MATIC contract is for when someone is trying to transfer MATIC tokens. In fact, if you accidentally sent MATIC tokens to the MATIC contract address, you will not be able to retrieve it either.

In order to withdraw funds that were sent wrongly to a contract, the contract needs a generic withdraw function that allows some privileged user e.g. the owner (there's no owner for the MATIC contract btw) to withdraw by specifying the amount and token address. Here's an example of this

Sorry for your loss.


Why contracts do not include this function or at list refuse the tokens sent to the smart contract in order to avoid this problems. Thank you

1 Like