Payment channel client and smart contract for Tezos
- Open the OCamlPro's Liquidity online editor
- Enable ReasonML mode
- Paste contract source
- Compile the contract
- Run the Node.js script in this repo to generate a payment channel claim for 100000 base units
- Now, to close the channel using the paychan claim, navigate to the "Test" tab in Liquidity
- Paste this into the storage:
{
status: Open,
signingKey: edpkuccTQmg2sSPHZWL3L15stb2HXd2qbtyLMsJDXPCf6aummpDKjC,
sender: edpkuccTQmg2sSPHZWL3L15stb2HXd2qbtyLMsJDXPCf6aummpDKjC,
recipient: edpkuccTQmg2sSPHZWL3L15stb2HXd2qbtyLMsJDXPCf6aummpDKjC
}
- Paste this as the main parameter:
(0.1tz, edsigtrGqNJv8oKaNFcvpV8jSYZjeggx7dwfnuwxiGvnFxKtzmhYJu6K2UVsaAVj5L6tHkjRihSH9T8ypUBAzrJeYpr6VQeXG8Y)
(alternatively, generate a signature with different keys for sender and receiver, and varying amounts) - Set a value for the amount in the contract higher than the value of the claim
- Click run! Liquidity will execute the channel close locally, showing a transfer of 0.1tz to the receiver, and the remainder of the value of the contract goes back to the sender.