---
title: "Создание виртуальной валюты"
description: "Создайте виртуальную валюту в Adapty, привяжите её к продуктам, чтобы покупки начисляли кредиты, и настройте срок их действия."
---

:::link
Основная статья: [Виртуальные валюты](virtual-currencies)
:::

Чтобы продавать кредиты виртуальной валюты, сначала определите валюту, а затем привяжите её к продуктам.

Это делается в два шага — оба описаны в этой статье. После привязки продукта каждая покупка или продление будет автоматически начислять кредиты.

## Создание виртуальной валюты \{#create-a-virtual-currency\}

В дашборде Adapty откройте **Products** > [**Virtual currency**](https://app.adapty.io/virtual-currency).

Чтобы создать виртуальную валюту:

1. Нажмите **New virtual currency**. Откроется панель на шаге **General**.
2. Заполните данные о валюте:
    - **Code**: Уникальный **постоянный** идентификатор валюты в вашем приложении, например `COINS`. Идентифицирует валюту в серверном API и отслеживает баланс каждого пользователя.
    
Используйте латинские буквы, цифры и знак подчёркивания, не более 32 символов. Строчные буквы автоматически преобразуются в заглавные.
    - **Name**: Отображаемое название, например `Gold`. Его можно изменить позже.
    - **Description**: Необязательная заметка о валюте.
3. Нажмите **Continue**, чтобы перейти к шагу **Link Products**.

:::important
После создания валюты изменить её **Code** невозможно. **Name** при этом можно редактировать в любое время.
:::

При добавлении новой валюты начальный баланс каждого профиля пользователя равен 0.

## Привязка продуктов \{#link-products\}

Привяжите продукт к виртуальной валюте, чтобы покупка или продление подписки начисляло кредиты в этой валюте. Один продукт можно привязать к нескольким валютам, а одну валюту — к нескольким продуктам. Привязать продукты можно сейчас, на шаге **Link Products**, или позже при редактировании валюты.

На шаге **Link Products** в разделе **Associated products** отображаются продукты, которые начисляют данную валюту. Чтобы добавить продукт, нажмите **Add associated products** и выберите нужный продукт.

Каждое начисление добавляется к балансу пользователя, а не заменяет его, поэтому кредиты от разных продуктов накапливаются. Настройки кредитов зависят от типа продукта:

- **Продукты с подпиской** имеют три настройки кредитов:
    - **Credit per cycle** (обязательно): кредиты, начисляемые при каждом продлении, включая продление, которое переводит пробный период в платный.
    - **Credit on trial start** (необязательно): отдельная разовая сумма, начисляемая при начале бесплатного пробного периода.
    - **Credits expire at the end of each billing cycle** (переключатель): если включён, Adapty сбрасывает неиспользованные кредиты до 0 при каждом продлении, до начисления кредитов нового цикла. Если выключен, кредиты накапливаются между циклами и не истекают.
- **Разовые покупки**: задайте **Credit amount** — количество кредитов, начисляемых за каждую покупку. Разовые кредиты не истекают.

Нажмите **Save**, чтобы создать валюту с привязанными продуктами.

Привязки продуктов действуют только в будущем. Новый привязанный продукт начнёт начислять кредиты только со следующей покупки или продления. Adapty не начисляет валюту автоматически текущим подписчикам — им нужно сначала продлить подписку. При удалении привязки новые начисления прекращаются, но уже начисленные кредиты сохраняются.

Если переключатель срока действия включён, кредиты с истечением срока следуют жизненному циклу подписки:

- В период повторных попыток оплаты или льготного периода Adapty не начисляет новые кредиты.
- После отмены подписки кредиты сохраняются до конца оплаченного периода.
- Когда подписка истекает, Adapty сбрасывает оставшиеся кредиты до 0.

## Дальнейшие шаги \{#next-steps\}

После того как вы создадите валюту и привяжете продукты, покупки будут автоматически начислять кредиты. Что можно сделать дальше:

- Отслеживать баланс каждого пользователя на странице [Virtual currency balance](virtual-currency-balance).
- Начислять, списывать и считывать балансы в рантайме через серверный API: [Create virtual currency transaction](api-adapty/operations/createVirtualCurrencyTransaction) и [List virtual currency balances](api-adapty/operations/listVirtualCurrencyBalances). Чтобы посмотреть готовый пример, следуйте [Virtual currency quickstart](virtual-currency-quickstart).