# Listing invoice currency pairs

<mark style="color:green;">`GET`</mark> `/api/public/v1/invoices/currency_pairs`

Returns all available invoice currency pairs. Use this endpoint to discover which currencies (`billedCurrency`) can be used to denominate an invoice and which cryptocurrencies (`chargedCurrency`) the customer can pay with, along with the networks available for each.

To construct a [Create Invoice](/invoices/creating-invoice.md) request from the response:

1. Choose a pair — `billedCurrency` gives you the `billedCurrency` parameter, `chargedCurrency` gives you the `chargedCurrency` parameter.
2. Find the `chargedCurrency` entry in `included` and follow its `networks` references.
3. Find the matching `network` objects in `included` — the `code` is the `network` value to use.

**Headers**

| Name          | Value                      |
| ------------- | -------------------------- |
| Content-Type  | `application/vnd.api+json` |
| Authorization | `Bearer <api_key>`         |

**Response Body**

<table><thead><tr><th>Name</th><th width="96">Type</th><th>Description</th></tr></thead><tbody><tr><td>data[].id</td><td>string</td><td>Currency pair ID.</td></tr><tr><td>data[].type</td><td>string</td><td>Always <code>invoiceCurrencyPairs</code>.</td></tr><tr><td>data[].attributes.direction</td><td>string</td><td>Always <code>sell</code> — the platform sells the <code>chargedCurrency</code> received from the customer and settles the invoice in <code>billedCurrency</code>.</td></tr><tr><td>data[].attributes.enabled</td><td>boolean</td><td>Whether this pair is currently available for invoices.</td></tr><tr><td>data[].relationships.billedCurrency.data.id</td><td>string</td><td>Currency code of the invoice denomination. Use as the <code>billedCurrency</code> parameter in Create Invoice.</td></tr><tr><td>data[].relationships.chargedCurrency.data.id</td><td>string</td><td>Currency code of the cryptocurrency the customer pays with. Use as the <code>chargedCurrency</code> parameter in Create Invoice.</td></tr><tr><td>included[].type(currencies).attributes.code</td><td>string</td><td>Currency code.</td></tr><tr><td>included[].type(currencies).attributes.crypto</td><td>boolean</td><td><code>true</code> for cryptocurrencies, <code>false</code> for fiat.</td></tr><tr><td>included[].type(currencies).attributes.symbol</td><td>string</td><td>Display symbol for the currency.</td></tr><tr><td>included[].type(currencies).attributes.subunitToUnit</td><td>number</td><td>Number of smallest units in one whole unit (e.g. <code>100000000</code> for BTC, <code>100</code> for EUR).</td></tr><tr><td>included[].type(currencies).relationships.networks</td><td>array</td><td>Network references for this currency. Resolve against <code>network</code> objects in <code>included</code> to get the <code>network</code> codes.</td></tr><tr><td>included[].type(network).attributes.code</td><td>string</td><td>Network code. Use as the <code>network</code> parameter in Create Invoice.</td></tr><tr><td>included[].type(network).attributes.name</td><td>string</td><td>Human-readable network name.</td></tr><tr><td>included[].type(network).attributes.currencyCode</td><td>string</td><td>Currency code this network belongs to.</td></tr></tbody></table>

**Response**

{% tabs %}
{% tab title="HTTP 200" %}

```json
{
  "data": [
    {
      "id": "b5871e76-9609-4a54-af18-b8979a2e663e",
      "type": "invoiceCurrencyPairs",
      "attributes": {
        "direction": "sell",
        "enabled": true
      },
      "relationships": {
        "billedCurrency": {
          "data": { "type": "currencies", "id": "EUR" }
        },
        "chargedCurrency": {
          "data": { "type": "currencies", "id": "USDT" }
        }
      }
    },
    {
      "id": "d7a631bd-dd67-4d5f-a8ef-d50e1a5bbfca",
      "type": "invoiceCurrencyPairs",
      "attributes": {
        "direction": "sell",
        "enabled": true
      },
      "relationships": {
        "billedCurrency": {
          "data": { "type": "currencies", "id": "EUR" }
        },
        "chargedCurrency": {
          "data": { "type": "currencies", "id": "BTC" }
        }
      }
    }
  ],
  "included": [
    {
      "id": "EUR",
      "type": "currencies",
      "attributes": {
        "code": "EUR",
        "crypto": false,
        "symbol": "€",
        "subunitToUnit": 100
      },
      "relationships": {
        "networks": { "data": [] }
      }
    },
    {
      "id": "USDT",
      "type": "currencies",
      "attributes": {
        "code": "USDT",
        "crypto": true,
        "symbol": "₮",
        "subunitToUnit": 1000000
      },
      "relationships": {
        "networks": {
          "data": [
            { "type": "network", "id": "2cfea86d-f334-4bd2-99ac-e74281520c95" },
            { "type": "network", "id": "8ededca3-a1cd-4b46-8c3a-14915f706ab2" },
            { "type": "network", "id": "490f02d4-b09a-4486-a469-d10c2ea43638" },
            { "type": "network", "id": "927d49d4-f4b2-48dc-876d-ac375337ec2a" },
            { "type": "network", "id": "4a1ec40b-8656-437c-ae79-4dd5435b53a5" }
          ]
        }
      }
    },
    {
      "id": "BTC",
      "type": "currencies",
      "attributes": {
        "code": "BTC",
        "crypto": true,
        "symbol": "฿",
        "subunitToUnit": 100000000
      },
      "relationships": {
        "networks": {
          "data": [
            { "type": "network", "id": "c0369c57-da08-4c60-b5ee-63e1e43d5ae4" }
          ]
        }
      }
    },
    {
      "id": "2cfea86d-f334-4bd2-99ac-e74281520c95",
      "type": "network",
      "attributes": {
        "currencyCode": "USDT",
        "name": "Ethereum (ERC20)",
        "code": "hterc6dp"
      }
    },
    {
      "id": "8ededca3-a1cd-4b46-8c3a-14915f706ab2",
      "type": "network",
      "attributes": {
        "currencyCode": "USDT",
        "name": "Tron (TRC20)",
        "code": "ttrx:usdt"
      }
    },
    {
      "id": "490f02d4-b09a-4486-a469-d10c2ea43638",
      "type": "network",
      "attributes": {
        "currencyCode": "USDT",
        "name": "Polygon (ERC20)",
        "code": "tpolygon:usdt"
      }
    },
    {
      "id": "927d49d4-f4b2-48dc-876d-ac375337ec2a",
      "type": "network",
      "attributes": {
        "currencyCode": "USDT",
        "name": "Binance Smart Chain (BEP20)",
        "code": "tbsc:usdt"
      }
    },
    {
      "id": "4a1ec40b-8656-437c-ae79-4dd5435b53a5",
      "type": "network",
      "attributes": {
        "currencyCode": "USDT",
        "name": "Solana",
        "code": "tsol:usdt"
      }
    },
    {
      "id": "c0369c57-da08-4c60-b5ee-63e1e43d5ae4",
      "type": "network",
      "attributes": {
        "currencyCode": "BTC",
        "name": "Bitcoin",
        "code": "tbtc"
      }
    }
  ],
  "meta": {},
  "jsonapi": {
    "version": "1.0"
  }
}
```

{% endtab %}
{% endtabs %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.txn.io/invoices/listing-invoice-currency-pairs.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
