Настроить виджет LBX

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

  1. Настройте генерацию JWT-токенов
  2. Встройте виджет на страницу

Настроить генерацию JWT-токенов

Чтобы аутентифицировать клиентов в виджете, вам необходимо генерировать JWT-токены. Токен будет уникальным для каждого клиента.

  1. Подключите библиотеку для генерации токенов. Можно использовать стороннюю библиотеку, например firebase/php-jwt. Каждый токен должен быть подписан с использованием секрета, который вы получили в email, с помощью алгоритма HS256.

  2. Задайте параметры генерации JWT-токенов. Установите значение параметра ident_type — он отвечает за то, по каким признакам система будет искать клиента в LBX. Возможные значения:

    • 0 — по логину клиента,
    • 1 — по имени/названию клиента,
    • 2 — по ИНН клиента,
    • 3 — по мобильному телефону клиента,
    • 4 — по email клиента,
    • 5 — по номеру договора клиента.

    Помимо ident_type в payload каждого JWT-токена передаются:

    • ident — значение параметра ident_type. Например, если для ident_type выбрано 2 (по ИНН клиента), то в ident будет ИНН конкретного клиента — к примеру, 7726520179.
    • iat — timestamp создания токена.

    Результат генерации токена — строка вида:

    eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.
    eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.
    SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c.
    

    ``

    Она передаётся клиенту при инициализации виджета.

    Пример payload токена:

    {
      "ident_type": 2,
      "ident": "7726520179",
      "iat": 1712131614
    }
    

    ``

Встроить виджет на страницу

Для того чтобы виджет отображался на вашей HTML-странице, его нужно встроить.

  1. Подключите скрипт виджета на вашей странице. Вместо https://URL_billing/lbxwidget.js укажите свою ссылку на файл:

    <script src="https://URL_billing/lbxwidget.js"></script>
    

    ``

  2. Добавьте контейнер в html-код страницы, на которой нужно отображать виджет:

    <div id="widget-container"></div>
    

    ``

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

    const widget = lbxwidget({ token: {jwtToken}, {...остальные параметры} });
    widget.render('widget-container');
    

    ``

    Параметры:

    • token — JWT-токен клиента.

    • Остальные параметры:

      • disableCreateSubscription: boolean:
        • false — ваши клиенты смогут создавать в виджете новые подписки,
        • true — отключает возможность создания подписок.
      • disableEditSubscription: boolean:
        • false — клиенты смогут менять в виджете свои подписки,
        • true — отключает возможность редактирования подписок.
      • disableStopSubscription: boolean:
        • false — клиенты смогут отключать в виджете свои подписки,
        • true — отключает возможность отключения подписок.
      • disableAutopayments: boolean:
        • false — клиенты смогут подключать в виджете автоплатежи,
        • true — отключает возможность подключения автоплатежей.
      • disablePayments: boolean:
        • false — клиенты смогут пополнять баланс в виджете,
        • true — отключает возможность оплаты для клиентов.
      • disableInvoiceGeneration: boolean:
        • false — клиенты смогут формировать счета в виджете,
        • true — отключает возможность формирования счетов.
      • hideInvoicesList: boolean:
        • false — клиенты смогут просматривать свои счета в виджете,
        • true — отключает возможность просмотра счетов.
      • hideSubscriptionsList: boolean:
        • false — клиенты смогут просматривать список своих подписок в виджете,
        • true — отключает возможность просмотра подписок.
    • widget-container — контейнер, в котором будет отображаться виджет.


У вас есть вопросы по этой статье? Пожалуйста, напишите нам на .