К содержимому
Интеграции

Продажи и синхронизация

Обновлено

Откуда берутся данные

Сводка devapi_get_summary и начисления devapi_get_month_balance считаются по локальным транзакциям приложения «Разработчик Webasyst». Они зависят от последней загрузки данных из кабинета.

Баланс devapi_get_balance получает приложение из кабинета, с возможностью использовать кеш. Поэтому баланс счёта и начисления за текущий месяц — разные показатели.

Обновление транзакций

  1. Посмотрите last_update в devapi_list_accounts.
  2. Вызовите devapi_sync_transactions для нужного аккаунта.
  3. После успешного обновления повторно запросите сводку или начисления.
Параметр devapi_sync_transactions Что делает Значения / по умолчанию
account_id Выбирает аккаунт Необязателен, если аккаунт один
new_only Определяет объём загрузки true — новые транзакции; false — перезагрузить историю

Синхронизация записывает данные в локальную базу приложения и не создаёт и не удаляет данные в кабинете. confirm не требуется. Ответ содержит transactions_total — общее количество транзакций аккаунта в локальной базе, а не число новых записей.

Полная загрузка истории может быть длительной. Для обычного обновления используйте new_only=true. Собственного cron или CLI-обработчика для синхронизации у плагина нет.

Параметры сводки

Параметр devapi_get_summary Что делает Значения / по умолчанию
account_id Выбирает аккаунт Необязателен при единственном аккаунте
list_type Выбирает период month; допустимые значения — ниже
transaction_type Фильтрует по типу операции Не задан; примеры: purchase, purchase_upgrade, subscribe_month, subscribe_year, payout_bank, order_payment, purchase_cancel, without_order_payment
products Ограничивает продукты Массив slug из devapi_get_products; по умолчанию без фильтра
limit Ограничивает число возвращаемых транзакций 30; код ограничивает диапазоном 1–500
offset Пропускает строки списка транзакций 0; отрицательное значение приводится к 0
exclude_order_payment Исключает order_payment из count и sum, пересчитывает license_counts с фильтрами true; false — результат приложения без этого пересчёта

Периоды: today, two_days (вчера и сегодня), week, two_week, month, prev_month, two_month, quartal, year, all. По справке продукта, кроме all, ответ содержит сравнение с предыдущим периодом в compares. Точные границы периодов определяет приложение «Разработчик Webasyst».

limit и offset относятся к списку транзакций и не ограничивают общие показатели сводки.

Как читать результат

По умолчанию плагин убирает order_payment из количества и суммы операций. При разборе отчёта ориентируйтесь на тип и содержание конкретной транзакции.

Пересчёт license_counts учитывает только subscribe_month, subscribe_year, purchase, lease, purchase_upgrade, purchase_cancel и применённые фильтры. order_payment и payout_bank в эти счётчики не входят.

Список records этот пересчёт не меняет: наличие комиссионной операции в списке не означает, что она включена в итоговую сумму. Исключение выплат payout_bank из суммы описано встроенной справкой и выполняется на стороне приложения «Разработчик Webasyst».

Если получение баланса при построении сводки завершилось ошибкой, плагин возвращает balance: null и продолжает выдавать остальные данные. Это не означает нулевой баланс.

Пример просьбы

Обнови новые транзакции моего аккаунта разработчика.
Затем покажи сводку за текущий месяц и сравнение с предыдущим периодом.
Отдельно объясни сумму, количество операций и счётчики лицензий.