What is a smart contract transfer?
A smart contract transfer, often referred to as an internal transaction, involves the transfer of native assets (such as ETH, BNB, POL, AVAX, xDAI, S on Ethereum, Arbitrum, Optimism, Base, Linea, Sonic, Unichain or zkSync Era) from one smart contract to another, or from a smart contract to a specific address. It is a term coined by the blockchain community to describe transactions that occur within the blockchain network.
To better understand this, imagine two types of addresses: the first is a regular address, like the one you might access via a digital wallet such as MetaMask; the second is an internal address, which is typically associated with a smart contract. The transactional activity begins with the externally-owned address, while the internal address is typically involved in the execution of the smart contract, facilitating the desired operations.
When a smart contract sends ETH to a given address, it employs a specific function, often referred to as a 'message,' to alter the state of the blockchain. This change in state is a key component of how a smart contract operates. An example of this process in action is when you opt to receive tokens to a different address following a swap; the smart contract employs a message to facilitate the transfer, ensuring the tokens reach the correct destination.
What does it mean for me?
A smart contract transfer of a native asset are value transfers and can't be detected as a normal transaction without a full node. The balance change will still reflect on the balance of the address though. It's very difficult to get a contract native asset transfers which is why a majority of exchanges do not support these types of deposits.
What exchanges do support these types of transactions?
Most exchanges do not but here is a list of exchanges that claim to support these types of deposits:
