Method testing tool
Ethereum: Sign transaction
Asks device to sign given transaction using the private key derived by given BIP32 path. User is asked to confirm all transaction details on Trezor.
const result = await TrezorConnect.ethereumSignTransaction(params);
Params
Including CommonParams
EthereumSignTransaction
path
String | Array<Number>
Required
minimum length is 3
. read more
transaction
Union
Required
type of EthereumTransactionEIP1559
|
EthereumSignTransaction
"0x" prefix for each field is optional
to
String | Null
Required
recipient's address, contract address or null
in case of contract creation
chunkify
Boolean
Optional
determines if recipient address will be displayed in chunks of 4 characters. Default is set to false
Examples
EIP1559 (after The London Upgrade)
⚠️
Supported firmware versions T1B1 v1.10.4 and T2T1 v2.4.2
If both parameters maxFeePerGas
and maxPriorityFeePerGas
are defined, transaction will be signed as the new type introduced in EIP1559.
TrezorConnect.ethereumSignTransaction({
path: "m/44'/60'/0'",
transaction: {
to: '0xd0d6d6c5fe4a677d343cc433536bb717bae167dd',
value: '0xf4240',
data: '0xa',
chainId: 1,
nonce: '0x0',
maxFeePerGas: '0x14',
maxPriorityFeePerGas: '0x0',
gasLimit: '0x14',
},
});
Legacy
For T1B1 and T2T1 with firmware older than 2.4.2 (but supported newer firmware versions too).
TrezorConnect.ethereumSignTransaction({
path: "m/44'/60'/0'",
transaction: {
to: '0x7314e0f1c0e28474bdb6be3e2c3e0453255188f8',
value: '0xf4240',
data: '0x01',
chainId: 1,
nonce: '0x0',
gasLimit: '0x5208',
gasPrice: '0xbebc200',
},
});
Result
{
success: true,
payload: {
v: string, // hexadecimal string with "0x" prefix
r: string, // hexadecimal string with "0x" prefix
s: string, // hexadecimal string with "0x" prefix
}
}
Error
{
success: false,
payload: {
error: string // error message
}
}