Mobile - Send ETH&tokens and ETHClassicÐClassicTokens
Acceptance criteria (Figma designs: https://www.figma.com/design/sqKFZAIvk3zERxiWgthK8K/Send?node-id=2163-11888&node-type=canvas&t=rlmU1XGltx9cBdfA-0):
- Recipient address (mandatory field)
-
User can insert the recipient address
- Manually
- Via scanning the QR code
- Inserting from clipboard
-
Recipient address is validated
-
When user inserts wrong address…
Acceptance criteria (Figma designs: https://www.figma.com/design/sqKFZAIvk3zERxiWgthK8K/Send?node-id=2163-11888&node-type=canvas&t=rlmU1XGltx9cBdfA-0):
- Recipient address (mandatory field)
-
User can insert the recipient address
- Manually
- Via scanning the QR code
- Inserting from clipboard
-
Recipient address is validated
-
When user inserts wrong address, he is informed that the address is invalid
-
When user inserts address in non-checksum format:
- When user inserts address which is used not checksummed at all, conversion to checksum is done automatically and user is informed about that action.
- When user inserts address which has not been used yet and it’s not checksummed, he is informed that the address is not in valid format (is not checksummed) and he should convert to checksum. User can’t send the transaction without checksummed address.
- When user inserts address which is wrongly checksummed (no matter whether is used or not). User is informed that the address is invalid
- When Suite is offline or anything fails and user inserts address, user is informed that address can’t be validated and verified and user must verify it by himself
-
User is informed to send the funds only to respected network, otherwise the funds might be lost
- Amount (mandatory field)
- User can insert amount in FIAT or ETH
- When user inserts amount in FIAT, it is reflected in ETH and vice versa
- When user inserts amount above his balance, he is informed
- When user wants send max, balance is calculated as “balance-Fast fee”
- FIAT input respects the user settings, if user has default currency USD, he inserts amount in USD
- Max Fee (mandatory)
- User can select from 3 options based on how fast he wants the transaction to be proceed (Instant, Fast, Standard)
- User sees the Gas limit for the transaction
- If user sets the fee too high and does not have the available balance of ETH to pay, he must change either the fee or get more Gweis.
- Fee data are reloaded every 7-14s (interval TBD)in front of the user (TBD - Time interval of fee reload - align with Tomáš Klíma after which interval makes sense in regards to Blokbook and performance). From @sime: Considering to drop this to shrink the scope, we don't have it on desktop
When user is done with inserting data, he can continue to Review&Sign the transaction
If user leaves the form, data in inputs are not cleared unless user clear them by himself
- Review&Sign the transaction
- User is prompted to compare the recipient address displayed on Trezor Device against the original source
- When user confirms the recipient address on Trezor, he continues to Confirming amount and fee
- When user confirms amount and fee, he signs the transaction on Trezor device
- When user Signs the transaction on Trezor device, he can Send (finalise) the transaction in the app
- When user sends the transaction, transaction is proceeded
- User is redirected to detail of the pending transaction
- Transaction sent
- When transaction is sent in the mobile app, user sees the status of the transaction Pending
- When transaction is confirmed, it is marked as Confirmed
- Sending ERC20 Tokens specifics:
- User can send from token detail page
- Fee is paid from ETH account
- If user does not have enough ETH/Gwei to pay the fee, he is informed
PRIO 2:
Custom fee
Informing about inserting smart contract address instead of recipient address