Битрикс24 API СРМ – создание компании и создание контакта

01.05.2019

Создание компании на АПИ Битрикс24 не такое уж и простое дело. Это не одна функция добавления. 

Здесь также требуется добавить контактный телефон и email, добавить контактное лицо или несколько контактных лиц, добавить реквизиты юрлица, к ним прикрепить юридический и фактический адрес, добавить банковские реквизиты компании.

Об этом я вам сейчас и расскажу. 

Собираем массив данных компании. Единственное поле является обязательным – это название. Но при создании компании через АПИ также необходимо указать ответственного.

Эти же поля вы можете увидеть, заглянув на страницу в админке: Монитор производительности - Таблицы - таблица b_crm_company. 

$arNewCompany= array(
"TITLE" =>"Название компании - обязательное поле", 
'ASSIGNED_BY_ID'=>"Ид ответственного сотрудника",
"OPENED"=>"Y" /*признак, что компанию могут видеть другие сотрудники с правами менеджера*/
"ADDRESS"=>"Устаревшее поле адреса", /* не используется в новом дизайне, так же как ADDRESS_LEGAL, BANKING_DETAILS*/
"COMPANY_TYPE"=> "CUSTOMER"
);

Чтобы указать телефон компании и Email к этому массиву добавляем массив такого вида:

$arNewCompany['FM']['PHONE'] = array(
   'n0' => array(
'VALUE_TYPE' => 'WORK',
'VALUE' => "номер телефона",
   )
  );

$arNewCompany['FM']['EMAIL'] = array(
   'n0' => array(
'VALUE_TYPE' => 'WORK',
'VALUE' => "адрес email",
   )
  );

компания.png

Подключаем модуль СРМ, создаем объект класса CCrmCompany и добавляем компанию.

Bitrix\Main\Loader::IncludeModule('crm');
$company=new CCrmCompany();
$companyID=$company->Add($arNewCompany);

Итак, компанию с телефоном и email мы добавили. 

Как добавить компании контактные лица? 

Их надо создать и у них указать компанию.

контакт.png

Собираем массив контакта.

$arNewContact=array(
"NAME"=>"Имя",
"LAST_NAME"=>"Фамилия",
"COMPANY_ID"=>$companyID, /* ил нашей созданной компании*/
'ASSIGNED_BY_ID'=>"Ид ответственного сотрудника",
"POST"=>"Должность"
);

$arNewContact['FM']['PHONE'] = array(
   'n0' => array(
'VALUE_TYPE' => 'WORK',
'VALUE' =>  "номер телефона",
   )
  );

$arNewContact['FM']['EMAIL'] = array(
   'n0' => array(
'VALUE_TYPE' => 'WORK',
'VALUE' => "адрес email",
   )
);

$contact=new CCrmContact();
$contactID=$contact->Add($arNewContact);

Далее, как добавить реквизит юрлица для компании:

реквизит.png

$requisiteFields=array(
"ENTITY_TYPE_ID"=>4, /*реквизит для компании*/
"ENTITY_ID"=>$companyID, /* ид нашей созданной компании*/
"NAME"=>"Организация",
"PRESET_ID"=>2,
"RQ_NAME"=>"Название реквизита",
"RQ_COMPANY_NAME"=>"Название компании",
"RQ_COMPANY_FULL_NAME"=>"Официальное название компании",
"RQ_INN" =>"ИНН компании",
"RQ_KPP" =>"КПП компании",
);

И сразу создаем юридический адрес

юрадрес.png

$requisiteFields["RQ_ADDR"]["1"] = array(
"ADDRESS_1" => "улица дом",
"ADDRESS_2" =>  "Квартира",
"CITY" =>  "Город",
"REGION" =>  "Регион",
"PROVINCE" =>  "Область",
"POSTAL_CODE" =>  "Индекс",
"COUNTRY" => "Страна",
);

И добавляем реквизит компании на bitrix API d7:

 $requisiteEntity = new Bitrix\Crm\EntityRequisite();
$resultRequisit = $requisiteEntity->add($requisiteFields);
$requisitID = $resultRequisit->GetID();

Далее, как добавить банковские реквизиты компании:

банкреквизит.png

$bankDetailFields = array(
"NAME" => "Банковские реквизиты",
"ENTITY_TYPE_ID" => 8,
"ENTITY_ID" => $requisitID, /*ид нашего реквизита юрлица*/
"COUNTRY_ID" => 1,  /*Россия*/
"RQ_BANK_NAME" =>"Название банка",
"RQ_BIK" => "БИК",
"RQ_ACC_NUM" => "расчетный счет",
"RQ_COR_ACC_NUM" => "корсчет",
"RQ_BANK_ADDR" => "адрес банка и город"
);

$bankDetail = new \Bitrix\Crm\EntityBankDetail();
$ok = $bankDetail->checkBeforeAdd($bankDetailFields); /*проверка реквизитов*/
if($ok){
$resultBank = $bankDetail->add($bankDetailFields);
}

Возврат к списку


Материалы по теме: