1
userdoc/1с_exchange – MultiMag
wiki:userdoc/1с_exchange

Обмен между MultiMag и 1C

Описывается формат версии 1.2. Предыдущие версии устарели и не поддерживаются.

Обмен осуществляется при помощи POST запросов по протоколам http или https с url /1c_sync.php.
Для аутентификации используются параметры login и password. Соответствующий пользователь должен иметь привилегии на обмен с 1с.
Направление синхронизации определяет параметр mode:

  • mode=export - Экспорт
  • mode=import - Импорт

Экспорт

Параметры экспорта

  • start_date - Дата начала периода для полной синхронизации. Не указывается при частичной синхронизации. Текущая дата по умолчанию.
  • end_date - Дата окончания периода для полной синхронизации. Не указывается при частичной синхронизации. Текущая дата по умолчанию.
  • format - формат выгрузки. Допустимые варианты - xml (по умолчанию) и json. Выгрузка в XML содержит проблемы, устарела, не рекомендуется к использованию, и будет удалена в следующих версиях.
  • partial_time - <timestamp> предыдущей успешной синхронизации. 0 по умолчанию - полная синхронизация.
  • doc_types[] - типы документов для синхронизации. Наименования типов - см в структуре XML. По умолчанию - если не задано - все типы документов.
  • refbooks[] - типы справочников для синхронизации, в соответствии со структурой XML. По умолчанию - если не задано - все справочники.

Импорт

Импортировать можно из файла, либо из строки. Допустимо указывать лишь 1 параметр.

  • xmlfile - Импортируемый файл.
  • xmlstring - Строка с XML файлом.

Ответ при импорте - файл со статусом и идентификаторами новых элементов.

Структура файла обмена multimag <-> 1c

Условные обозначения:

  • N - Целое число (int). Может быть null.
  • F - Число с плавающей точкой (double)
  • D - Число с фиксированной точкой. Например D10.2 - decimal(10,2)
  • S - строка
  • B - Флаг, принимает значения 0 или 1

