---
title: "Build the escrow open transaction for a lifi-intents quote"
method: POST
path: "/lifi-intents/transaction"
tags: ["Liquidity"]
---

# Build the escrow open transaction for a lifi-intents quote

`POST /lifi-intents/transaction`

## Request

- Base URL: `https://api.sprinter.tech`
- URL: `https://api.sprinter.tech/lifi-intents/transaction`
- Auth: none declared

Turns a quote into an unsigned `open` call on the LI.FI intents input settler escrow. When the quote carries a `quoteId` from the RFQ endpoint, the liquidity reservation is re-keyed to the resulting on-chain order id.

## Request body

- LifiintentsQuote
  - `preview` LifiintentsPreview, required
    - `inputs` LifiintentsInput[], required: Tokens escrowed on the origin chain. Every input must sit on the same origin chain.
      - `user` string, required: Payer, as an ERC-7930 interoperable address.
      - `asset` string, required: Input token, as an ERC-7930 interoperable address.
      - `amount` string, required: Amount in the smallest denomination.
    - `outputs` LifiintentsOutput[], required: Tokens delivered to the receiver.
      - `receiver` string, required: Recipient, as an ERC-7930 interoperable address.
      - `asset` string, required: Output token, as an ERC-7930 interoperable address.
      - `amount` string, required: Amount in the smallest denomination.
  - `quoteId` string: Identifier for the liquidity reservation backing this quote. Pass the quote back to /lifi-intents/transaction to keep it.
  - `validUntil` integer: Unix timestamp after which the quote and its reservation expire.
  - `eta` integer: Estimated fill duration in seconds.
  - `provider` string: Always `sprinter`.
  - `failureHandling` string: Always `refund-automatic` — an unfilled order is reclaimable on the escrow.
  - `partialFill` boolean: Whether the order may be partially filled. Sprinter quotes are all-or-nothing.
  - `metadata` LifiintentsMetadata
    - `exclusiveFor` string: Address granted exclusivity over the fill. Defaults to Sprinter's filler address.
  - `order` LifiintentsOrder: Optional overrides for the escrow open call. Any field left unset is derived by the transaction endpoint.
    - `nonce` string
    - `expires` integer: Unix timestamp after which the order can no longer settle.
    - `fillDeadline` integer: Unix timestamp after which the order can no longer be filled.
    - `inputOracle` string
  - `transactionRequest` LifiintentsTransactionRequest: Unsigned transaction calling open() on the input settler escrow. Send it from the user's wallet.
    - `from` string, required
    - `to` string, required: The LI.FI input settler escrow contract.
    - `chainId` integer, required
    - `data` string, required
    - `value` string, required: Hex-encoded native value; `0x0` unless an input is the native token.
    - `gasPrice` string
    - `gasLimit` string

## Response `200`

The same quote with transactionRequest populated

- LifiintentsQuote
  - `preview` LifiintentsPreview, required
    - `inputs` LifiintentsInput[], required: Tokens escrowed on the origin chain. Every input must sit on the same origin chain.
      - `user` string, required: Payer, as an ERC-7930 interoperable address.
      - `asset` string, required: Input token, as an ERC-7930 interoperable address.
      - `amount` string, required: Amount in the smallest denomination.
    - `outputs` LifiintentsOutput[], required: Tokens delivered to the receiver.
      - `receiver` string, required: Recipient, as an ERC-7930 interoperable address.
      - `asset` string, required: Output token, as an ERC-7930 interoperable address.
      - `amount` string, required: Amount in the smallest denomination.
  - `quoteId` string: Identifier for the liquidity reservation backing this quote. Pass the quote back to /lifi-intents/transaction to keep it.
  - `validUntil` integer: Unix timestamp after which the quote and its reservation expire.
  - `eta` integer: Estimated fill duration in seconds.
  - `provider` string: Always `sprinter`.
  - `failureHandling` string: Always `refund-automatic` — an unfilled order is reclaimable on the escrow.
  - `partialFill` boolean: Whether the order may be partially filled. Sprinter quotes are all-or-nothing.
  - `metadata` LifiintentsMetadata
    - `exclusiveFor` string: Address granted exclusivity over the fill. Defaults to Sprinter's filler address.
  - `order` LifiintentsOrder: Optional overrides for the escrow open call. Any field left unset is derived by the transaction endpoint.
    - `nonce` string
    - `expires` integer: Unix timestamp after which the order can no longer settle.
    - `fillDeadline` integer: Unix timestamp after which the order can no longer be filled.
    - `inputOracle` string
  - `transactionRequest` LifiintentsTransactionRequest: Unsigned transaction calling open() on the input settler escrow. Send it from the user's wallet.
    - `from` string, required
    - `to` string, required: The LI.FI input settler escrow contract.
    - `chainId` integer, required
    - `data` string, required
    - `value` string, required: Hex-encoded native value; `0x0` unless an input is the native token.
    - `gasPrice` string
    - `gasLimit` string

## Other responses

- `400`: Bad request due to invalid input
- `500`: Internal server error

## Changes

- **2026-08-12** `1713381f8993`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/sprintertech/apis/sprinter-api/changes/lifi-intents/transaction/post.md)

---

[API](https://skmtc.dev/sprintertech/apis/sprinter-api.md) - [All operations](https://skmtc.dev/sprintertech/apis/sprinter-api/llms.txt) - [OpenAPI document](https://skmtc.dev/sprintertech/apis/sprinter-api/revisions/1713381f8993?raw)
