What are Smart Contracts?
Smart contracts are short computer programs that reside on a blockchain network, like Ethereum.
A smart contract is triggered by the receipt of digital assets on its blockchain address. But the trigger's details can differ from one smart contract to the other. Some require that the transaction specify a particular Gas Limit to be able to run the entire contract, while others require that a short text message is sent as "Custom Data".
When you're trying to send ETH from your Jaxx Liberty wallet to a smart contract address, we implemented a mechanism that estimates the appropriate Gas Limit for that particular contract. Feel free to edit that limit but know that there is always a risk that the contract does not get fully executed (failing with an "Out of Gas" error), in which case your transaction does not complete and you're also losing that gas paid as a fee to the miner.
If you are not sure what Gas Limit to specify or what custom data text to include, consider contacting the smart contract's author. If you're depositing your ETH to an exchange, they will surely have a recommendation of a Gas Limit that you should use. Sending the transaction with less than the required Gas Limit will get it to fail with an "Out of Gas" error and you'll lose the mining fee.
How can I modify the Gas Limit or add Custom Data to an ETH transaction?
As of Jaxx Liberty version 2.2.3, we added a new toggle button on the top right corner of your Ethereum Wallet Send screen. That button allows you to access the advanced section which is dedicated to Smart Contracts and it allows you to add your own custom Gas Limit or Contract Data.
After activating the Smart Contracts section, scroll down and add your custom information for the desired parameters.
Note that you can only fill in one or the other or both of those fields should your transaction require it.
After you enter all the desired parameters on the Send page, scroll down and Send your transaction. On the next screen, be sure to verify that all the information is correct and then confirm your transaction to broadcast it to the blockchain.
PS1. To check which version of Jaxx Liberty you're on simply open the app and go to the MENU and scroll down to the About line. If you're on 2.2.3 or higher, you should have the custom Smart Contract functionality in your Ethereum wallet.
PS2. At the moment, Jaxx Liberty does not support sending 0 amount ETH transactions.