Skip to main content
Sign a Tempo transaction without broadcasting it—useful for relaying through a custom broadcaster or inspecting the signed bytes before submission.
Unlike standard EVM transactions, Tempo transactions use a calls array instead of a single to/data/value. This enables multiple contract calls to execute atomically in one transaction. View the Tempo transaction recipe for full examples.

Parameters

transaction.type
118
required
Transaction type for Tempo’s native envelope.
transaction.chainId
number
required
The Tempo chain ID. Use 4217 for mainnet or 42431 for Moderato (testnet).
transaction.calls
TempoCall[]
required
An array of calls to execute atomically. At least one call is required. Each call has to (required), data, and value.
transaction.feeToken
Hex
Address of the supported TIP-20 token used to pay Tempo fees. If omitted, Tempo’s fee-token preference rules apply. Tempo has no native gas token.
transaction.nonceKey
bigint
2D nonce key. Use 0 for the protocol-managed sequential nonce, or a non-zero value to use a parallel user nonce slot, enabling concurrent transactions.
transaction.nonce
bigint
Sequential nonce within the nonce key slot. Populated automatically if omitted.
transaction.validBefore
bigint
Transaction expiration as a Unix timestamp in seconds. The transaction will not be included after this time.
transaction.validAfter
bigint
Earliest inclusion time as a Unix timestamp in seconds. The transaction will not be included before this time.
transaction.gasLimit
bigint
Gas limit for the transaction. Estimated automatically if omitted.
transaction.maxFeePerGas
bigint
Maximum total fee per gas unit in wei. Estimated automatically if omitted.
transaction.maxPriorityFeePerGas
bigint
Maximum priority fee per gas unit in wei. Estimated automatically if omitted.
wallet
ConnectedWallet
required
The wallet to sign the transaction with.
Most apps should omit nonceKey. It defaults to 0, using Tempo’s sequential protocol nonce. Only set a non-zero value if you need concurrent transactions in parallel nonce slots. Learn more.
When building a relay flow, set validBefore to enforce a submission deadline—signed bytes submitted after that timestamp will be rejected by the network. Learn more.

Returns

signedTransaction
HexString
The signed transaction, ready to broadcast.
For full examples, view the Tempo transaction recipe.