> ## Documentation Index
> Fetch the complete documentation index at: https://docs.trusset.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Deployment Options

> The factory, collateral modes, default configuration, bounds and payment tokens of your network

> [!NOTE]
>
> Seller Financing is in beta and runs on Ethereum Sepolia instances only for now (`DEVELOPMENT` instances on Ethereum). A `PRODUCTION` instance, or one on another network, answers `503 SELLER_FINANCING_UNAVAILABLE`. See [Seller Financing](/endpoints/seller-financing/introduction.md).

Returns what [Build Deployment](/endpoints/seller-financing/deploy-market.md) works with on your network: the factory that deploys markets, the two collateral modes, the configuration a market gets for every field you leave out, the bounds each field must stay within, and the payment tokens the platform curates. Nothing is read from the chain.

`bounds` are the API's limits. Every configuration field you send and every listing term is checked against them first, then against the market's own configuration and the contract. A configuration also needs each minimum at or below its maximum, the shortest interest period at or below the longest runtime, and at least one interest strategy enabled.

## Response Fields

**data** `object`

**available** `boolean`

`true`. An instance where Seller Financing is not available answers `503 SELLER_FINANCING_UNAVAILABLE` instead.

**message** `string`

`null`.

**chainId** `integer`

The chain your instance resolves to, `11155111` on Sepolia.

**factory** `string`

The Seller Financing factory. Every deployment step is sent to it.

**modes** `array`

`{ mode, default, summary }` for `FREEZE`, the default, and `CUSTODY`. See [Collateral modes](/endpoints/seller-financing/introduction.md#collateral-modes).

**defaults** `object`

The configuration a market is deployed with for every field you omit from `config`. The fields are those of `config` on [Build Deployment](/endpoints/seller-financing/deploy-market.md#body-parameters).

**bounds** `object`

`{ min, max }` per field family, in the units of the field: `downpaymentBps`, `durationDays`, `interestPeriodDays`, `gracePeriodDays`, `rateBps` (every rate field), `volatilityBps`, and `listingExpiryDays` with `max` only.

**paymentTokens** `array`

`{ address, symbol, name, decimals, isDefault }` for each payment token curated on your network. USDC is the default. A deployment can also name another payment token with 6 to 18 decimals.

```bash cURL theme={null}
curl "https://api.trusset.org/seller-financing/api/markets/options" \
  -H "X-API-Key: trusset_your_key_here"
```

```typescript TypeScript theme={null}
const res = await fetch('https://api.trusset.org/seller-financing/api/markets/options', {
  headers: { 'X-API-Key': 'trusset_your_key_here' }
});
const { data } = await res.json();
const usdc = data.paymentTokens.find((t: { isDefault: boolean }) => t.isDefault);
```

```json Response theme={null}
{
  "success": true,
  "data": {
    "available": true,
    "message": null,
    "chainId": 11155111,
    "factory": "0x2805394e8fCC41bB11613c95967be0104AB88b1c",
    "modes": [
      {
        "mode": "FREEZE",
        "default": true,
        "summary": "The asset stays frozen in the seller's wallet until the buyer has paid in full. Needs the adapter to hold the token's agent role (ERC-3643, eWpG)."
      },
      {
        "mode": "CUSTODY",
        "default": false,
        "summary": "The asset moves into the market adapter when the seller lists it. Needs the adapter to be verified or allow-listed on the token (ERC-1404, other restricted tokens, ERC-20)."
      }
    ],
    "defaults": {
      "minDownpaymentBps": 500,
      "maxDownpaymentBps": 9000,
      "minDurationDays": 7,
      "maxDurationDays": 3650,
      "minInterestPeriodDays": 1,
      "maxInterestPeriodDays": 366,
      "maxGracePeriodDays": 30,
      "fixedEnabled": true,
      "derivedEnabled": true,
      "sellerSetsFixedRate": true,
      "fixedRateBps": 800,
      "maxFixedRateBps": 2000,
      "baseRateBps": 400,
      "volatilityBps": 1200
    },
    "bounds": {
      "downpaymentBps": { "min": 500, "max": 9000 },
      "durationDays": { "min": 1, "max": 3650 },
      "interestPeriodDays": { "min": 1, "max": 366 },
      "gracePeriodDays": { "min": 0, "max": 90 },
      "rateBps": { "min": 0, "max": 5000 },
      "volatilityBps": { "min": 100, "max": 20000 },
      "listingExpiryDays": { "max": 365 }
    },
    "paymentTokens": [
      { "address": "0x98aD0ca091552e23C564B41C74282e5343D03E8a", "symbol": "USDC", "name": "USD Coin (Mock)", "decimals": 6, "isDefault": true },
      { "address": "0x35661D8e31E5fEE2f8b5949562b4009A74ce31E6", "symbol": "USDT", "name": "Tether USD (Mock)", "decimals": 6, "isDefault": false },
      { "address": "0x96E3BADcC8ACb631dEa7CcF7332258cB2363DEf9", "symbol": "DAI", "name": "Dai Stablecoin (Mock)", "decimals": 18, "isDefault": false },
      { "address": "0xb2144117A024963bF7FbCAAd980602C4857fD91A", "symbol": "EURC", "name": "Euro Coin (Mock)", "decimals": 6, "isDefault": false },
      { "address": "0x375ca4cEDD54192E8258548Ae0a9de977f7951fd", "symbol": "EUROP", "name": "Europ (Mock)", "decimals": 6, "isDefault": false }
    ]
  },
  "error": null,
  "metadata": {
    "timestamp": "2026-10-19T09:12:04.318Z",
    "requestId": "3f7c2a91-6d84-4b0e-9a15-c2e8f4d7b603",
    "instanceId": "inst_abc123"
  }
}
```

## Error Codes

| Code | HTTP | Cause |
| - | - | - |
| `SELLER_FINANCING_UNAVAILABLE` | `503` | The instance is a `PRODUCTION` instance or not on Ethereum |
| `OPTIONS_READ_FAILED` | `500` | Unexpected failure. Retry, or contact support with the request ID |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.