Как мы синхронизировали работу нашего софта с 1с.

Когда нам потребовалось синхронизировать данные в нашем софте с 1с мы решили эту задачу достаточно просто. Вот прмерное описание решения.

Запросом типа POST(без json упаковки) на http:// домен запроса/ URI запроса/ передаём сделющие значения(поля регистрозависимы,- все с маленькой буквы):
email
name
inn
kpp
ogrn
code1c

Обязательны к передаче только поля email и code1c. В случаи если какие либо из прочих полей не были переданы, будут созданы пустые соответствующие переменные типа string

Ответ во всех случаях возвращается в JSON(в том числе сопровождается HTTP заголовком Content-Type: application/json) и содержит массив с двумя ключами: status и pwd

pwd возвращается не пустов только при статусе = 1(когда новый пользователь успешно создан), в остальных pwd случаях возвращается возвращается пустым типа string

Возможны следующие статусы:

Единственный положительный status=1 - пользователь успешно создан. Все остальные значения status согнализируют о ошибке и новый пользователь при их возврате не создаётся;
status=2 - не был передан e-mail(данный статус не сообщает о передаче кода 1с);
status=3 - не был передан 1с(данный статус так же означает что e-mail передан иначе вернулся бы статус 2);
status=4 - пользователь с указанным E-mail существует, но принадлежит к другой группе(не является пользователем кабинета);
status=5 - пользователь с указанным E-mail существует, принадлежит к группе пользователей кабинета, но код 1c отличается от указанного;
status=6 - пользователь с указанным E-mail, принадлежащей к группе пользователей кабинета с указанным кодом 1с уже существует;
status=7 - пользователь с указанным E-mail, принадлежащей к группе пользователей кабинета с указанным кодом 1с уже существует;
status=8 - пользователя с таким E-mail нет в списке пользователей, но код 1с уже присутствует в Hiload блоке. Данный статус предполагает, что пользователь кабинета существует в списке пользователей под другим e-mail(при этом не проверяя данный факт) или же пользователем с таким кодом 1с присутствует в HiLoad блоке при этом не присутствует в списке пользователей вовсе(сбой, предполагается что такая ситуация не возможна и может появиться только в результате некорректной работы с данными в ручную);
status=9 - режим заглушки, означает что ведутся технические работы с модулем регистрации, данный стстус возвращается всегда при проведении технический работ, данные полученные от клиента никак не проверяются и вовсе не обрабатываются.