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

# Pricing

Convexia delivers highly competitive pricing for **compliant cross-chain stablecoin swaps**, optimized for large-volume transactions.

Pricing is dynamically determined based on several factors, including:

* Source chain
* Destination chain
* Asset pair
* Trade size
* Current market conditions and time of day

Typical all-in pricing ranges between **3–10 basis points (bps)**, positioning Convexia as one of the most cost-effective solutions for institutional-scale stablecoin movement.

For clients with significant and recurring volume, additional pricing benefits are available. Teams processing **\$50M+ in monthly volume** may qualify for reduced fees and custom rate structures.

To discuss volume discounts or obtain a tailored pricing estimate, contact the Convexia team.

### Programmatic Pricing Data:

```
GET /v1/markets/spreads
```

## Purpose

Fetch **real-time indicative spreads** (in bps) for supported cross-chain stablecoin routes.

### **Authentication**

Required:

* `Authorization: Bearer <api_key>`

### Query Parameters

| Parameter    | Type    | Required | Description                                                                                      |
| :----------- | :------ | :------- | :----------------------------------------------------------------------------------------------- |
| `from_chain` | string  | optional | Filter results by source chain (e.g., `solana`, `base`, `ethereum`, `tron`).                     |
| `to_chain`   | string  | optional | Filter results by destination chain.                                                             |
| `from_asset` | string  | optional | Filter by source asset (e.g., `USDC`, `USDT`).                                                   |
| `to_asset`   | string  | optional | Filter by destination asset.                                                                     |
| `amount`     | string  | optional | Amount used to compute the spread tier (e.g., `1000000`). If omitted, returns default size tier. |
| `limit`      | integer | optional | Max number of routes returned (default `50`, max `200`).                                         |

### Response (200)

```
{
  "as_of": "2026-01-16T21:45:12Z",
  "mode": "indicative",
  "amount_context": "1000000",
  "routes": [
    {
      "route_id": "solana:USDC->tron:USDT",
      "from_chain": "solana",
      "to_chain": "tron",
      "from_asset": "USDC",
      "to_asset": "USDT",
      "spread_bps": "4.7",
      "estimated_fee_bps": "0.8",
      "estimated_all_in_bps": "5.5",
      "min_amount": "25000",
      "max_amount": "25000000",
      "price_ttl_ms": 15000,
    },
    {
      "route_id": "base:USDC->ethereum:USDC",
      "from_chain": "base",
      "to_chain": "ethereum",
      "from_asset": "USDC",
      "to_asset": "USDC",
      "spread_bps": "3.2",
      "estimated_fee_bps": "0.5",
      "estimated_all_in_bps": "3.7",
      "min_amount": "50000",
      "max_amount": "50000000",
      "price_ttl_ms": 15000,
    }
  ]
}
```

### Field Notes

* `spread_bps`: Indicative market spread for the route at the requested size tier.
* `estimated_fee_bps`: Convexia fee component (may vary by volume tier).
* `estimated_all_in_bps`: `spread_bps + estimated_fee_bps`.
* `price_ttl_ms`: How long this spread should be treated as “fresh” before re-fetching.
* `mode`: Always `indicative` for this endpoint.

## Errors

**400** invalid parameters

```
{ "error": { "code": "invalid_request", "message": "Unsupported chain: foo" } }
```

**401** missing/invalid API key

```
{ "error": { "code": "unauthorized", "message": "Invalid API key" } }
```

**429** rate limit

```
{ "error": { "code": "rate_limited", "message": "Too many requests" } }
```
