Get exchange rates

Use this endpoint to retrieve exchange rates between your Tango account currency and reward currencies. Tango applies the exchange rate in effect at the time an order is placed to convert the reward amount to the amount charged to your account. Exchange rates returned by this endpoint are provided for reference only and may differ from the final rate applied at checkout. Foreign exchange rates are calculated daily using multiple sources, depending on the brand and location. The final amount charged to your account is presented at the time of order.

📘

Note:

  • baseCurrency is the Tango account currency used to fund and charge the order.
  • rewardCurrency is the currency of the reward being sent.
  • Tango converts the reward amount from rewardCurrency to baseCurrency at the time of order.
  • Exchange rates returned by this endpoint are for reference and may change before an order is placed.
  • Exchange rates are updated once per day starting at 12:00 UTC and no later than +13:00 UTC.
  • Completed transactions are final. Once a transaction is complete, its currency cannot be exchanged for another currency.

Endpoint

Use the following endpoint to get a list of exchange rates available for your platform.

EndpointDescription
GET {URI}/exchangeratesGet a list of exchange rates available for this platform.

Parameters

The following query parameters help you narrow down your search with this endpoint. You can query exchange rates for your base currency or reward currency. For example, enter your base currency such as USD, and get the conversion rate for EUR. Paginate the results to filter the payload.

Query params

Data type

Description

paginate

boolean

Whether to paginate the results or not. Paginate defaults to false.
-**true:**paginates the results
-**false:**doesn't paginate the results.

prevCursor

string

The cursor to use for the previous page of results. This will be ignored if paginate is false.

nextCursor

string

The cursor to use for the next page of results. This will be ignored if paginate is false.

maxResults

string

The maximum number of results to return. The default is 10, and the maximum is 200. This will be ignored if paginate is false.

baseCurrency

array of strings

Returns all exchange rates for a specific base currency. (optional)
This field is case-sensitive.

rewardCurrency

array of strings

Returns all exchange rates for a specific reward currency. (optional)
This field is case-sensitive.


Tango account currency rules

Supported Tango account currencies are AUD, CAD, EUR, GBP, MXN, SGD, and USD. A Tango account has one account currency. This currency is set when the account is created and defaults to USD if no currency is specified.

You can change an account’s currency only if the account has no transactions. After transactions occur, the account currency cannot be changed. To use a different account currency after transactions exist, create a new account with the requested currency. For more information, see Manage accounts chapter.

Examples

The following payload example shows the exchange rate for when your account's base currency is USD and you would like to see the conversion rate to Euro currency EUR for the reward. The value you enter in the currency field is case sensitive:

{
  "disclaimer": "Exchange rates are provided here for reference. They are updated at least once a day and may have changed by time of order.",
  "exchangeRates": [
    {
      "lastModifiedDate": "2025-02-12T13:01:52.538Z",
      "rewardCurrency": "EUR",
      "baseCurrency": "USD",
      "baseFx": 0.96381
    }
  ]
}

The following payload example shows the pagination payload:

{
  "prevCursor": null,
  "nextCursor": null,
  "prevPageAvailable": false,
  "nextPageAvailable": false,
  "maxResults": 10,
  "disclaimer": "string",
  "exchangeRates": [
    {
      "lastModifiedDate": "2023-01-23T20:12:42.136Z",
      "rewardCurrency": "string",
      "baseCurrency": "string",
      "baseFx": 0
    }
  ]
}

Here's an example payload for when you receive an error:

{
  "timestamp": "2025-02-21T23:23:13.930Z",
  "requestId": "string",
  "path": "string",
  "httpCode": 0,
  "httpPhrase": "string",
  "i18nKey": "string",
  "message": "The error message will show here for error codes ",
  "errors": [
    {}
  ]
}

Response codes

The possible response codes for this endpoint are as follows. For details, see i18nkey codes and their error messages:

Response codeMeaning
200The request was successful.
400The server could not understand the request due to invalid syntax.
401Authentication is required and has either not been provided or failed.
403The server understood the request but refuses to authorize it.
500Something went wrong on the server, but the server cannot be more specific about what the exact problem is.
503The server is currently unable to handle the request due to temporary overload or maintenance.


© 2026 Tango API are provided by Tango, a division of BHN, Inc.