Как настроить скрипт передачи заказов в KeyCRM через API

Если у нас еще нет интеграции с каким-то сервисом, то вы можете получать заказы по API, ниже опишем все пошагово
Автор Александра Дубейко
Обновлено 7 месяцев назад

Настройка в KeyCRM

Для начала нам нужно создать в CRM новый источник заказов для этого переходим в Настройки → Источники и нажимаем на кнопку “Добавить источник”.

 

Заполняем поля:

  • Название - это название сайта, которое будет отображаться в KeyCRM, совсем не обязательно, чтобы оно совпадало с доменом. Это просто удобное для понимания название, которое будут использовать ваши сотрудники;
  • Источник выбираем “Другое”;
  • Менеджер - не обязательное поле. Для того, чтобы все заказы, пришедшие с этого источника автоматически присваивались на определенного сотрудника. Это поле можно заполнить позже;
  • Валюта - выбираем валюту, в которой приходят заказы с данного лендинга

После заполнения нажимаем кнопку “Добавить”.

 

Действия на хостинге, где находится сайт

Для подключения нам подойдет любая форма, сейчас мы рассмотрим на самом простом примере, когда продаем 1 товар,  указывается имя, e-mail, телефон покупателя и адрес доставки, нам нужно указать какие параметры передавать CRM. 

$data = [
      "source_id" => 22, // в какой источник в KeyCRM добавлять заказы
      "buyer" => [
            "full_name"=> $_POST['name'], // ФИО покупателя
            "email"=> $_POST['email'], // email покупателя
            "phone"=> $_POST['phone'] // номер телефона покупателя
      ],
      "shipping" => [
          "shipping_address_city"=> $_POST['address_city'], // город покупателя
          "shipping_receive_point"=> $_POST['address_street'], // улица, номер дома или отделение Новой Почты
          "shipping_address_country"=> $_POST['address_country'], // страна
          "shipping_address_region"=> $_POST['address_region'], // область/штат/регион
          "shipping_address_zip"=> $_POST['address_zip'] // индекс
      ],
      "products"=> [
            [
                "price"=> $_POST['product_price'], // цена продажи
                "quantity"=> 1, // количество проданного товара
                "name"=> $_POST['product_name'], // название товара
                "picture"=> $_POST['product_url'], // картинка товара
                "properties"=>[
                [
                    "name"=> "Color",
                    "value"=> "Space Gray"
                ]
              ]
          ]
      ]
];

source_id” - id  источника в CRM (раньше добавляли).

Более детально какую информацию нужно передавать можете изучить в документации API https://docs.keycrm.app

Ниже мы указываем цену, количество, название, фото и свойства товара. В данном случае так как товар у нас 1, мы его жестко прописали, но и эти параметры тоже можно сделать динамическими как мы сделали с именем, e-mail’ом, телефоном покупателя и адресом доставки. 

Далее готовим наши данные для отправки и отправляем на сервер:

//  "упаковываем данные"
$data_string = json_encode($data);

// Ваш уникальный API ключ KeyCRM
$token = 'Ваш API ключ';

// отправляем на сервер
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://openapi.keycrm.app/v1/order");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
        "Content-type: application/json",
        "Accept: application/json",
        "Cache-Control: no-cache",
        "Pragma: no-cache",
        'Authorization:  Bearer ' . $token)
);
$result = curl_exec($ch);
curl_close($ch);

API-ключ можно найти в основных настройках акаунта KeyCRM.

Результат работы

Заходим на сайт, заполняем тестовый заказ и смотрим, что происходит у нас в KeyCRM - пришел новый заказ, данные с полей без проблем подтянулись:

Внимание! Ограничение по количеству запросов нашего API — 60 запросов в минуту.

Добавляйте все свои сайты и отслеживайте заказы через KeyCRM.

 Теги: api, апи, арі, фзш. 
Оцените эту статью