# App, balance and rates

> Information about the app, balance, coin rates, the list of available coins and statistics: getMe, getBalance, getExchangeRates, getCurrencies, getStats.

These methods don't change anything — they only read data. You can call them via `GET` or `POST`, and it is safe to repeat them.

## getMe

Checks the token and returns basic information about the app. No parameters.

```bash title="cURL"
curl https://pay.pswallet.org/api/getMe \
  -H "PSWallet-Pay-API-Token: $TOKEN"
```

Returns an object:

| Field | Type | Description |
|---|---|---|
| `app_id` | Number | App ID (shown as `#A1234` in the dashboard). |
| `name` | String | App name. |
| `payment_processing_bot_username` | String | The bot where users pay invoices. |

```json
{
  "ok": true,
  "result": {
    "app_id": 1234,
    "name": "My Shop",
    "payment_processing_bot_username": "pswallet"
  }
}
```

## getBalance

The app balance across all available coins, including zero balances. No parameters. Returns an array of [Balance](https://help.pswallet.org/en/pay-api/types#balance).

- `available` — can be spent on transfers, checks and withdrawals.
- `onhold` — held for unactivated [checks](https://help.pswallet.org/en/pay-api/checks).

```bash title="cURL"
curl https://pay.pswallet.org/api/getBalance \
  -H "PSWallet-Pay-API-Token: $TOKEN"
```

```json
{
  "ok": true,
  "result": [
    { "currency_code": "USDT-TRC20", "available": "84.47", "onhold": "2" },
    { "currency_code": "USDT-BEP20", "available": "0", "onhold": "0" },
    { "currency_code": "USDT-ERC20", "available": "0", "onhold": "0" },
    { "currency_code": "USDT-TON", "available": "12.5", "onhold": "0" },
    { "currency_code": "XAUT", "available": "0", "onhold": "0" },
    { "currency_code": "TRX", "available": "150.25", "onhold": "0" },
    { "currency_code": "BNB", "available": "0", "onhold": "0" },
    { "currency_code": "ETH", "available": "0", "onhold": "0" },
    { "currency_code": "GRAM", "available": "0", "onhold": "0" },
    { "currency_code": "RUB", "available": "1455.48", "onhold": "0" }
  ]
}
```

Temporarily unavailable coins are not included in the response. USDT balances are returned per network: the app has a separate balance in each network.

## getExchangeRates

Current coin rates against `USD` and `RUB`. No parameters. Returns an array of [ExchangeRate](https://help.pswallet.org/en/pay-api/types#exchangerate). Fiat invoices are converted at these rates.

Rates are returned for `USDT` (the same for all networks), the other available coins and the ruble. If the rate source is temporarily unavailable, the row has `is_valid: false` and `rate: "0"` — do not use such a rate in calculations.

```bash title="cURL"
curl https://pay.pswallet.org/api/getExchangeRates \
  -H "PSWallet-Pay-API-Token: $TOKEN"
```

```json
{
  "ok": true,
  "result": [
    { "is_valid": true, "is_crypto": true, "is_fiat": false, "source": "USDT", "target": "USD", "rate": "1" },
    { "is_valid": true, "is_crypto": true, "is_fiat": false, "source": "USDT", "target": "RUB", "rate": "81.25" },
    { "is_valid": true, "is_crypto": true, "is_fiat": false, "source": "TRX", "target": "USD", "rate": "0.2874" },
    { "is_valid": true, "is_crypto": true, "is_fiat": false, "source": "TRX", "target": "RUB", "rate": "23.35" },
    { "is_valid": true, "is_crypto": false, "is_fiat": true, "source": "RUB", "target": "USD", "rate": "0.01230769231" }
  ]
}
```

The rates in the example are illustrative; the response is shortened.

## getCurrencies

The list of coins and currencies the API currently accepts. No parameters. Returns an array of [Currency](https://help.pswallet.org/en/pay-api/types#currency).

The list contains coin codes with the network (`USDT-TRC20`, `USDT-BEP20`, etc.) and the fiat currency `USD`. Temporarily unavailable coins are not included in the list. The `USDT` code (any network) is not listed separately, but you can use it in parameters — see [Coins and amounts](https://help.pswallet.org/en/pay-api/assets).

```bash title="cURL"
curl https://pay.pswallet.org/api/getCurrencies \
  -H "PSWallet-Pay-API-Token: $TOKEN"
```

```json
{
  "ok": true,
  "result": [
    { "is_blockchain": true, "is_stablecoin": true, "is_fiat": false, "name": "Tether (TRC20)", "code": "USDT-TRC20", "decimals": 6 },
    { "is_blockchain": true, "is_stablecoin": true, "is_fiat": false, "name": "Tether (BEP20)", "code": "USDT-BEP20", "decimals": 6 },
    { "is_blockchain": true, "is_stablecoin": false, "is_fiat": false, "name": "TRON", "code": "TRX", "decimals": 6 },
    { "is_blockchain": true, "is_stablecoin": false, "is_fiat": false, "name": "BNB (BEP20)", "code": "BNB", "decimals": 8 },
    { "is_blockchain": false, "is_stablecoin": false, "is_fiat": true, "name": "Russian Ruble", "code": "RUB", "decimals": 2 },
    { "is_blockchain": false, "is_stablecoin": false, "is_fiat": true, "name": "US Dollar", "code": "USD", "decimals": 2 }
  ]
}
```

The response is shortened.

## getStats

App statistics for a period. Returns [AppStats](https://help.pswallet.org/en/pay-api/types#appstats).

| Parameter | Type | Description |
|---|---|---|
| `start_at` | String | Optional. Start of the period, ISO 8601. Defaults to 24 hours before `end_at`. |
| `end_at` | String | Optional. End of the period, ISO 8601. Defaults to now. |

The start of the period must be earlier than the end, otherwise the `PARAM_START_AT_INVALID` error is returned. An invalid date returns `PARAM_START_AT_INVALID` or `PARAM_END_AT_INVALID`.

```bash title="cURL"
curl "https://pay.pswallet.org/api/getStats?start_at=2026-11-01T00:00:00Z&end_at=2026-11-08T00:00:00Z" \
  -H "PSWallet-Pay-API-Token: $TOKEN"
```

```json
{
  "ok": true,
  "result": {
    "volume": 1520.5,
    "conversion": 0.6154,
    "unique_users_count": 31,
    "created_invoice_count": 65,
    "paid_invoice_count": 40,
    "start_at": "2026-11-01T00:00:00.000+00:00",
    "end_at": "2026-11-08T00:00:00.000+00:00"
  }
}
```

- `volume` — the turnover of invoices paid during the period, in USD (at the rate at the time of payment).
- `conversion` — the share of paid invoices among those created during the period, from 0 to 1.

---
Source: https://help.pswallet.org/en/pay-api/balance
