Начальное заполнение данных организации по данным абонента

Общие сведения

При создании сервисов, интегрированных с прикладным решением 1С:Бухгалтерия, создаваемое приложение может быть заполнено ключевыми данными об организации из данных абонента, которые хранятся в менеджере сервиса. Это позволяет упростить пользователям начало работы в новом приложении.  Для того, чтобы в новом экземпляре приложения выполнилось начальное заполнение разработчику необходимо при проведении процедуры регистрации нового абонента передать ключевые параметры в полях publicid и userinfo необходимые для заполнения.  В поле publicid передается ИНН организации, а поле userinfo остальные ключевые данные, которые сериализуются в формате JSON.

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

В тех случаях, когда для начального заполнения не достаточно данных, при первом запуске нового приложения будет открыта форма начального заполнения, где пользователю будет необходимо дозаполнить недостающие данные.

Среди ключевых параметров начального заполнения есть основные параметры, заполнение которых влияет на то, увидит ли пользователь форму начального заполнения. К ним относятся ИНН, Налогообложение и Вид бизнеса, если любой из них окажется не заполненным, то пользователь увидит форму начального заполнения с той страницы, для которой нет данных.

Описание структуры userinfo

Поля структуры

Свойство

Тип

Обязательно

Описание

Значение по умолчанию

ЗаполнениеПоДаннымАбонентаБулево
Признак необходимости начального заполнения приложения по данным абонента. Если true, то производится попытка заполнения нового приложения по сведениям абонента.false

Налогообложение

Перечисление

Да

Система налогообложения

Возможные значения:

  • АУСН 20% (доходы минус расходы)
  • АУСН 8% (доходы)
  • Налог на профессиональный доход ("самозанятые")
  • Общая система налогообложения
  • Только патентная система (только для ИП)
  • УСН 15% (доходы минус расходы)
  • УСН 6% (доходы)


ПлательщикТорговогоСбора

Булево


Торговый сбор

false

ПрименяетсяУСНПатент

Булево


Применяется УСН патент

false

ПодключитьСервисМойНалог

Булево


Подключить сервис "Мой налог"

false

ИспользуетсяТрудНаемныхРаботников

Булево


Используется труд наемных работников

false

ВидБизнеса

Перечисление

Да

Вид бизнеса

Возможные значения:

  • Агентские услуги
  • Другое
  • Интернет-магазин
  • Исследования и разработки
  • Медицинские услуги
  • Обучение
  • Оптовая торговля
  • Производство
  • Ресторан, кафе, столовая
  • Розничный магазин
  • Сельское хозяйство
  • Строительство и ремонт
  • Транспорт и логистика
  • Услуги населению
  • Услуги организациям


ВедетсяРозничнаяТорговля

Булево


Учет товаров в розничной торговле

false

ВедетсяУчетОсновныхСредств

Булево


Основные средства

false

ВестиУчетПоДоговорам

Булево


Учет по договорам

false

ВестиУчетРасчетовСКонтрагентами

Булево


Расчеты с покупателями и поставщиками

false

ИспользоватьВыпускПродукции

Булево


Выпуск продукции

false

ИспользоватьДоставкуАвтотранспортом

Булево


Доставка товара автотранспортом

false

ИспользоватьОбменСИнтернетМагазином

Булево


Интеграция с интернет-магазином

false

ИспользоватьОплатуПоПлатежнымКартам

Булево


Платежные карты

false

ОсуществляетсяРеализацияТоваровУслугКомитентов

Булево


Продажа товаров или услуг комитентов (принципалов)

false

ИдентификаторМобильнойКассыСтрока
Идентификатор мобильной кассы в формате UUID
ИспользоватьМаркировкуБулево
Торговля маркированным товаромfalse
ИспользоватьПродажиЧерезМаркетплейсБулево
Продажи через маркетплейсfalse
Пример структуры userinfo
{
  "ЗаполнениеПоДаннымАбонента": true,
  "Налогообложение": "АУСН 8% (доходы)",
  "ПлательщикТорговогоСбора": false,
  "ПрименяетсяУСНПатент": false,
  "ПодключитьСервисМойНалог": false,
  "ИспользуетсяТрудНаемныхРаботников": false,
  "ВидБизнеса": "Услуги организациям",
  "ВедетсяРозничнаяТорговля": true,
  "ВедетсяУчетОсновныхСредств": false,
  "ВестиУчетПоДоговорам": true,
  "ВестиУчетРасчетовСКонтрагентами": false,
  "ИспользоватьВыпускПродукции": false,
  "ИспользоватьДоставкуАвтотранспортом": false,
  "ИспользоватьОбменСИнтернетМагазином": false,
  "ИспользоватьОплатуПоПлатежнымКартам": false,
  "ОсуществляетсяРеализацияТоваровУслугКомитентов": false,
  "ИдентификаторМобильнойКассы": "c826251d-71e9-4eae-bfd4-29a3b85e628f",
  "ИспользоватьМаркировку ": false,
  "ИспользоватьПродажиЧерезМаркетплейс": false
}

Настройка на стороне менеджера сервиса

На стороне сервера также должны быть проведены  настройки.

В первую очередь необходимо расширить состав дополнительных свойств абонента теми свойствами, которые указаны в таблице выше. Для свойств «Налогообложение» и «Вид бизнеса» необходимо выбрать тип «Дополнительное значение» и добавить значения:

