Выгрузка данных из amoCRM в Excel: все способы + инструкции

Выгрузка данных из amoCRM в Excel — обязательный навык для аналитиков, менеджеров и владельцев бизнеса. Без этого невозможно построить отчёты вне системы, проанализировать исторические данные или перенести информацию в другие сервисы. Однако не все пользователи знают, что в amoCRM есть сразу 5 способов экспорта — от ручного сохранения таблиц до автоматизированной выгрузки через API.

В этой статье разберём все актуальные методы: от базового экспорта списков сделок до продвинутых скриптов для массовой выгрузки с фильтрацией. Особое внимание уделим нюансам форматирования (почему даты в Excel отображаются как числа), ограничениям бесплатного тарифа и способам обойти их. Если вам нужно выгрузить не только контакты, но и историю звонков, комментарии или кастомные поля — здесь найдёте решение.

1. Базовый экспорт через интерфейс amoCRM

Самый простой способ — использовать встроенную функцию экспорта прямо из раздела Сделки, Контакты или Компании. Этот метод подходит для разовых выгрузок небольших объёмов данных (до 10 000 строк).

Чтобы выгрузить данные:

  • 📌 Откройте нужный раздел (например, Сделки) и примените фильтры (по статусу, ответственному, дате создания).
  • 📊 Нажмите кнопку Ещё (три точки) в правом верхнем углу таблицы и выберите Экспорт в Excel.
  • 💾 Укажите, какие столбцы включить в выгрузку (по умолчанию экспортируются только видимые на экране).
  • 📥 Дождитесь генерации файла — он автоматически скачается в формате .xlsx.

⚠️ Внимание: В бесплатном тарифе amoCRM экспорт ограничен 500 строками за одну операцию. Чтобы выгрузить больше данных, разбейте запрос на части по фильтрам (например, по месяцам).

2. Экспорт отчётов и дашбордов

Если вам нужны не сырые данные, а готовые отчёты (например, конверсия по воронке, динамика продаж), используйте раздел Аналитика. Здесь можно выгрузить:

  • 📈 Воронку продаж — с разбивкой по этапам и конверсией.
  • 📊 Отчёт по менеджерам — количество сделок, суммы, средний чек.
  • 📅 Динамику по периодам — сравнение месяцев, кварталов.

Инструкция:

  1. Перейдите в Аналитика → Отчёты.
  2. Выберите тип отчёта (например, Воронка продаж).
  3. Настройте период и фильтры (по пиплайнам, ответственным).
  4. Нажмите Экспорт → Excel.

🔹 Важный нюанс: В экспортируемых отчётах нет детализации по конкретным сделкам — только агрегированные данные. Если нужны IDs сделок или контактов, используйте метод из первого раздела.

📊 Как часто вы выгружаете данные из amoCRM?
Ежедневно
Раз в неделю
Раз в месяц
Реже
Никогда

3. Выгрузка через API: для технических специалистов

Для автоматизированной выгрузки больших объёмов данных (например, еженедельных отчётов) подходит REST API amoCRM. Этот метод требует знаний JavaScript/Python или использования сервисов типа Zapier/Make.

Базовый алгоритм:

  1. Получите client_id, client_secret и redirect_uri в настройках интеграций (Настройки → Интеграции → API).
  2. Авторизуйтесь по протоколу OAuth 2.0.
  3. Отправьте GET-запрос к эндпоинту (например, для сделок: /api/v4/leads).
  4. Обработайте ответ и сохраните данные в .xlsx (можно использовать библиотеки xlsx для Python или SheetJS для JavaScript).

Пример запроса на Python:

import requests

import pandas as pd

url = "https://{subdomain}.amocrm.ru/api/v4/leads"

headers = {

"Authorization": "Bearer {access_token}"

}

params = {

"with": "contacts,catalog_elements",

"limit": 250

}

response = requests.get(url, headers=headers, params=params)

data = response.json()["_embedded"]["leads"]

df = pd.DataFrame(data)

df.to_excel("amo_leads.xlsx", index=False)

⚠️ Внимание: API имеет лимиты:

  • 50 запросов в секунду;
  • 10 000 объектов за один запрос (используйте пагинацию с параметром page).

При превышении лимита amoCRM вернёт ошибку 429 Too Many Requests.

Как обойти лимиты API?

Используйте параметр limit=250 и пагинацию (page=1,2,3...). Между запросами добавляйте задержку time.sleep(1) (для Python).

4. Экспорт кастомных полей и дополнительных сущностей

По умолчанию amoCRM не экспортирует кастомные поля, историю изменений или прикреплённые файлы. Чтобы их выгрузить, нужно:

Тип данных Как экспортировать Ограничения
Кастомные поля В ручном экспорте включите их в настройках столбцов. Через API используйте параметр with=custom_fields. В Excel кастомные поля отображаются как JSON-строки — потребуется парсинг.
История звонков Через API: эндпоинт /api/v4/unsorted/calls или интеграцию с телефонией. Без API история звонков не экспортируется.
Комментарии и заметки API-эндпоинт /api/v4/leads/{id}/notes (требуется ID сделки). Нет массовой выгрузки — нужно перебирать сделки в цикле.
Файлы (документы, скриншоты) Через API: эндпоинт /api/v4/leads/{id}/attachments. Файлы приходят в формате base64 — потребуется декодирование.

🔹 Практический совет: Для выгрузки кастомных полей в удобном виде используйте Google Apps Script с парсингом JSON. Пример скрипта:

