Справочники и Данные · 10 мин
Идентификатор клиента в 1С: как получить и где он используется
Как получить идентификатор клиента в 1С: уникальный GUID ссылки, код контрагента, способы через интерфейс, запрос и код. Проверка результата и типичные ошибки.
Под «идентификатором клиента» в 1С обычно понимают одно из трёх: уникальный идентификатор ссылки (GUID) элемента справочника «Контрагенты» или «Партнеры», код элемента справочника, который виден в интерфейсе, либо идентификатор клиента в сервисах фирмы «1С» (например, в личном кабинете портала 1С:ИТС). Это разные сущности, и способ получения зависит от того, какой именно идентификатор нужен.
Чаще всего запрос возникает при интеграциях: внешняя система (сайт, CRM, банк-клиент) просит передать идентификатор клиента из 1С, чтобы однозначно сопоставлять записи при обмене. В этом случае используется GUID — строка вида «a1b2c3d4-…», которая не меняется в течение всего времени существования объекта, даже если поменять наименование или код контрагента.
Ниже разобраны все три сценария: получение GUID через интерфейс и программно, работа с кодом справочника и поиск идентификатора в сервисах 1С. Инструкции подходят для типовых конфигураций — «Бухгалтерия предприятия», «Управление торговлей», «Комплексная автоматизация», «ERP» — с небольшими отличиями в названиях справочников.
Какие идентификаторы клиента существуют в 1С
Прежде чем искать идентификатор, определите, какой именно требуется. В типовых конфигурациях клиент может храниться в справочнике «Контрагенты», «Партнеры» (в торговых конфигурациях) или «Физические лица». У каждого элемента этих справочников есть несколько идентифицирующих реквизитов.
Код элемента — числовой или строковой номер, который присваивается автоматически при создании. Он виден в списке справочника и в карточке, но не гарантирует уникальность при обмене между базами: в разных базах один и тот же код может принадлежать разным клиентам.
GUID (глобальный уникальный идентификатор) — внутренний идентификатор ссылки, который платформа генерирует при создании объекта. Он уникален в масштабе всех баз 1С и не изменяется при редактировании объекта. Именно GUID используется в веб-сервисах, REST-интерфейсах, планах обмена и при синхронизации с сайтами.
Сравнение видов идентификаторов
Подходит для поиска внутри одной базы и общения с пользователями. Не подходит для интеграций между базами — коды дублируются.
Стандарт для обмена, API и синхронизаций. Сложно читать человеку, нельзя узнать из карточки без дополнительных действий.
Подходит для сопоставления юридических лиц между системами, но не работает для физлиц и не гарантирует однозначность при дублях в справочнике.
Как получить GUID клиента через интерфейс без программирования
В стандартной карточке контрагента GUID не отображается — это техническое поле. Однако есть способы узнать его без написания кода, если у вас есть права администратора или доступ к нужным инструментам.
Первый способ — универсальный отчёт или консоль запросов. Если в базе установлена внешняя обработка «Консоль запросов» (часто входит в комплект инструментов разработчика на ИТС), выполните простой запрос к справочнику с выводом представления ссылки — в результате будет виден идентификатор.
Второй способ — обработка «Показать GUID объекта», которую несложно найти в открытых источниках или написать за несколько минут. Она выводит поле, в которое вы перетаскиваете или выбираете ссылку, и показывает её уникальный идентификатор в виде строки.
Третий способ — через динамический список. В форме списка справочника через «Ещё → Изменить форму» можно попытаться вывести поле «Ссылка», однако в управляемых формах GUID в чистом виде так не отобразится — будет показано представление. Поэтому надёжнее использовать обработку или запрос.
Как получить GUID программно: код и запрос
Программный способ — основной при настройке интеграций. Во встроенном языке 1С у любой ссылки есть метод УникальныйИдентификатор(), который возвращает значение типа «УникальныйИдентификатор».
Пример получения GUID по известной ссылке:
КонтрагентСсылка = Справочники.Контрагенты.НайтиПоНаименованию("ООО Ромашка");
Если Не КонтрагентСсылка.Пустая() Тогда
Ид = КонтрагентСсылка.УникальныйИдентификатор();
Сообщить(Строка(Ид));
КонецЕсли;
Обратная задача — найти клиента по известному GUID — решается через конструктор ссылки:
Ид = Новый УникальныйИдентификатор("a1b2c3d4-e5f6-7890-abcd-ef1234567890");
КонтрагентСсылка = Справочники.Контрагенты.ПолучитьСсылку(Ид);
Если КонтрагентСсылка.ПолучитьОбъект() = Неопределено Тогда
Сообщить("Объект с таким GUID не найден");
КонецЕсли;
В языке запросов GUID напрямую не выводится как строка, но ссылку можно передать в результат, а дальше получить идентификатор средствами встроенного языка. Если GUID нужен именно в запросе для выгрузки, обычно выгружают ссылку и преобразуют её уже в коде обработки.
Ид = СсылкаНаКлиента.УникальныйИдентификатор(); СтрокаGUID = Строка(Ид);Как узнать код клиента в справочнике
Код элемента — самый простой идентификатор, доступный любому пользователю без специальных прав. Откройте справочник «Контрагенты» (или «Партнеры») и включите отображение колонки «Код», если она скрыта: правой кнопкой по шапке списка → «Настройка списка» или через «Ещё → Изменить форму».
В карточке клиента код показывается в заголовке формы или в поле «Код», в зависимости от конфигурации. В «Управлении торговлей» учтите особенность: карточка партнёра и карточка контрагента — разные объекты с разными кодами, и для интеграции нужно заранее понять, какой из них использует внешняя система.
Код удобен для устного поиска и сверки, но полагаться на него при обмене нельзя: при перенумерации, объединении дублей или переносе данных коды могут измениться или совпасть у разных клиентов.
Идентификатор клиента в сервисах и личном кабинете 1С
Если под идентификатором клиента понимается учётная запись в сервисах фирмы «1С» — например, для подключения 1С:ИТС, 1С:Отчётности или облачных сервисов, — его нужно искать не в базе, а в личном кабинете портала. Обычно роль идентификатора выполняет логин (адрес электронной почты) учётной записи, а для договоров сопровождения — регистрационный номер программного продукта.
Регистрационный номер указан в документации на коробку с программой, в письме об активации лицензии, а также в самой программе: раздел «Администрирование → Обслуживание» или информация о программе, в зависимости от конфигурации. По этому номеру партнёр 1С и служба поддержки идентифицируют клиента.
Для сервисов вроде «1С:Фреш» идентификатором абонента выступает код абонента, который виден администратору в менеджере сервиса. Он нужен при обращениях в поддержку и при настройке обменов между облачной и локальной базами.
Как выбрать действие
Проверка результата и типичные проблемы
После получения GUID убедитесь, что он рабочий. Минимальная проверка — обратный поиск: получите ссылку по GUID и убедитесь, что объект существует и это именно тот клиент. Если ПолучитьОбъект() возвращает «Неопределено», объект удалён или GUID относится к другой базе.
При обмене через веб-сервисы проверьте формат строки: GUID в 1С имеет вид «xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx» в нижнем регистре. Некоторые внешние системы требуют верхний регистр или формат без дефисов — согласуйте это в спецификации интеграции заранее.
Отдельная проблема — дубли клиентов. Если в справочнике несколько карточек одного контрагента, у каждой свой GUID, и внешняя система будет воспринимать их как разных клиентов. Перед настройкой обмена выполните поиск и устранение дублей штатной обработкой «Поиск и удаление дублей» в разделе администрирования.
Как проверить результат
Ссылка найдена, открывается карточка нужного клиента
Объект не найден или открывается другой клиент — GUID неверный или из другой базы
36 символов с дефисами, шестнадцатеричные цифры
Строка другой длины или с посторонними символами — ошибка копирования
Одна карточка на контрагента
Несколько дублей с разными GUID — обмен будет задваивать клиентов
Частые вопросы
Можно ли узнать GUID контрагента без прав администратора?
Штатными средствами интерфейса — практически нет, GUID не отображается в карточке. Попросите администратора или разработчика выполнить простую обработку с методом УникальныйИдентификатор() либо добавить GUID в дополнительный реквизит карточки, если он нужен регулярно.
Изменится ли GUID, если переименовать клиента или исправить ИНН?
Нет. GUID присваивается ссылке один раз при создании объекта и не зависит от содержимого реквизитов. Меняются только данные карточки, идентификатор остаётся прежним до удаления объекта.
Сохранится ли GUID при переносе данных в другую базу?
При типовой синхронизации и обмене через правила конвертации GUID обычно сохраняется или регистрируется в таблице соответствий. При ручном создании клиента в новой базе или загрузке через простой импорт из Excel будет сгенерирован новый GUID.
Чем GUID отличается от навигационной ссылки на объект?
Навигационная ссылка (вида e1cib/data/Справочник.Контрагенты?ref=...) содержит GUID в закодированном виде и используется для открытия объекта из браузера или письма. Из неё можно извлечь GUID, но сама она привязана к конкретной публикации базы.
Как массово выгрузить GUID всех клиентов в Excel?
Напишите небольшую обработку: обойдите выборку справочника запросом и выведите код, наименование и Строка(Ссылка.УникальныйИдентификатор()) в табличный документ, затем сохраните его в Excel. Альтернатива — произвольный отчёт на СКД с вычисляемым полем.
Что делать, если внешняя система требует числовой идентификатор?
GUID нельзя корректно преобразовать в число без потерь. Используйте код элемента справочника, предварительно договорившись о его неизменности, либо заведите в карточке клиента дополнительный реквизит «ID внешней системы» и заполняйте его при синхронизации.
Что важно запомнить
Для интеграций всегда используйте GUID ссылки — он получается методом УникальныйИдентификатор() и не меняется при редактировании карточки. Код справочника подходит только для внутреннего поиска. Перед обменом устраните дубли клиентов и проверяйте GUID обратным поиском.