Как создать продукт с динамической ценой?

Чтобы продавать один и тот же контент по разным ценам, создайте продукт без фиксированной цены и продавайте его через API.

Важно:

Такой продукт нельзя купить напрямую на платформе — только через API. Если нужна обычная продажа с фиксированной ценой на самой платформе, не включайте этот режим.


Для чего это нужно?

✔ У вас свой сайт, лендинг, CRM или Telegram-бот, и вы используете платформу только для приёма платежей.
✔ Вы продаёте одно и то же по разным ценам в зависимости от канала или клиента.
✔ Не хотите каждый раз заходить в интерфейс, чтобы изменить цену.


Как создать?

1. Нажмите «Создать» и выберите «Цифровой продукт», «Консультацию» или «Курс».

2. Заполните всю информацию как обычно: название, описание, обложку, контент. Подробнее о создании контента здесь.

3. В блоке стоимости найдите переключатель «Цена по запросу через API».

4. Включите его → поля с ценой и тарифами скроются.

5. Нажмите «Сохранить» — продукт опубликован.

Такой продукт:

- проходит обычную модерацию,
- доступен на платформе только по ссылке — не виден в профиле для клиентов,
- продаётся только через API,
- на его странице нет кнопки «Купить» — вместо цены написано «Цена по запросу».


Как перевести существующий продукт в такой режим?

1. Найдите нужный продукт в своём аккаунте в разделе «Моя страница».

2. Откройте меню действий (три точки).

3. Выберите «Цена по запросу API»

4. Подтвердите действие.

Готово! Продукт переведён в новый режим, его не нужно пересоздавать.


Как вернуть обычную цену?

1. Найдите нужный продукт и нажмите на три точки.

2. В меню действий выберите «Выключить цену по запросу».

3. Заполните поле со стоимостью.

4. Сохраните изменения.


Готово! Продукт снова доступен для обычной продажи на платформе.


Как продавать через API?

Для создания покупки используется метод POST/api/v3/invoice.

В запросе нужно передать:

  • offerId — ID контента.
  • email — почта клиента.
  • currency — валюта (RUB, USD, EUR).
  • amount — сумма, которую будет оплачивать клиент.

Параметр amount становится обязательным именно для продуктов без фиксированной цены — вы указываете её прямо в запросе.

💡Пример стандартного запроса без дополнительных данных:

{
  "email": "[email protected]",
  "offerId": "836b9fc5-0000-4a27-9642-592bc44072b0",
  "currency": "EUR",
  "amount": 120
}

💡Пример запроса с указанием платежного провайдера:

{
  "email": "[email protected]",
  "offerId": "836b9fc5-7ae9-4a27-9642-592bc4407000",
  "currency": "USD",
  "amount": 120,
  "paymentProvider": "PAYPAL"
}


Почему не находит продукт методом GET/api/v2/products?

По умолчанию метод GET/api/v2/products возвращает только продукты, видимые в для всех пользователей. Если ваш продукт создан в режиме «Цена по запросу через API», он скрыт из общего доступа.

Чтобы получить такой продукт в ответе, добавьте параметр feedVisibility со значением ALL или ONLY_HIDDEN.

💡Пример запроса, чтобы увидеть только скрытые продукты:

GET https://gate.lava.top/api/v2/products?feedVisibility=ONLY_HIDDEN


Частые ошибки

1. В продукте выбрана опция «Цена по запросу через API», но в запросе не передано значение amount, то есть, не указана цена к оплате:

{
  "error": "Invalid input fields",
  "details": {
    "amount": "Amount is required for products with custom price"
  }
}


2. Сумма в поле amount ниже или выше допустимых лимитов стоимости:

{
  "error": "Invalid input fields",
  "details": {
    "amount": "For USD, amount must be between 5 and 10000"
  }
}
Минимальная цена — 50₽, 5€ или 5$, а максимальная — 1 000 000₽, 10 000€ или 10 000$.


3. В «Платежных настройках» аккаунта выключена валюта, которая передана в запросе — сперва нужно включить валюту для приема платежей, а после еще раз отправить запрос. О настройках — здесь.

{
  "error": "Invalid input fields",
  "details": {
    "currency": "USD currency must be enabled in the payment settings"
  }
}
    


Подробнее про настройку интеграции — на портале разработчика.