EIP-681 : Transaction/Payment Request
EIP681 is a URI standard for requesting an Ethereum-based coin/token transaction. D’CENT App supports EIP681 using dynamic links. (Reference: EIP 681 standard document)
The eip681 dynamic link is configured in the following format.
https://link.dcentwallet.com/MyWallet/eip681/{eip681_request}
eip681_request is configured in the following standard format.
request =
schema_prefix
target_address
[ "@" chain_id
] [ "/" funtion_name
] [ "?" parameters
]schema_prefix | It is expressed as ‘ethereum:’ or ‘pay-’ and can be omitted in case of coin transfer.
* (Only ethereum (evm) series supported by D’CENT App are supported. (Reference: D’CENT Wallet Supported Coin List - Supported Cryptocurrency List (dcentwallet.com)) |
target_address | The beneficiary address (to address) where the transfer will be made to. |
chain_id | The value of the chain id. (Reference: chainlist site) If the chain id value is not specified, the chain id value will be set to 1 (ethereum). |
funtion_name * | If target_address is a contract address, function_name can be configured. (Reference: function_name list) |
parameters | It is composed in the form of “key”=”value”, and the information is different depending on the function_name. If there is no function_name, the amount to be transferred must be entered in the form of ‘value= amount to be sent (wai unit)’. |
| (* It can exist only when target_address is a contract address.) |
Example)
When sending 5FAU from Ropsten testnet (chain id:3) the FAU token (contract address: 0xFab46E002BbF0b4509813474841E0716E6730136) to an address 0xA93433E9A645e4C9d9557c2E38939Aa79e18107

The function_name currently supported by the D’CENT App is as follows.
We plan to expand the supported function_name list in the future.
transfer | Executes transfer(address,uint256), a function for erc20 token transfer
ie) transfer?address=0xA93433E9A645e4C9d9557c2E38939Aa79e18107c&uint256=1e-2 |
transferfrom | Executes transferfrom(address,address,unit256), a function for erc20 token transfer
ie) transferfrom?address=0xA93433E9A645e4C9d9557c2E38939Aa79e18107c&address=0x19f64674d8a5b4e652319f5e239efd3bc969a1fe&uint256=1e-2 |
approve | Executes approve(address,uint256), a function for requesting erc20 permission
ie) approve?address=0xA93433E9A645e4C9d9557c2E38939Aa79e18107c&uint256=1e-2 |
The following is an example of dynamic link according to transaction type.
(D’CENT App execution flow that performs each transaction varies depending on the presence or absence of a network account.)
- [Coin Transfer]Transfer polygon 0.5MATIC to the address 0xA93433E9A645e4C9d9557c2E38939Aa79e18107c
- D’CENT App process
- When polygon account exists,
- When polygon account does not exist,
- When two or more polygon accounts exist,
- [Token transfer]Transfer QUIK(polygon) 0.005QUICK to the address 0xA93433E9A645e4C9d9557c2E38939Aa79e18107c
- D’CENT App process
- When polygon account exists,
- When polygon account does not exist,
- When two or more polygon accounts exist,
- [Token transferfrom] Transfer QUIK(polygon) 0.005QUICK to the address 0xA93433E9A645e4C9d9557c2E38939Aa79e18107c to another address 0x0xA93433E9A645e4C9d9557c2E38939Aa79e18107c
- D’CENT App process
- When polygon account exists,
- When polygon account does not exist,
- When two or more polygon accounts exist,
- [Token approve] Approving permission to 0xA93433E9A645e4C9d9557c2E38939Aa79e18107c in the amount of QUIK(polygon) 0.5QUICK
- D’CENT App process
- When polygon account exists,
- When polygon account does not exist,
- When two or more polygon accounts exist,