Интеграции программы лояльности Maxma с интернет-магазином на InSales


Реализация интеграции между платформой InSales и системой Maxma для полноценного управления программой лояльности, начислением/списанием бонусов, использования промокодов и CRM-маркетинга как в розничных точках, так и в интернет-магазине. Интеграция Maxma и InSales позволяет реализовать полноценную омниканальную программу лояльности, охватывая весь цикл взаимодействия с клиентом: от регистрации до покупки и повторных обращений. Внедрение таких решений повышает LTV, сокращает отток и улучшает показатели маркетинга без изменения основной архитектуры магазина.

Возможности, реализуемые через API Maxma

  • Регистрация клиентов и выдача виртуальных карт
  • Автоматическое начисление бонусов и списание при заказах
  • Применение промокодов
  • Синхронизация заказов и транзакций
  • Рассылки по SMS/e-mail/Push и другие триггерные сценарии
  • Статистика по балансу, активности и история операций
  • Расчет скидок на этапе оформления заказа

Архитектура интеграции

 

graph TD;
  A[InSales Storefront] -->|REST API / Webhook| B[Backend магазина]
  B -->|POST JSON| C(Maxma API)
  C -->|Результат (JSON)| B
  B -->|Отображение баланса / скидок| A

 

Этапы внедрения:

Создание клиента при регистрации

POST https://api.maxma.com/new-client
Headers:
  Content-Type: application/json
  Accept: application/json
  X-Processing-Key: {{SECRET_KEY}}

Body:
{
  "client": {
    "phoneNumber": "+79998887766",
    "email": "client@example.com",
    "fullName": "Иванов Иван",
    "birthdate": "1990-01-01T00:00:00+03:00",
    "card": "INS0012345678"
  }
}

Расчет скидки и бонусов на этапе оформления заказа

POST https://api.maxma.com/v2/calculate-purchase

Body:
{
  "calculationQuery": {
    "client": {
      "phoneNumber": "+79998887766"
    },
    "shop": {
      "code": "inSales-shop"
    },
    "rows": [
      {
        "sku": "SKU123",
        "price": 1500,
        "quantity": 2
      }
    ],
    "promocode": "SALE2025"
  }
}

Ответ возвращает расчет итоговой суммы с учетом бонусов и промокодов. Он используется в интерфейсе оформления заказа InSales.

Создание и подтверждение заказа

После оформления заказа на стороне клиента в InSales:

Вызов /v2/set-order резервирует бонусы. После оплаты заказа вызывается /confirm-order

POST /v2/set-order
{
  "orderId": "ORDER-123",
  "calculationQuery": {
    "client": { "phoneNumber": "+79998887766" },
    "shop": { "code": "inSales-shop" },
    "rows": [ { "sku": "SKU123", "price": 1500, "quantity": 1 } ],
    "applyBonuses": 300
  }
}

Отображение бонусов и истории

Расчет бонусов для товаров:

POST /api/loyalty/products/calculate

Пример запроса:

{
  "items": [
    {"product_id": 123, "quantity": 2},
    {"product_id": 456, "quantity": 1}
  ]
}

Синхронизация данных:

  • Для товаров используйте периодическую синхронизацию через:
GET /admin/products.json?updated_since=2023-01-01
  • Обновляйте в Maxma поля: external_id, price, stock_quantity.

Регистрация пользователей

Автоматическая при создании клиента:
Настройте вебхук в InSales:

Событие: client/create
URL: https://your-server.ru/maxma-register

Пример обработчика:

POST /api/loyalty/clients

Тело запроса:

{
  "phone": "79001234567",
  "email": "client@mail.ru",
  "birthday": "1990-01-01"
}

С SMS-подтверждением:

  1. Инициируйте регистрацию:
POST /api/loyalty/clients/register
  1. Подтвердите код:
POST /api/loyalty/clients/confirm

Тело:

{
  "phone": "79001234567", 
  "code": "123456"
}

4. Обработка заказов

При загрузке личного кабинета InSales через API получаем данные по бонусному балансу и истории операций:

POST /get-balance
{
  "phoneNumber": "+79998887766"
}

Тело:

POST /get-history
{
  "client": { "phoneNumber": "+79998887766" },
  "pagination": { "limit": 10, "offset": 0 }
}

5. Рассылки и CRM-маркетинг

После интеграции клиентская база автоматически попадает в систему Maxma. Используя RFM-сегментацию, можно запускать:

  • Автоматические цепочки (брошенная корзина, поздравление с ДР, напоминание о бонусах)
  • Триггерные рассылки по e-mail/SMS/Viber/Push
  • Гео-таргетинг через push-сообщения при посещении розничных точек

Поддержка промокодов и “Приведи друга”

При создании клиента или оформлении заказа можно передавать промокоды:

"promocode": "FRIEND2025"

В ответе Maxma вернет применимость и результат расчета, а также можно использовать метод /issue-promocode для выдачи индивидуальных кодов.

InSales, Maxma, интеграция, api, программа лояльности, crm, бонусы, скидки, рассылки, промокоды, возвраты


Особенности реализации на InSales

Используется Webhook InSales для отслеживания заказов и регистрации клиентов.

Все вызовы к Maxma делаются с backend-сервера, так как API не поддерживает CORS.

Для хранения состояния клиента (например, промокодов, баланса, ID) рекомендуется использовать дополнительные поля в сущностях InSales или отдельную базу.

Если нужна помощь с реализацией интеграции - мы партнеры этих платформ.


Документация:

Нужна интеграция Maxma и InSales?

Получите оценку стоимости в течение 30 минут!