Задать вопрос
@Alex1112

Интеграция товаров в сделке Битрикс24?

Пытаюсь добавить в кастомную интеграцию товары из заказа интернет магазина на 1с-битрикс в битрикс24(сделка)

Нашел данный код на просторах интернета, не работает, сделка создается, товар не добавляется.
В примерах документации также примеры не работаю. В чем моя ошибка и как можно закинуть в битрикс24 товар?

$defaults['TITLE'] = 'НАЗВАНИЕ ЛИДА';
$defaults['NAME'] = 'ТЕСТОВОЕ ИМЯ';
$defaults['LAST_NAME'] = 'ФАМИЛИЯ ТЕСТ';
$defaults['ASSIGNED_BY_ID'] = 1; //ОТВЕТСВЕННЫЙ
$defaults['PHONE'] = array(array("VALUE" => '434873248932', "VALUE_TYPE" => "WORK"));
$defaults['EMAIL'] = array(array("VALUE" => '43487@bk.ru', "VALUE_TYPE" => "WORK"));
$defaults['COMMENTS'] = 'ТЕСТОВЫЙ КОММЕНТАРИЙ';
//статисеский массив передаваемых товаров, заменить на массив содеражащий по каждому из товаров выбранных пользователем информацию о названии товара, цене за 1 единицу и количеству
$products_example = [
    [
        'PRODUCT_NAME' => 'Товар 1',
        'PRICE' => 100.00,
        'QUANTITY' => 3,
    ],
    [
        'PRODUCT_NAME' => 'Товар 2',
        'PRICE' => 200.00,
        'QUANTITY' => 13,
    ],
];
//строка обработчик которая будет выполнять добавление лида в Битрикс24
$queryUrl = 'https://битрикс/rest/1/ключ/crm.lead.add.json';
$queryData = http_build_query(array(
    'fields' => array(
        "TITLE" => $defaults['TITLE'], //поле "Название лида"
        "NAME" => $defaults['NAME'], //поле "Имя"
        "LAST_NAME" => $defaults['LAST_NAME'], //поле "Фамилия"
        "STATUS_ID" => "NEW", //не менять. все лиды должны попдать в этом статусе
        "OPENED" => "N", //этот параметр менять не нужно
        "ASSIGNED_BY_ID" => $defaults['ASSIGNED_BY_ID'], //Числовой идентификатор пользователя который будет назначен ответственным за лид. Можно узнать в Битрикс24
        "PHONE" => $defaults['PHONE'], //поле "Телефон"
        "EMAIL" => $defaults['EMAIL'], //поле "Email"
        "COMMENTS" => $defaults['COMMENTS'], //поле "Комментарий",
        "SOURCE_ID" => "WEB",
		"PRODUCT_ID"=>51,
    ),
    'params' => array("REGISTER_SONET_EVENT" => "Y")
));
$curl = curl_init();
curl_setopt_array($curl, array(
    CURLOPT_SSL_VERIFYPEER => 0,
    CURLOPT_POST => 1,
    CURLOPT_HEADER => 0,
    CURLOPT_RETURNTRANSFER => 1,
    CURLOPT_URL => $queryUrl,
    CURLOPT_POSTFIELDS => $queryData,
));
$result = curl_exec($curl);
curl_close($curl);
$result = json_decode($result, 1);
//строка обработчик для привязки заказанных товаров к лиду
$queryUrl = 'https://битрикс/rest/1/ключ/crm.lead.productrows.set.json';
$queryData = http_build_query(array(
    'id' => $result['result'],
    'rows' => $products_example,
));
$curl = curl_init();
curl_setopt_array($curl, array(
    CURLOPT_SSL_VERIFYPEER => 0,
    CURLOPT_POST => 1,
    CURLOPT_HEADER => 0,
    CURLOPT_RETURNTRANSFER => 1,
    CURLOPT_URL => $queryUrl,
    CURLOPT_POSTFIELDS => $queryData,
));
$result = curl_exec($curl);
curl_close($curl);
$result = json_decode($result, 1);
  • Вопрос задан
  • 1280 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
smartpixel
@smartpixel
Интеграция веб приложений с CRM, маркетплейсами
Добавьте в массив товара
[
'PRODUCT_ID' => 0,
'PRODUCT_NAME' => 'Товар 1',
'PRICE' => 100.00,
'QUANTITY' => 3,
],
Товар создается в лиде, при этом не обязательно знать его ID на стороне Битрикс 24.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы