# TransactionRequest.toEnvelope

Converts a Tempo [`TransactionRequest.TransactionRequest`](/tempo/reference/TransactionRequest/types#transactionrequest) to a [`TxEnvelopeTempo.TxEnvelopeTempo`](/tempo/reference/TxEnvelopeTempo/types#txenvelopetempo).

## Imports

:::code-group
```ts [Named]
import { TransactionRequest } from 'ox/tempo'
```

```ts [Entrypoint]
import * as TransactionRequest from 'ox/tempo/TransactionRequest'
```
:::

## Examples

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

const envelope = TransactionRequest.toEnvelope({
  calls: [
    {
      data: '0xdeadbeef',
      to: '0xcafebabecafebabecafebabecafebabecafebabe'
    }
  ],
  chainId: 1,
  feeToken: '0x20c0000000000000000000000000000000000000',
  maxFeePerGas: 1n
})
```

## Definition

```ts
function toEnvelope(
  request: TransactionRequest,
  options?: toEnvelope.Options,
): TxEnvelopeTempo.TxEnvelopeTempo
```

**Source:** [src/tempo/TransactionRequest.ts](https://github.com/wevm/ox/blob/main/src/tempo/TransactionRequest.ts#L442)

## Parameters

### request

* **Type:** `TransactionRequest`

The transaction request to convert.

#### request.authorizationList

* **Type:** `readonly { address: abitype_Address; chainId: numberType; nonce: bigintType; signature: SignatureEnvelope; }[]`
* **Optional**

#### request.calls

* **Type:** `readonly Call[]`
* **Optional**

#### request.capabilities

* **Type:** `Record`
* **Optional**

#### request.feePayer

* **Type:** `boolean`
* **Optional**

#### request.feePayerSignature

* **Type:** `{ r: 0x${string}; s: 0x${string}; yParity: numberType; }`
* **Optional**

#### request.feeToken

* **Type:** `Address.Address | undefined`
* **Optional**

#### request.keyAuthorization

* **Type:** `KeyAuthorization`
* **Optional**

#### request.keyData

* **Type:** `0x${string}`
* **Optional**

#### request.keyId

* **Type:** `Address.Address | undefined`
* **Optional**

#### request.keyType

* **Type:** `KeyType`
* **Optional**

#### request.multisigInit

* **Type:** `{ salt: 0x${string}; threshold: number; owners: readonly Owner[]; }`
* **Optional**

#### request.multisigSignatureCount

* **Type:** `number`
* **Optional**

#### request.nonceKey

* **Type:** `bigintType | "random"`
* **Optional**

#### request.signature

* **Type:** `SignatureEnvelope`
* **Optional**

#### request.validAfter

* **Type:** `numberType`
* **Optional**

#### request.validBefore

* **Type:** `numberType`
* **Optional**

### options

* **Type:** `toEnvelope.Options`
* **Optional**

Options.

#### options.feePayerSignature

* **Type:** `{ r: 0x${string}; s: 0x${string}; yParity: number; }`
* **Optional**

Optional fee-payer signature to attach to the envelope.

#### options.signature

* **Type:** `Value`
* **Optional**

Optional signature envelope to attach.

## Return Type

A Tempo transaction envelope.

`TxEnvelopeTempo.TxEnvelopeTempo`