function parseCustomFields(json) {

const customFields = JSON.parse(json);

let result = "";

customFields.forEach(field => {

result += `${field.name}: ${field.values[0].value}\n`;

});

return result;

}

5. Автоматизация выгрузки: Zapier, Make, Google Sheets

Если вам нужна регулярная выгрузка без программирования, подключите amoCRM к сервисам автоматизации:

  • 🤖 Zapier: триггер New Lead → действие Add Row to Google Sheets.
  • ⚙️ Make (ex-Integromat): сценарий с модулями amoCRM → Google Drive.
  • 📑 Google Sheets: используйте функцию =IMPORTDATA с API amoCRM (потребуется скрипт для аутентификации).

Пример настройки в Make:

  1. Создайте новый сценарий, добавьте модуль amoCRM → Watch Leads.
  2. Настройте фильтр (например, только закрытые сделки).
  3. Добавьте модуль Google Sheets → Add a Row и сопоставьте поля.
  4. Запустите сценарий по расписанию (например, каждый понедельник в 9:00).

⚠️ Внимание: Бесплатные тарифы Zapier и Make ограничивают количество задач (100/месяц). Для массовой выгрузки потребуется платный аккаунт.

Получить API-ключи в amoCRM|Создать шаблон таблицы в Google Sheets|Настроить фильтры для экспорта|Протестировать первый запуск-->

6. Распространённые ошибки и их решения

При выгрузке данных из amoCRM пользователи часто сталкиваются с типичными проблемами:

  • 🔢 Дата в формате числа: Excel интерпретирует timestamp как числовое значение. Решение: в настройках столбца выберите формат Дата и укажите тип 14.03.2001.
  • 📉 Пустые ячейки: Не все поля экспортируются по умолчанию. Решение: вручную добавьте нужные столбцы в настройках выгрузки.
  • 🔄 Дублирующиеся сделки: При экспорте из разных воронок. Решение: используйте фильтр по pipeline_id.
  • 🚫 Ошибка 403 Forbidden: Недостаточно прав доступа. Решение: проверьте роль пользователя в настройках amoCRM.

🔹 Критический нюанс: Если вы выгружаете данные для или другой бухгалтерской программы, убедитесь, что:

  • Суммы сделок экспортируются без разделителей тысяч (например, 100000, а не 100 000);
  • Дата указана в формате ДД.ММ.ГГГГ (а не ММ/ДД/ГГГГ);
  • Номера телефонов начинаются с +7 (а не 8).

7. Альтернативные способы: выгрузка через SQL и вебхуки

Для продвинутых пользователей есть ещё два метода:

1. Прямой доступ к базе данных amoCRM (доступно только на корпоративных тарифах). Позволяет выполнять SQL-запросы вида:

SELECT

leads.id,

leads.name,

leads.price,

contacts.name AS contact_name

FROM leads

LEFT JOIN contacts ON leads.main_contact_id = contacts.id

WHERE leads.status_id = 142

2. Вебхуки для выгрузки в реальном времени. Настройка:

  1. Перейдите в Настройки → Интеграции → Вебхуки.
  2. Добавьте новый вебхук с событием add lead.
  3. Укажите URL вашего обработчика (например, скрипт на PHP или Node.js).
  4. В обработчике сохраняйте данные в .xlsx с помощью библиотеки PhpSpreadsheet или ExcelJS.

⚠️ Внимание: Вебхуки требуют HTTPS-протокола и статического IP-адреса для сервера. При использовании локального хостинга (например, OpenServer) настройте туннель через ngrok.

FAQ: Частые вопросы по выгрузке из amoCRM

Можно ли выгрузить историю изменений сделки (кто и когда менял статус)?

Да, но только через API. Используйте эндпоинт /api/v4/leads/{id}/history. В ручном экспорте эта информация недоступна. Обратите внимание, что история хранится ограниченное время (зависит от тарифа).

Почему в выгруженном Excel некоторые ячейки содержат формулы вместо значений?

Это происходит, если в кастомных полях amoCRM использовались вычисляемые поля (например, =SUM()). Чтобы получить конечные значения, откройте Excel и нажмите Ctrl + C → Правка → Специальная вставка → Значения.

Как выгрузить данные за последний год, если в amoCRM только 3 месяца истории?

В бесплатном тарифе история хранится 3 месяца, в платных — от 6 до 24 месяцев. Чтобы выгрузить старые данные:

  1. Обновите тариф (хотя бы на месяц).
  2. Используйте резервные копии (если они сохранялись через API).
  3. Обратитесь в поддержку amoCRM — иногда они восстанавливают архивные данные за плату.

Можно ли выгрузить данные в Google Таблицы напрямую?

Да, двумя способами:

  • Через API + Google Apps Script (требуется настройка).
  • Через сервисы автоматизации (Zapier, Make).

Готовое решение: официальный шаблон от amoCRM.

Как выгрузить данные из amoCRM в 1С?

Для интеграции с 1С используйте:

  • Готовые коннекторы (например, "1С:Интеграция с amoCRM" от фирмы 1С).
  • Обмен через Excel: выгрузите данные в .xlsx, затем импортируйте в 1С через Загрузка данных из табличного документа.
  • API + HTTP-запросы из 1С (требует программиста).

⚠️ Важно: в 1С поля Дата и Сумма должны соответствовать формату 1С (например, дата как 20260515 для 15 мая 2026).