Let’s consider transitions in more detail:
1. The user enters our service (by login / email).
2. Enters the address of his wallet, the addressees of the transfer and the amount (or %), configures the terms of the contract
3. Make payment for the creation of a contract in WIL tokens
4. The service generates a contract (source code — .sol file). The user can additionally verify the contract before launch.
5. The contract is signed by Last will, while the function of stopping the contract can only be called by this user (Lastwill can not stop).
6. After this, the contract will be executed in Ethereum
7. According to the schedule specified at contact’s terms, service Lastwill calls method of the contract for conditions check.
8. The contract uses oracles for checking wallet’s activity and transfers money, if the conditions are met.
What is important?
- Lastwill sign contract (not user)
- Only the user can terminate the contract and get money back anytime
- We need more oracles for checks