Документация
Как зарегистрироваться и настроить Salesbeat,
виджет и API
Начало
Как зарегистрироваться?
Зарегистрироваться в Salesbeat очень просто и занимает меньше одной минуты. А чтобы у вас точно не возникло вопросов, мы решили сделать видео по каждому аспекту использования Salesbeat.
Отлично. Теперь у нас есть аккаунт и самое время подключить используемые службы доставки и посмотреть, как виджет выглядит на нашем сайте!
Настройка
Как сделать скидку или наценку на доставку? Увеличить срок доставки?
Часто бывает, когда мы хотим сделать доставку дешевле — например, сделать бесплатную доставку для заказов от определённой суммы. Или мы проводим акцию с бесплатной доставкой по промокоду. А может быть мы хотим сделать наценку на отправки Почтой России или добавить 1 день в базовый срок доставки СДЭК?

Всё это реализуется в пару кликов в интерфейсе Salesbeat.
Интеграция Salesbeat в товарную карточку
Для интеграции виджета Salesbeat (см. пример) в товарную карточку нужно подключить наш JavaScript код и вызвать один JavaScript метод SB.init, передав в него несколько параметров — API токен, вес товара, цену.
<script src="https://app.salesbeat.pro/static/widget/js/widget.js" charset="UTF-8"></script>
<script> 
    SB.init({
        token: 'your API token',
        price_to_pay: 5000,
        price_insurance: 5000,
        weight: 200,
        x: 20,
        y: 10,
        z: 3,
        city_by: 'ip',
        params_by: 'params',
        main_div_id: 'salesbeat-deliveries-1',
        callback: function(){
            console.log('Salesbeat is ready!');
        }
    });
</script>
Обратите внимание, что в init функцию необходимо передать следующие параметры:

  • token — API токен магазина
  • price_to_pay — сумма наложенного платежа в рублях
  • price_insurance — объявленная стоимость для страховки в рублях
  • weight — вес в г
  • x, y, z — опционально (но желательно) размеры в см. Если размеры не переданы, будет считаться, что размеры подходят для минимального тарифа.
  • city_by — строковое значение "ip", если город посетителя необходимо определить автоматически по его IP адресу, или "city_code", если идентификатор города передаётся вручную в виджет в отдельном параметре city_code
  • params_by — принимает строковое значение "params", если вес и размеры товара передаются в отдельных параметрах weight, x, y, z; или "product_id", если в систему загружены продукты с проставленными размерами и весами, тогда вместо явной передачи размеров и веса в виджет можно передать только идентификатор (артикул) продукта в отдельном параметре product_id.
  • callback — опциональная JavaScript функция, которая вызовется после добавления виджета на страницу. Может быть использован, если изначально виджет скрыт и по нажатию на какой-то элемент на странице (ссылка «доставка») нужно инициализировать виджет и отобразить div с ним
  • main_div_id — идентификатор div элемента, в который вставится виджет. Сам div элемент с данным идентификатором необходимо вставить в HTML код страницы в нужном месте, куда планируется добавление виджета:
<div id="salesbeat-deliveries-1" class="salesbeat-deliveries"></div>
Вот и виджет готов! А если вы хотите изменить его внешний вид, настройте его с помощью конфигуратора здесь, там же в расширенных настройках можно ввести необходимые CSS параметры для изменения дизайна виджета.
Интеграция Salesbeat в корзину
Для установки нужно подключить два скрипта и вставить в код страницы элемент div с id="sb-cart-widget". Для отображения виджета необходимо вызвать функцию SB.init_card(params). После того, как пользователь выберет способ доставки или пункт самовывоза – вызовется JS функция callback, которая передаётся в params.

<!-- BEGIN SALESBEAT CART-WIDGET -->
<script src="https://app.salesbeat.pro/static/widget/js/widget.js"></script>
<script src="https://app.salesbeat.pro/static/widget/js/cart_widget.js"></script>
<script>
   SB.init_cart({
           token: 'your API token',
           city_by: 'city_code',
           city_code: '8f9faad4-ff93-471d-b0c0-c8e5c0162dee',
           products: [{price_to_pay: 1400, price_insurance: 1400, weight: 200},
                      {price_to_pay: 3440, price_insurance: 3440, weight: 500}],
           callback: function(data) {
                   console.log('Клиент выбрал доставку:', data)
           }
   })
</script>
<!-- END SALESBEAT CART-WIDGET -->
Поля аргумента params (Object):
  • token – String, токен магазина (доступен в ЛК)
  • city_by – String, возможные варианты – 'city_code', 'ip':
    • при 'city_code' необходимо передать ФИАС-код города полем city_code,
    • при 'ip' город определится по IP-адресу
  • products – Array, элементами которого являются параметры товаров:
    элементы массива представляют собой Object с ключами:
    • price_to_pay: Number, стоимость к оплате за товар (наложенный платеж), в руб.
    • price_insurance: Number, стоимость страховки (оценочная стоимость), в руб.
    • weight: Number, вес, в граммах
    • x: Number, длина, в см
    • y: Number, высота, в см
    • z: Number, ширина, в см
      пример:
      [{price_to_pay: 1400, price_insurance: 2222, weight: 5000, x: 40, y: 20, z: 50}, ...]
  • callback – функция, принимающая выбранный способ доставки:
    принимает один аргумент – data:
    • при выборе доставки самовывозом имеет вид:
      {
      ⠀⠀delivery_days: "4", // Срок доставки (дней)
      ⠀⠀delivery_price: "446", // Стоимость доставки (рублей)
      ⠀⠀delivery_method_id: "pickpoint_pvz", // Код способа доставки
      ⠀⠀delivery_method_name: "Постоматы Pickpoint", // Название способа доставки
      ⠀⠀pvz_address: "Билимбаевская ул., д. 28", // Адрес пункта выдачи заказов
      ⠀⠀pvz_id: "6605-008", // Идентификатор пункта выдачи заказов (в рамках службы доставки)
      ⠀⠀city_code: "2763c110-cb8b-416a-9dac-ad28a55b4402" // ФИАС код выбранного города
      }
    • при курьерской или почтовой доставке:
      {
      ⠀⠀comment: "", // Комментарий к адресу
      ⠀⠀delivery_days: "3",
      ⠀⠀delivery_price: "635",
      ⠀⠀delivery_method_id: "sdek_courier",
      ⠀⠀delivery_method_name: "СДЭК курьерская доставка",
      ⠀⠀flat: "111", // Номер квартиры
      ⠀⠀house_block: "2", // Корпус
      ⠀⠀house: "14", // Номер дома
      ⠀⠀index: "114771 ", // Почтовый индекс
      ⠀⠀street: "Добровольского",
      ⠀⠀city_code: "2763c110-cb8b-416a-9dac-ad28a55b4402"
      }
Воу-воу, сложно!
Есть вопросы? Напишите нам — hi@salesbeat.pro, мы оперативно поможем или, если необходимо, сами всё настроим на Вашем сайте, это бесплатно.
API
Максимум гибкости и свободы
Конечно же, у нас есть простой REST API, позволяющий получать на сервере или напрямую на веб-странице всю информацию о службах доставки, сроках и стоимости доставки, пунктах самовывоза, созданных в Salesbeat правилах расчёта сроков и стоимости доставки.

Мы постарались сделать наше API максимально простым удобным. Вся документация по API с примерами использования находится здесь:

https://app.salesbeat.pro/static/docs/salesbeat.pdf
Made on
Tilda