кодировка utf-8, версия формата 1.2

  • <multimag_exchange version='1.2'> - корневой элемент. При обмене необходимо проверять соответствие версии во избежание ошибок при обмене.
    • <result> - Результат выполнения запроса синхронизации
      • <status> - Статус выгрузки

        ok - Выгрузка завершилась успешно err - Выгрузка завершилась с ошибкой

      • <message> - Текстовое сообщение об успешной или ошибочной выгрузке
      • <timestamp> - unixtime выгрузки. Нужен для частичной синхронизации.
    • <refbooks> - справочники
      • <firms> - собственные организации.
        • <firm id=N> Элемент справочника. id — уникальный числовой идентификатор. Обязательный атрибут.
          • <type> - Вид: 'ip'=>'ИП', 'ooo'=>'ООО', 'pao'=>'ПАО', 'fl'=>'Физ.лицо','alt'=>'Другое'
          • <name> - Название организации. Обязательный параметр.
          • <director> - ФИО директора
          • <manager> - ФИО менеджера
          • <buhgalter> - ФИО бухгалтера
          • <kladovshik> - ФИО кладовщика
          • <address> - Юридический адрес
          • <realaddress> - Почтовый адрес
          • <storesender> - Данные грузоотправителя
          • <phone> - Номер телефона
          • <okpo> - ОКПО
          • <nds> - Ставка НДС по умолчанию
          • <regnum> - Регистрационный номер
          • <regdate> - Дата регистрации
          • <pricecoeff> Ценовой коэффициент организации
          • <no_retailprices> - Не использовать розничные цены
          • <leader_post> - Должность руководителя
          • <leader_post_r> - Должность руководителя в родительном падеже
          • <director_r> - ФИО руководителя в родительном падеже
          • <leader_reason> - Основание деятельности руководителя
          • <leader_reason_r> - Основание деятельности руководителя в родительном падеже
          • <storekeeper_id> - ID пользователя-кладовщика
          • <storekeeper_post> Должность кладовщика
          • <store_lock> - Ограничить своими складами
          • <bank_lock> - Ограничить своими банками
          • <till_lock> - Ограничить своими кассами
        • <stores> - Справочник складов
          • <store id=N firm_id=N> Элемент справочника.

            id — уникальный числовой идентификатор. Обязательный атрибут.

            • <name> - Название склада. Обязательный параметр.
            • <dnc> - Флаг запрета контроля остатков. Если установлен — разрешено списание товаров в минус.
            • <firm_id> — идентификатор организации, которой принадлежит склад. Необязательный атрибут. Если задан — другие организации не могут работать с этим складом.
          • <tills> - Справочник касс
            • <till id=N> Элемент справочника.

              id — уникальный числовой идентификатор. Обязательный атрибут.

              • <name> - Название кассы. Обязательный параметр.
              • <firm_id> — идентификатор организации, которой принадлежит касса. Необязательный атрибут. Если задан — другие организации не могут работать с этой кассой.
          • <banks> - Справочник касс
            • <bank id=N> Элемент справочника.

              id — уникальный числовой идентификатор. Обязательный атрибут.

              • <name> - Название банка. Обязательный параметр.
              • <bik> - БИК банка
              • <rs> - Расчётный счёт в банке
              • <ks> - Корр. Счёт банка
              • <firm_id> — идентификатор организации, которой принадлежит банк. Необязательный атрибут. Если задан — другие организации не могут работать с этим банком.
          • <prices> - Справочник цен
            • <price id=N> Элемент справочника.

              id — уникальный числовой идентификатор. Обязательный атрибут.

              • <name> - Название цены. Обязательный параметр.
              • <type> - Тип наценки. pp — процентная наценка, abs — абсолютная наценка, fix — фиксированная цена
              • <value> - Значение наценки
              • <accuracy> - Точность округления. Число показывает, до какого знака после точки округлять. Отрицательные значения — до какого знака до точки округлять.
              • <direction> - направление округления. 1 — вверх, 0 — к ближайшему, -1 — вниз
          • <workers> - Справочник сотрудников
            • <worker id=N> Элемент справочника.

              id — уникальный числовой идентификатор, совпадающий с id пользователя. Обязательный атрибут.

              • <worker> - Флаг доступности сотрудника для выбора в документах.
              • <worker_email> - Служебный email сотрудника
              • <worker_jid> - Служебный JID сотрудника
              • <worker_phone> - Служебный телефон сотрудника
              • <worker_real_name> - ФИО сотрудника
              • <worker_real_address> - Служебный адрес сотрудника
              • <worker_post_name> - Должность сотрудника
          • <credit_types> - Виды расходов
            • <type id=N> Элемент справочника.

              id — уникальный числовой идентификатор. Обязательный атрибут.

              • <account> - Код соответствующего счёта бухгалтерского учета
              • <name> - Наименование
              • <codename> - Кодовое наименование. Все значения, отличные от пустой строки, должны быть уникальны. Используется для поиска в сценариях и отчётах.
          • <debit_types> - Виды доходов
            • <type id=N> Элемент справочника.

              id — уникальный числовой идентификатор. Обязательный атрибут.

              • <account> - Код соответствующего счёта бухгалтерского учета
              • <name> - Наименование
              • <adm> - Флаг административного расхода
              • <r_flag> - Флаг расхода на возврат товара
              • <codename> - Кодовое наименование. Все значения, отличные от пустой строки, должны быть уникальны. Используется для поиска в сценариях и отчётах.
          • <delivery_types> - Типы доставки
            • <type id=N> Элемент справочника.

              id — уникальный числовой идентификатор. Обязательный атрибут.

              • <name> - Наименование
              • <min_price> - Минимально разрешенная сумма заказа
              • <service_id> - ID соответствующей услуги
              • <description> - Описание
          • <delivery_regions> - Типы доставки
            • <region id=N> Элемент справочника.

              id — уникальный числовой идентификатор. Обязательный атрибут.

              • <name> - Наименование
              • <price> - Стоимость доставки
              • <description> - Описание
          • <agents> - Справочник агентов
            • <groups> - Группы агентов
              • <group id=N> Элемент справочника.

                id — уникальный числовой идентификатор. Обязательный атрибут.

                • <parent_id> — Идентификатор родительской группы. Если N==0 или N==null — то группа корневая
                • <name> - Название группы. Обязательный параметр.
                • <comment> - Описание группы
            • <items> - Элементы справочника агентов
              • <item id=N> Элемент справочника.

                id — уникальный числовой идентификатор. Обязательный атрибут.

                • <group_id> — Идентификатор группы, в которую входит элемент.
                • <type> - Тип агента. ul — юридическое лицо, fl — физическое лицо, nr — не резидент.
                • <name> - Краткое наименование
                • <fullname> - Полное наименование
                • <address> - Юридический адрес для юр.лица, адрес прописки для физ.лица
                • <real_address> - Почтовый адрес
                • <inn> - ИНН
                • <kpp> - КПП
                • <leader_name> - ФИО руководителя юр.лица
                • <leader_post> - Должность руководителя юр.лица
                • <leader_reason> - Основание для занимаемой должности руководителя юр.лица
                • <cpreson_fio> - ФИО контактного лица юр.лица
                • <cperson_post> - должность контактного лица юр.лица
                • <okved> - ОКВЭД
                • <okpo> - ОКПО
                • <ogrn> - ОГРН
                • <passport_num> - Номер паспорта физ.лица
                • <passport_date> - Дата выдачи паспорта физ.лица
                • <passport_source_info> - Кем выдан паспорт физ.лица
                • <comment> - Комментарий
                • <revision_date> - Дата последней бухгалтерской сверки
                • <dishonest> - Отметка *недобросовестный агент*
                • <p_agent_id> - Идентификатор агента-предка (для групп компаний)
                • <price_id> - Идентификатор цены по умолчанию для агента
                • <contacts> - Контактные сведения
                  • <contact> - Элемент контактных сведений
                    • <type> - тип контактной информации. Варианты: phone - номер телефона, email - адрес электроной почты, jabber - XMPP адрес в jabber сети (JID), sip - номер sip телефона, icq, skype. Обязательный атрибут.
                    • <context> - контекст использования. 'home' => 'Домашний', 'work' => 'Рабочий', 'mobile'=> 'Мобильный'
                    • <person_name> - ФИО контактного лица
                    • <person_post> - должность контактного лица
                    • <for_sms> - Флаг, информирующий о возможности приёма SMS на номер.
                    • <for_fax> - Флаг, информирующий о возможности приёма факсимильных сообщений на номер.
                    • <no_ads> - Флаг, информирующий о запрете отправки рекламно-информационных сообщений на адрес (номер, идентификатор).
                    • <value> Значение элемента - соответствующий адрес (номер, идентификатор).
                • <bank_details> - Банковские реквизиты
                  • <item> - Элемент реквизитов
                    • <name> - Название банка. Обязательный параметр.
                    • <bik> - БИК банка
                    • <rs> - Расчётный счёт в банке
                    • <ks> - Корр. Счёт банка
          • <nomenclature> - Справочник номенклатуры
            • <groups> - Группы номенклатуры
              • <group id=N> Элемент справочника.

                id — уникальный числовой идентификатор. Обязательный атрибут.

                • <parent_id> — Идентификатор родительской группы. Если N==0 или N==null — то группа корневая
                • <name> - Название группы. Обязательный параметр.
                • <generated_name> - Генерируемое имя для печатных форм. Только для чтения.
                • <comment> - Описание группы
            • <items> - Элементы справочника номенклатуры
              • <item id=N> Элемент справочника.

                id — уникальный числовой идентификатор. Обязательный атрибут.

                • <group_id> — Идентификатор группы, в которую входит элемент.
                • <type> - Тип элемента. 0 - товар, 1 - услуга
                • <name> - Краткое наименование. Обязательный параметр. Должен быть уникальным в группе.
                • <vendor_code> - Код производителя, артикул
                • <country_id> - id страны происхождения
                • <vendor> - Наименование изготовителя
                • <base_price> - Базовая цена
                • <unit_id> - id единицы измерения
                • <warranty> - Гарантийный срок
                • <warranty_type> - Тип гарантии. 0 - от продавца, 1 - от изготовителя
                • <create_time> - Дата создания наименования. Y-m-d H:i:s
                • <mult> - Кратность. Количество в неделимой упаковке.
                • <bulkcnt> - Количество оптовой продажи
                • <mass> - Масса единицы товара
                • <comment> - Комментарий
                • <stock> - Флаг распродажи
                • <hidden> - Флаг скрытия
                • <nds> - Размер ставки НДС. Если не задан - используется ставка организации по умолчанию.
                • <no_export_yml> - Запрет экспорта группы в Яндекс.YML
                • <eol> - Флаг снятия с поставки
                • <meta_description> - Мета-описание, содержимое мета-тэга meta_description
                • <meta_keywords> - Ключевые слова. Содержимое мета-тэга keywords
                • <title_tag> - Текст заголовка страницы товара
                • <analog_group> - Имя группы аналогов
                • <prices> - Список переопределенных цен
                  • <price> - Элемент списка
                    • <price_id> - Идентификато переопределяемой цены
                    • <type> - Тип наценки. pp — процентная наценка, abs — абсолютная наценка, fix — фиксированная цена
                    • <value> - Значение наценки
                    • <accuracy> - Точность округления. Число показывает, до какого знака после точки округлять. Отрицательные значения — до какого знака до точки округлять.
                    • <direction> - направление округления. 1 — вверх, 0 — к ближайшему, -1 — вниз
                • <params> - Динамические параметры номенклатуры
                  • <param>
                    • <raw_value> - Сырое значения параметра
                    • <int_value> - Целое представление значения
                    • <double_value> - Представление с плавающей точкой
                    • <text_value> - Текстовое представление значения

                      Информация: разные варианты хранения значений используются для упрощения фильтрации данных по нужным параметрам

                • <attachments> - Прикреплённые файлы
                  • <attachment> - Элемент списка
                    • <attachment_id> - ID прикреплённого файла
                • <images> - Прикреплённые изображения
                  • <image> - Элемент списка
                    • <img_id> - ID изобрадения
                    • <default> - Флаг изображения по умолчанию
                • <parts> - Комплектующие
                  • <part id=N> - Элемент справочника.

                    id — уникальный числовой идентификатор. Обязательный атрибут.

                    • <kompl_id> - ID номенклатуры
                    • <cnt> - Количество
          • <pos_links> - Связи номенклатуры
            • <link id=N> Элемент справочника.

              id — уникальный числовой идентификатор. Обязательный атрибут.

              • <pos1_id> - ID первой позиции в связке
              • <pos2_id> - ID второй позиции в связке
          • <pos_params> - Виды динамических свойств номенклатуры
            • <param id=N>

              id — уникальный числовой идентификатор. Обязательный атрибут.

              • <group_id> - Id группы параметров
              • <name> - Отображаемое наименование параметра
              • <codename> - Кодовое наименование параметра. Все значения, отличные от пустой строки, должны быть уникальны. Используется для поиска параметра в сценариях и отчётах.
              • <type> - Тип данных. Варианты: 'text' => 'Текстовый', 'int' => 'Целый', 'bool' => 'Логический', 'float' => 'С плавающей точкой'
              • <unit_id> - ID единицы измерения. Может быть null
              • <hidden> - Флаг скрытия параметра. Скрытые параметры не видимы на витрине.
              • <ym_assign> - Код с яндекс-маркета. Используется для загрузки и выгрузки данных.
              • <secret> - Флаг скрытия параметра. Скрытые параметры не доступны без соответствующих привилегий.
          • <pos_param_groups> - Группы видов динамических параметров номенклатуры
            • <group id=N>

              id — уникальный числовой идентификатор. Обязательный атрибут.

              • <name> - Наименование группы
          • <pos_pcollections> - Коллекции динамических свойств номенклатуры
            • <collection id=N>

              id — уникальный числовой идентификатор. Обязательный атрибут.

              • <name> - Наименование коллекции
              • <params> - Параметры, входящие в колелкцию
                • <param>
                  • <param_id> - ID параметра, входящего в коллекцию
    • <documents> - документы
      • <document id=N> Документ
        • <type> - Тип документа. Варианты:
          1. 'postuplenie' - Поступление товаров и услуг со счётом-фактурой
          2. 'realizaciya' - Реализация товаров и услуг со счётом-фактурой
          3. 'zayavka' - Заявка покупателя
          4. 'pbank' - Приходный банковский ордер
          5. 'rbank' - Расходный банковский ордер
          6. 'pko' - Приходный кассовый ордер
          7. 'rko' - Расходный кассовый ордер
          8. 'peremeshenie' - Перемещение товаров
          9. 'perkas' - Перемещение средств
          10. 'doveren' - Доверенность
          11. 'redlojenie' - Предложение поставщика
          12. 'v_puti' - Товар в пути
          13. 'kompredl' - Коммерческое предложение
          14. 'dogovor' - Договор
          15. 'realiz_op' - Оперативная реализация
          16. 'specific' - Спецификация
          17. 'sborka' - Сборка товаров
          18. 'kordolga' - Корректировка долга агента
          19. 'korbonus' - Корректировка бонусов агента
          20. 'realiz_bonus' - Реализация за бонусы
          21. 'zsbor' - Заявка на сборку
        • <agent_id> - id агента
        • <date> - Дата и время документа Y-m-d H:i:s
        • <ok> - Флаг и дата проведения документа
        • <store_id> - id склада
        • <till_id> - id кассы
        • <bank_id> - id банка
        • <author_id> - id автора документа
        • <altnum> - Номер документа
        • <subtype> - Подтип документа
        • <sum> - Сумма документа
        • <nds> - Флаг *включать или выделять НДС*
        • <parent_doc_id> - id документа - предка
        • <mark_del> - Флаг и дата пометки на удаление
        • <firm_id> - id собственной организации
        • <contract_id> - id договора
        • <comment> - Комментарий
        • <payer_id> - id агента плательщика
        • <consignee_id> - id агента грузополучателя
        • <storekeeper_id> - id сотрудника-кладовщика
        • <packages_cnt> - Кол-во мест
        • <price_id> - id цены
        • <trusted_preson_id> - id доверенного агента
        • <trust_num> - номер доверенности
        • <trust_date> - дата выдачи доверенности
        • <positions> - Список номенклатуры документа
          • <position id=N> Элемент номенклатуры документа. ID - уникальный номер строки номенклатуры документа.
            • <pos_id> - id номенклатурной позиции
            • <cnt> - Количество
            • <price> - Цена
            • <gtd> - Номер таможенной декларации. Только для поступления.
            • <comm> - Комментарий
            • <page_id> - Страница номенклатурной таблицы (для документов с несколькими таблицами)
    • <counters> - Значения счётчиков на начало запрошенного периода
      • <nomenclature> - Складские остатки
        • <pos id=N> - ID наименования
          • <store id=N>F</store> - Количество F наименования на складе N
      • <debts> - Задолженности агентов
        • <agent id="1"> Код контрагента
          • <firm id="N">F</firm> - Остаток F по дебету фирме N

не закончено

Last modified 4 months ago Last modified on Jun 9, 2017, 1:04:07 PM