# TransactionRequest

Utilities for preparing RPC-formatted transaction requests.

Convert structured transaction requests to RPC format for submission to Tempo nodes,
including support for batched calls and fee token specification.

[Tempo Transactions](https://docs.tempo.xyz/protocol/transactions)

## Examples

```ts twoslash
import { TransactionRequest } from 'ox/tempo'

const request = TransactionRequest.toRpc({
  calls: [
    {
      to: '0xcafebabecafebabecafebabecafebabecafebabe',
      data: '0xdeadbeef'
    }
  ],
  feeToken: '0x20c0000000000000000000000000000000000000'
})
```

## Functions

| Name                | Description                         |
| ------------------- | ----------------------------------- |
| [`TransactionRequest.fromRpc`](/tempo/reference/TransactionRequest/fromRpc) | Converts a [`TransactionRequest.Rpc`](/tempo/reference/TransactionRequest/types#rpc) to a [`TransactionRequest.TransactionRequest`](/tempo/reference/TransactionRequest/types#transactionrequest). |
| [`TransactionRequest.toEnvelope`](/tempo/reference/TransactionRequest/toEnvelope) | Converts a Tempo [`TransactionRequest.TransactionRequest`](/tempo/reference/TransactionRequest/types#transactionrequest) to a [`TxEnvelopeTempo.TxEnvelopeTempo`](/tempo/reference/TxEnvelopeTempo/types#txenvelopetempo). |
| [`TransactionRequest.toRpc`](/tempo/reference/TransactionRequest/toRpc) | Converts a [`TransactionRequest.TransactionRequest`](/tempo/reference/TransactionRequest/types#transactionrequest) to a [`TransactionRequest.Rpc`](/tempo/reference/TransactionRequest/types#rpc). |

## Types

| Name                | Description                         |
| ------------------- | ----------------------------------- |
| [`TransactionRequest.MultisigInit`](/tempo/reference/TransactionRequest/types#transactionrequestmultisiginit) | Bootstrap multisig config hint for node-side gas modeling (TIP-1061). The node prices multisig gas from it during simulation, and ignores it for registered senders. |
| [`TransactionRequest.Rpc`](/tempo/reference/TransactionRequest/types#transactionrequestrpc) | RPC representation of a [`TransactionRequest.TransactionRequest`](/tempo/reference/TransactionRequest/types#transactionrequest). |
| [`TransactionRequest.TransactionRequest`](/tempo/reference/TransactionRequest/types#transactionrequesttransactionrequest) | A Transaction Request that is generic to all transaction types. |
