﻿# Модуль интеграции с DaData

> [HTML Version](dadata.html)

Интеграция с сервисом [DaData](https://dadata.ru/) позволяет ускорить заполнение форм и проверить введённые данные. 

Для этого в системе устанавливается модуль. После его подключения в [дизайнере интерфейсов](interface_designer.md) будут доступны специальные виджеты. На страницах и формах приложений они отображаются в виде строки поиска и полей с данными. 

Когда пользователь начинает вводить значения в эти поля, из DaData поступают подсказки. Сотрудник выбирает подходящий вариант, чтобы быстро заполнить поле.

Виджеты, входящие в модуль: 

- [Поиск компании](https://dadata.ru/api/suggest/party/) — помогает пользователю быстро ввести реквизиты организации. Находит компанию или индивидуального предпринимателя по ИНН, КПП, ОГРН. Возвращает реквизиты компании, руководителей и другую информацию о компании;

- [Поиск банка](https://dadata.ru/api/suggest/bank/) — помогает быстро ввести реквизиты банка. Находит банк по любому из идентификаторов: БИК, SWIFT, ИНН, ИНН + КПП (для филиалов) или регистрационному номеру Банка России. Возвращает реквизиты банка, корр. счёт, адрес и статус — действующий или на ликвидации;

- [Проверка паспорта](https://dadata.ru/api/clean/passport/) — проверяет паспорт по справочнику недействительных паспортов МВД. [Заполняет организацию](https://dadata.ru/api/suggest/fms_unit/), выдавшую паспорт, по коду подразделения;

- [Проверка e-mail](https://dadata.ru/api/clean/email/) — проверяет на одноразовый адрес. Классифицирует адреса на личные (**@mail.ru**, **@yandex.ru**), корпоративные (**@companyname.com**) и ролевые (**info@**, **support@**). Помогает пользователю [быстро ввести адрес электронной почты](https://dadata.ru/api/suggest/email/);

- [Поиск адреса](https://dadata.ru/api/suggest/address/) — помогает быстро ввести корректный адрес. Разбивает адрес из строки по отдельным полям (регион, город, улица, дом, квартира) согласно КЛАДР/ФИАС (ГАР). Определяет почтовый индекс, часовой пояс, ближайшее метро, координаты, стоимость квартиры и другую информацию об адресе.

## Настроить модуль 

1. Убедитесь, что ваш аккаунт в DaData активен.

2. Зайдите в [личный кабинет](https://dadata.ru/profile/#info) вашего аккаунта DaData и скопируйте** API-ключ** и **Секретный ключ**.

3. Перейдите в ELMA365. На главной странице в левом меню нажмите на значок (settings_icon.png). В открывшемся окне **Настройка разделов и Решений** перейдите на вкладку **Решения**. 

4. Нажмите кнопку **+Добавить решение** и выберите опцию **Скачать**. 

5. В каталоге [ELMA365 Store](https://store.elma365.ru/component/integraciya_s_dadata-179) установите модуль **Интеграция с DaData**. 

6. После успешной установки перейдите в **Администрирование > Модули > Интеграция с DaData**. 

7. На странице модуля заполните поля:

(dadata-1.png)

- **API ключ DaData** — вставьте скопированный из личного кабинета DaData API-ключ;

- **Секретный ключ DaData** — укажите скопированный из личного кабинета DaData секретный ключ.  
  
Ключ используется в запросах, которые определяют недействительные паспорта по справочнику МВД и одноразовые электронные адреса. Сервисы для выполнения этих проверок активируются отдельно. Подробнее читайте на [официальном сайте DaData](https://dadata.ru/pricing/#metered);

- **Минимальное количество символов** — определите, сколько символов нужно ввести пользователю на форме, чтобы увидеть подсказки из сервиса DaData. Чем больше заданное в настройках число, тем точнее будет выдача подсказок по запросу. По умолчанию установлено — **3**. Минимальное значение — один;

- **Время ожидания ввода** — укажите, через сколько миллисекунд после начала заполнения поля в виджете отобразятся подсказки из DaData. Таким образом предотвращается отправка лишних запросов и оптимизируется работа модуля.  
  
По умолчанию установлено значение **300**. При нулевом значении запрос на получение подсказок из DaData отправляется сразу, как только пользователь введёт минимальное количество символов в поле формы.

8. Нажмите кнопку **Проверить подключение**. Если связь между системами установлена, вы увидите уведомление об этом. 

9. Нажмите кнопку **Сохранить**.

## Настройка виджетов 

После подключения модуля DaData пользователи из группы [Администраторы](360006871932.md#administrators) могут добавить входящие в модуль виджеты на страницы и формы приложений. 

Например, в разделе [CRM](360012584940.md) на формы создания и редактирования приложения [Компании](360012584980.md) можно добавить виджеты **Поиск компании** и **Поиск банка**. А на формы приложения [Контакты](360012584960.md) — виджеты **Проверка паспорта**, **Проверка e-mail** и **Поиск адреса**.

Чтобы разместить виджет на форме, перейдите в [дизайнер интерфейсов](interface_designer.md). Перетащите виджет с правой панели дизайнера на поле для моделирования или нажмите кнопку **+Виджет**. Подробнее о добавлении виджетов читайте в статье [«Шаблон формы»](360029250931.md). 

Откроется окно настроек, которое состоит из двух вкладок: 

- **Вкладка «Основные»** — индивидуальна для каждого виджета. Содержит параметры, отвечающие за работу и внешний вид виджета; 

- **Вкладка «Системные»** — настройки одинаковы для всех виджетов. Позволяют управлять видимостью виджетов и доступом к ним, настраивать их поведение при наведении курсора и т. д. Подробнее можно прочитать в статье [«Системные настройки виджетов»](common_widget_settings.md).

### Виджет «Поиск компании»

(dadata-2.png)

1. При необходимости отредактируйте заголовок, который отображается над строкой поиска, и текст подсказки, который отображается под строкой. 

2. В поле **Показать полученные данные **выберите **Да**, чтобы на форме отображались все поля, которые автоматически заполняются значениями, полученными из сервиса DaData. По умолчанию параметр установлен в положение **Нет**, и на форме отображается только строка поиска компании. 

3. Остальные поля автоматически заполняются данными из сервиса DaData. Их необходимо связать со свойствами приложения. Для этого нажмите на значок (instruction_2.png) справа от названия поля, затем на ссылку **<Не установлено>**. В открывшемся списке выберите соответствующее свойство приложения. 

4. Для завершения настройки виджета нажмите кнопку **Сохранить**, а затем **Опубликовать** на верхней панели дизайнера интерфейсов. 

5. После этого откройте настроенную форму и начните вводить данные в строку поиска. В открывшемся списке компаний выберите нужную и убедитесь, что сервис DaData возвращает данные по компании: ИНН, КПП, ОГРН и другие реквизиты.

(dadata-3.png)

### Виджет «Поиск банка»

(dadata-4.png)

1. При необходимости отредактируйте заголовок, который отображается над строкой поиска, и текст подсказки, который отображается под строкой. 

2. В поле **Показать полученные данные** выберите **Да**, чтобы на форме отображались все поля, которые автоматически заполняются значениями, полученными из сервиса DaData. По умолчанию параметр установлен в положение **Нет**, и на форме отображается только строка поиска банка. 

3. Остальные поля автоматически заполняются данными из сервиса DaData. Их необходимо связать со свойствами приложения. Для этого нажмите на значок (instruction_2.png) справа от названия поля, затем на ссылку **<Не установлено>**. В открывшемся списке выберите соответствующее свойство приложения. 

4. Для завершения настройки виджета нажмите кнопку **Сохранить**, а затем **Опубликовать** на верхней панели дизайнера интерфейсов. 

5. После этого откройте настроенную форму и начните вводить данные в строку поиска банка. В открывшемся списке кредитных организаций выберите нужную и убедитесь, что сервис DaData возвращает данные: БИК, ИНН, КПП и другие реквизиты.

(dadata-5.png)

### Виджет «Проверка паспорта»

(dadata-6.png)

1. Отметьте поле **Серия и номер паспорта** обязательным для заполнения. 

2. В поле **Показать полученные данные** выберите **Да**, чтобы на форме отображались все поля, которые автоматически заполняются значениями, полученными из сервиса DaData. По умолчанию параметр установлен в положение **Нет**, и на форме отображаются только поле для ввода серии и номера паспорта, а также кода подразделения, выдавшего паспорт.  

3. Остальные поля автоматически заполняются данными из сервиса DaData. Их необходимо связать со свойствами приложения. Для этого нажмите на значок (instruction_2.png) справа от названия поля, затем на ссылку **<Не установлено>**. В открывшемся списке выберите соответствующее свойство приложения. 

4. Для завершения настройки виджета нажмите кнопку **Сохранить**, а затем **Опубликовать** на верхней панели дизайнера интерфейсов. 

5. После этого откройте настроенную форму и введите серию и номер паспорта. Если в настройках модуля указаны действующие **API-ключ** и **Секретный ключ**, в сервисе DaData произойдёт [проверка паспорта по справочнику недействительных паспортов МВД](https://dadata.ru/api/clean/passport/). Результат проверки отобразится на форме. 

6. В поле **Код подразделения** начните вводить данные. В открывшемся списке выберите нужное подразделение.

(dadata-8.png)

### Виджет «Проверка e-mail»

(dadata-9.png)

1. При необходимости измените настройки отображения строки ввода e-mail: отредактируйте заголовок строки и текст подсказки к ней. 

2. Отметьте поле **e-mail** обязательным для заполнения. 

3. В поле **Показать полученные данные** выберите **Да**, чтобы на форме отображалось поле **Тип адреса**. 

4. Поля **e-mail** и **Тип адреса** необходимо связать со свойствами приложения. Для этого нажмите на значок (instruction_2.png) справа от названия поля, затем на ссылку **<Не установлено>**. В открывшемся списке выберите соответствующее свойство приложения. 

5. Для завершения настройки виджета нажмите кнопку **Сохранить**, а затем **Опубликовать** на верхней панели дизайнера интерфейсов. 

6. После этого откройте настроенную форму и начните вводить e-mail. После ввода символа «@» появится выпадающий список адресов с почтовыми доменами. Выберите нужный.

Если в настройках модуля указаны действующие **API-ключ** и **Секретный ключ**, после выбора e-mail в сервисе DaData произойдёт проверка типа электронной почты. Возможные типы: личный, корпоративный, ролевой, одноразовый или некорректный. Результат проверки отобразится на форме.   
Также произвести проверку можно, нажав кнопку **Проверить e-mail**. 

(dadata-10.png)

### Виджет «Поиск адреса»

(dadata-11.png)

1. При необходимости измените заголовок строки поиска адреса и текст подсказки к ней. 

2. В отличие от других виджетов модуля, в виджете **Поиск адреса** доступны дополнительные параметры поиска. Пользователи могут искать адрес, указав широту, долготу, радиус поиска, страну и т. д. Чтобы отобразить дополнительные параметры на форме, в поле **Показать параметры поиска** выберите **Да**. 

(dadata-12.png)

3. В поле **Показать полученные данные** выберите **Да**, чтобы на форме отображались все поля, которые автоматически заполняются значениями, полученными из сервиса DaData. По умолчанию параметр установлен в положение **Нет**, и на форме отображаются только строка поиска адреса. 

4. Остальные поля автоматически заполняются данными из сервиса DaData. Их необходимо связать со свойствами приложения. Для этого нажмите на значок (instruction_2.png) справа от названия поля, затем на ссылку **<Не установлено>**. В открывшемся списке выберите соответствующее свойство приложения. 

5. Для завершения настройки виджета нажмите кнопку **Сохранить**, а затем **Опубликовать** на верхней панели дизайнера интерфейсов. 

6. После этого откройте настроенную форму и начните вводить данные в строку поиска. В открывшемся списке адресов выберите нужный и убедитесь, что сервис DaData возвращает данные по нему.

(dadata-13.png)