Для свойства Налогообложение:

  • АУСН 20% (доходы минус расходы)
  • АУСН 8% (доходы)
  • Налог на профессиональный доход ("самозанятые")
  • Общая система налогообложения
  • Только патентная система (только для ИП)
  • УСН 15% (доходы минус расходы)
  • УСН 6% (доходы)

Для свойства Вид бизнеса:

  • Агентские услуги
  • Другое
  • Интернет-магазин
  • Исследования и разработки
  • Медицинские услуги
  • Обучение
  • Оптовая торговля
  • Производство
  • Ресторан, кафе, столовая
  • Розничный магазин
  • Сельское хозяйство
  • Строительство и ремонт
  • Транспорт и логистика
  • Услуги населению
  • Услуги организациям


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

Найти и модифицировать правило трансляции объекта. Это правило извлекает из переданной структуры JSON данные и заполняет ими ранее созданные дополнительные свойства абонента.

Пример обработчика правила для свойств со списком значений:

Свойство = УправлениеСвойствами.ДополнительноеСвойствоПоИмени("Налогообложение", "Справочник.Абоненты");
Значение = Справочники.ЗначенияСвойствОбъектов.НайтиПоНаименованию(ШаблоныТекстов.ЗначениеРеквизитаРекурсивно(
  Приемник.Ссылка, "ПриглашениеДляРегистрации.ИнформацияОПользователе.Налогообложение"),,, Свойство);
Свойство = УправлениеСвойствами.ДополнительноеСвойствоПоИмени("ВидБизнеса", "Справочник.Абоненты");
Значение = Справочники.ЗначенияСвойствОбъектов.НайтиПоНаименованию(ШаблоныТекстов.ЗначениеРеквизитаРекурсивно(
  Приемник.Ссылка, "ПриглашениеДляРегистрации.ИнформацияОПользователе.ВидБизнеса"),,, Свойство);

Пример обработки правила для свойств с типом "Булево" и "Строка":

Свойство = "ВестиУчетРасчетовСКонтрагентами"; // <- Тут должно быть имя заполняемого свойства.
Значение = ШаблоныТекстов.ЗначениеРеквизитаРекурсивно(
  Приемник.Ссылка, СтрШаблон("ПриглашениеДляРегистрации.ИнформацияОПользователе.%1", Свойство));

Если для передачи ключевых параметров разработчиками принято решение об использовании страницы регистрации, то для этого необходимо создать новый или модифицировать существующий шаблон текста, описывающий страницу регистрации, используемой разработчиками для регистрации новых абонентов.

Изменение на странице регистрации

Чтобы заполнять ВидБизнеса, Налогообложение и ВестиУчетРасчетовСКонтрагентами при регистрации, нужно реализовать на странице регистрации поля выбора в блоке form:

<input name="userinfo" id="userinfo" value="" type="hidden"></input>

<label for="ВидБизнеса">Вид бизнеса</label> 
<select name="ВидБизнеса" id="ВидБизнеса" onChange="fillUserInfo()">
  <option value="">--Выберите вид бизнеса--</option>
  <option value="Агентские услуги">Агентские услуги</option>
  <option value="Другое">Другое</option>
  <option value="Интернет-магазин">Интернет-магазин</option>
  <option value="Исследования и разработки">Исследования и разработки</option>
  <option value="Медицинские услуги">Медицинские услуги</option>
  <option value="Обучение">Обучение</option>
  <option value="Оптовая торговля">Оптовая торговля</option>
  <option value="Производство">Производство</option>
  <option value="Ресторан, кафе, столовая">Ресторан, кафе, столовая</option>
  <option value="Розничный магазин">Розничный магазин</option>
  <option value="Сельское хозяйство">Сельское хозяйство</option>
  <option value="Строительство и ремонт">Строительство и ремонт</option>
  <option value="Транспорт и логистика">Транспорт и логистика</option>
  <option value="Услуги населению">Услуги населению</option>
  <option value="Услуги организациям">Услуги организациям</option>
</select>

<label for="Налогообложение">Система налогообложения</label>
<select name="Налогообложение" id="Налогообложение" onChange="fillUserInfo()">
  <option value="">--Выберите систему налогообложения--</option>
  <option value="АУСН 20% (доходы минус расходы)">АУСН 20% (доходы минус расходы)</option>
  <option value="АУСН 8% (доходы)">АУСН 8% (доходы)</option>
  <option value='Налог на профессиональный доход ("самозанятые")'>Налог на профессиональный доход ("самозанятые")</option>
  <option value="Общая система налогообложения">Общая система налогообложения</option>
  <option value="Только патентная система (только для ИП)">Только патентная система (только для ИП)</option>
  <option value="УСН 15% (доходы минус расходы)">УСН 15% (доходы минус расходы)</option>
  <option value="УСН 6% (доходы)">УСН 6% (доходы)</option>
</select>

<input type="checkbox" id="ВестиУчетРасчетовСКонтрагентами" name="ВестиУчетРасчетовСКонтрагентами" onChange="fillUserInfo()"/>
<label for="ВестиУчетРасчетовСКонтрагентами">Вести учет расчетов с контрагентами</label>

<script>
function fillUserInfo(){
	document.getElementById('userinfo').value = JSON.stringify(
		{ 
			Налогообложение : document.getElementById('Налогообложение').value, 
			ВидБизнеса : document.getElementById('ВидБизнеса').value
			ВестиУчетРасчетовСКонтрагентами : document.getElementById('ВестиУчетРасчетовСКонтрагентами').checked 
		}
	);  
}
</script>

Для других полей с типом Булево можно сделать аналогично, как для поля ВестиУчетРасчетовСКонтрагентами.