Интеграция с HubSpot CRM
- Введение
- Настройка HubSpot CRM с помощью HubSpot CLI
- Шаг 1: Определите URL-адрес перенаправления (Redirect URL) 3CX OAuth
- Шаг 2: Установите HubSpot CLI
- Шаг 3: Войдите в HubSpot через CLI
- Шаг 4: Создайте проект HubSpot OAuth
- Шаг 5: Настройте OAuth и необходимые области видимости (scopes) для 3CX
- Шаг 6: Проверьте и загрузите проект в HubSpot
- Шаг 7: Получите Client ID и Client Secret в HubSpot
- Шаг 8: Добавьте дополнительные учетные записи HubSpot CRM в приватное приложение OAuth (Опционально)
- Настройка и авторизация HubSpot в 3CX
- Настройка контактов в формате E164 и Caller ID
- Настройка журналирования вызовов и чатов, включая транскрипцию
- Дополнительная информация
Введение
3CX предлагает интеграцию с HubSpot через 3CX CRM API. Интеграция реализует следующие возможности:
- Поиск контакта по Caller ID - входящий звонок инициирует поиск контакта в HubSpot.
- Поиск контактов в HubSpot по имени, номеру или e-mail, когда пользователь 3CX ищет контакт в веб-клиенте.
- Журнал вызовов и чатов - вызовы и чаты регистрируются в карточке контакта HubSpot как история взаимодействия с клиентом.
- Создание нового контакта HubSpot из клиента 3CX, когда вызов поступил с Caller ID, которого нет в базе данных.
- Click to Call - звонки из HubSpot через 3CX с помощью браузерного расширения 3CX Click2Call для Google Chrome и Microsoft Edge.
Настройка HubSpot CRM с помощью HubSpot CLI
HubSpot прекратил создание новых устаревших публичных приложений (legacy Public Apps) через интерфейс Developer Platform. Новые приложения HubSpot теперь должны создаваться с использованием платформы HubSpot Projects и интерфейса командной строки HubSpot CLI.
В этом руководстве объясняется, как создать приложение HubSpot OAuth, необходимое для интеграции 3CX с HubSpot CRM.
Примечание: Существующие устаревшие публичные приложения (legacy Public Apps) продолжают работать.
Шаг 1: Определите URL-адрес перенаправления (Redirect URL) 3CX OAuth
Перед созданием проекта в HubSpot определите публичный URL-адрес, используемый для доступа к системе 3CX.
Например, если доступ к консоли администратора 3CX осуществляется по адресу:
https://mypbx.3cx-example.com
...тогда URL-адрес перенаправления HubSpot OAuth должен быть:
https://mypbx.3cx-example.com/api/oauth2crm
Шаг 2: Установите HubSpot CLI
HubSpot CLI — это приложение Node.js, поэтому сначала необходимо установить Node.js с npm.
Для HubSpot CLI 8 требуется Node.js 20 или новее.
- Откройте новую командную строку (Command Prompt).
- В командной строке выполните:
npm install -g @hubspot/cli@latest
- По завершении установки проверьте версию HubSpot CLI:
hs --version
- Должна отобразиться версия HubSpot CLI.
Шаг 3: Войдите в HubSpot через CLI
- В командной строке выполните:
hs account auth
CLI поможет вам пройти аутентификацию в вашей учетной записи HubSpot. Следуйте подсказкам:
- Дайте учетной записи HubSpot узнаваемое локальное имя, если это будет предложено.
- Откроется окно браузера, или CLI отобразит инструкции по открытию HubSpot.
- Войдите в учетную запись HubSpot, в которой будет создаваться проект/приложение.
- Сгенерируйте запрошенный персональный ключ доступа (Personal Access Key).
- Ключ должен быть автоматически возвращен в окно терминала.
- Если CLI попросит вас вставить персональный ключ доступа в терминал, вставьте его и нажмите Enter.
- Введите имя учетной записи при появлении соответствующего запроса.
- Если вас спросят, должна ли эта учетная запись использоваться по умолчанию, выберите Yes (Да).
Шаг 4: Создайте проект HubSpot OAuth
- В командной строке
- Создайте папку проекта, например:
mkdir C:\HubSpotProjects
cd /d C:\HubSpotProjects
- В этой папке выполните:
hs project create --project-base app --distribution private --auth oauth
- CLI запросит дополнительную информацию.
- Имя проекта, например: "3CX HubSpot Integration"
- Локальная папка, оставьте по умолчанию или используйте что-то простое, например: "3cx-hubspot"
- Функции (Features)
- Сама интеграция с 3CX CRM не требует карточки приложения HubSpot (App Card), вебхука, действия рабочего процесса, страницы настроек или других функций проекта. Если CLI предложит выбрать функции, оставьте все функции не выбранными и продолжите, нажав Enter.
- После завершения выполнения команды должна появиться новая директория, например:
"C:\HubSpotProjects\3cx-hubspot" - Перейдите в эту директорию:
cd /d C:\HubSpotProjects\3cx-hubspot
- Среди важных файлов должны быть:
C:\HubSpotProjects\3cx-hubspot\hsproject.json
C:\HubSpotProjects\3cx-hubspot\src\app\app-hsmeta.json
Шаг 5: Настройте OAuth и необходимые области видимости (scopes) для 3CX
Откройте следующий файл в Блокноте (Notepad): "C:\HubSpotProjects\3cx-hubspot\src\app\app-hsmeta.json".
Сгенерированный файл может содержать дополнительные свойства, которые можно проигнорировать; важным разделом является конфигурация приложения (config) и, в частности, раздел auth.
Настройте приложение с вашим distribution, requiredScopes и redirectUrls как показано ниже, заменив "https://pbx.example.com/api/oauth2crm" на фактический публичный URL-адрес 3CX, определенный на Шаге 1.
{
"uid": "3CXHubSpotIntegration_app",
"type": "app",
"config": {
"description": "OAuth application for the 3CX HubSpot CRM integration",
"name": "3CX HubSpot Integration-App",
"distribution": "private",
"auth": {
"type": "oauth",
"redirectUrls": [
"https://pbx.example.com/api/oauth2crm"
],
"requiredScopes": [
"oath",
"crm.objects.contacts.read",
"crm.objects.contacts.write",
"crm.objects.companies.read",
"crm.objects.owners.read",
"timeline"
],
"optionalScopes": [],
"conditionallyRequiredScopes": []
},
"permittedUrls": {
"fetch": [
"https://api.hubapi.com"
],
"iframe": [],
"img": []
},
"support": {
"supportEmail": "[email protected]",
"documentationUrl": "https://example.com/docs",
"supportUrl": "https://example.com/support",
"supportPhone": "+18005555555"
}
}
}
Шаг 6: Проверьте и загрузите проект в HubSpot
- Из директории проекта выполните:
hs project validate
- Если проверка прошла успешно, продолжайте.
- Если проверка сообщает об ошибке, исправьте указанное свойство JSON и снова выполните команду.
- Затем выполните:
hs project upload
- При первой загрузке проекта HubSpot может отобразить сообщение, похожее на:
- “The project does not exist in this account. Would you like to create it?" (Проект не существует в этой учетной записи. Хотите ли вы его создать?)
- Ответьте "Y" и продолжите.
- CLI выполнит следующие действия:
- загрузит файлы
- создаст сборку (build) HubSpot
- развернет приложение
Шаг 7: Получите Client ID и Client Secret в HubSpot
- В браузере войдите в HubSpot и перейдите в Development > Projects.
- Откройте 3CX HubSpot Integration (или имя проекта, которое вы создали).
- В разделе Project Components выберите имя приложения.
- Откройте вкладку Auth.
- HubSpot отобразит следующие учетные данные клиента (Client credentials):
- Client ID
- Client secret
- Скопируйте оба значения в надежное место.
Шаг 8: Добавьте дополнительные учетные записи HubSpot CRM в приватное приложение OAuth (Опционально)
Это важный новый шаг по сравнению со старой процедурой использования публичных приложений (Public App).
Поскольку проект был создан с параметром "distribution": "private", HubSpot разрешает авторизацию OAuth только для тех учетных записей, которые были явно одобрены. По умолчанию доступ имеет только учетная запись, создавшая приложение ("private").
В HubSpot:
- Откройте Development (Разработка).
- Откройте Projects (Проекты).
- Откройте проект 3CX.
- В разделе Project Components выберите приложение 3CX.
- Откройте вкладку Distribution.
- Нажмите Add approved account(s).
- В разделе доступных рабочих учетных записей выберите учетную запись HubSpot CRM, которая содержит контакты и компании, которые будут интегрированы с 3CX.
- Если ваш логин в HubSpot имеет доступ как к учетной записи разработчика, так и к обычной учетной записи CRM компании, убедитесь, что одобрена именно учетная запись CRM, содержащая реальные данные клиентов.
- Нажмите Save changes.
Настройка и авторизация HubSpot в 3CX
- В консоли администратора 3CX перейдите в раздел "Integrations" > "CRM"
- Выберите "HubSpot" из выпадающего списка
- Выберите желаемый порядок поиска контактов (Contact Lookup Order)
- Введите ранее скопированные значения OAuth из вашего приложения для полей "Client ID" и "Client Secret"
- Нажмите Save
- Нажмите Authorize
- Должна открыться страница авторизации HubSpot.
- Войдите в HubSpot, если потребуется.
- Выберите учетную запись HubSpot CRM, содержащую контакты и компании, которые должны использоваться системой 3CX.
- Просмотрите запрошенные разрешения.
- HubSpot может предупредить, что приложение не проверено (unverified). Это нормально для приложения, созданного для вашей собственной учетной записи и не отправленного в HubSpot Marketplace.
- Подтвердите установку/авторизацию.
- Теперь 3CX получает код авторизации OAuth и обменивает его на токены HubSpot OAuth.
- Убедитесь, что поле "Refresh Token" автоматически заполнено для HubSpot CRM в консоли администратора 3CX.
- Если вы хотите включить создание контактов из клиента 3CX, установите этот флажок. Если номер звонящего не совпадает ни с одним контактом, клиент 3CX позволит пользователю создать контакт, заполнив данные в диалоговом окне.
Настройка контактов в формате E164 и Caller ID
- Для успешного поиска совпадений в HubSpot, входящий Caller ID должен быть идентичен записи в CRM, включая любой префикс, так как HubSpot выполняет поиск по всему номеру. Поиск в HubSpot по части номера не вернет никаких данных.
- Чтобы интеграция с HubSpot работала, вы должны сохранять номера в HubSpot в формате E164, и ваш SIP-транк также должен предоставлять номер звонящего в формате E164, чтобы оба значения совпадали. В противном случае вы можете использовать переформатирование Caller ID для настройки номера звонящего перед его передачей в CRM.
- Теперь перейдите в раздел System > Phonebook > Options, установите стратегию поиска совпадений на "Match exactly" и нажмите "OK".
Настройка журналирования вызовов и чатов, включая транскрипцию
- Чтобы передавать отчеты о внешних вызовах и чатах в HubSpot, адрес электронной почты, настроенный для добавочного номера 3CX, должен совпадать с адресом электронной почты пользователя HubSpot. Таким образом 3CX может сопоставить добавочный номер 3CX, получающий вызов или чат, с пользователем HubSpot.
- Установите флажок "Enable Call Journaling", чтобы передавать информацию о внешних вызовах в CRM, и настройте следующие параметры "Call Journaling":
- Call Subject - тема вызова.
- Answered Inbound Call - описание для отвеченных входящих вызовов.
- Missed Call - описание для пропущенных вызовов.
- Answered Outbound Call - описание для отвеченных исходящих вызовов.
- Unanswered Outbound Call - описание для неотвеченных исходящих вызовов.
- Обратите внимание, что вы можете использовать переменные в параметрах "Call Journaling", обозначаемые как [variable_name], например, внешний номер указывается как[Number]. Доступные для использования переменные перечислены здесь.
- Если вы хотите передавать информацию о чатах в CRM, установите флажок Enable Chat Journaling и настройте параметры ниже:
- Chat Subject - тема сессии чата.
- Обратите внимание, что в параметрах "Chat Journaling" можно использовать переменные, обозначаемые как [variable_name]. Например, внешний номер указывается как[Number]. Доступные переменные приведены здесь.
Дополнительная информация
- Интеграция с любой CRM через 3CX API.
- Интеграция с CRM Bitrix24.
- Интеграция с CRM ConnectWise.
- Интеграция с Microsoft 365.
- Интеграция с CRM Jetpack CRM
- Интеграция с CRM Salesforce.
- Интеграция с CRM Zoho.
Версия документа
Последнее обновление документа 21 августа 2026
