---
title: "CurrencyManager"
description: "Currency catalogue cached in memory — base currency, per-currency formatters, and number-to-string formatter."
canonical_url: "https://bitrix24.github.io/b24jssdk/docs/working-with-the-rest-api/helper-currency-manager"
last_updated: "2026-08-25"
---
# CurrencyManager

> Currency catalogue cached in memory — base currency, per-currency formatters, and number-to-string formatter.

`CurrencyManager`{className="language-ts-type shiki shiki-themes material-theme-lighter material-theme material-theme-palenight" language="ts-type" style=""} caches the result of `crm.currency.base.get` + `crm.currency.list` (and a follow-up batched `crm.currency.get` for per-language formatters). Created when `LoadDataType.Currency` is requested; reachable through [`B24HelperManager.currency`](https://bitrix24.github.io/b24jssdk/raw/docs/working-with-the-rest-api/helper.md#profileinfo--appinfo--paymentinfo--licenseinfo--currency--appoptions--useroptions).

## Usage

```ts
import { useB24Helper, LoadDataType } from '@bitrix24/b24jssdk'

const { initB24Helper, getB24Helper } = useB24Helper()
await initB24Helper($b24, [LoadDataType.Currency])

const currency = getB24Helper().currency
console.log(currency.baseCurrency)              // 'USD'
console.log(currency.currencyList)              // ['USD', 'EUR', 'RUB', ...]
console.log(currency.format(1234.5, 'USD', 'en')) // '$1,234.50'
```

## Getters

### `baseCurrency`

```ts-type
get baseCurrency(): string
```

Portal's base currency code (`USD`, `RUB`, …).

### `currencyList`

```ts-type
get currencyList(): string[]
```

Array of available currency codes.

### `data`

```ts-type
get data(): { currencyBase: string, currencyList: Map<string, Currency> }
```

Internal cache. The `Currency`{className="language-ts-type shiki shiki-themes material-theme-lighter material-theme material-theme-palenight" language="ts-type" style=""} value type is documented in [`b24-helper.ts`](https://github.com/bitrix24/b24jssdk/blob/main/packages/jssdk/src/types/b24-helper.ts){rel="[\"nofollow\"]"}.

## Methods

### `getCurrencyFullName`

```ts-type
getCurrencyFullName(currencyCode: string, langCode?: string): string
```

Localised full name (e.g. `Russian Ruble`). Throws `UnhandledMatchError`{className="language-ts-type shiki shiki-themes material-theme-lighter material-theme material-theme-palenight" language="ts-type" style=""} for unknown `currencyCode`.

### `getCurrencyLiteral`

```ts-type
getCurrencyLiteral(currencyCode: string, langCode?: string): string
```

Currency symbol/literal extracted from the format string (e.g. `$`, `₽`).

### `format`

```ts-type
format(value: number, currencyCode: string, langCode: string): string
```

Returns the value formatted per the per-language `formatString`, `decimals`, `decPoint`, `thousandsSep` (with the same `THOUSANDS_VARIANT` mapping Bitrix24 uses on the server).

### `setBaseCurrency` / `setCurrencyList`

```ts-type
setBaseCurrency(currencyBase: string): void
setCurrencyList(list: CurrencyInit[]): void
```

Manual overrides — primarily used internally during `initData`.

## Sitemap

See the full [sitemap](/b24jssdk/sitemap.md) for all pages.
