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

Version 12 (modified by BlackLight, 8 years ago) (diff)

--

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

Обмен осуществляется при помощи POST запросов по протоколам http или https с http аутентификацией url /1c_exchange.php.
Направление синхронизации определяет параметр mode:

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

Экспорт

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

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

Импорт

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

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

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

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

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

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

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

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

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

      • <message> - Текстовое сообщение об успешной или ошибочной выгрузке
      • <timestamp> - unixtime выгрузки. Нужен для частичной синхронизации.
    • <refbooks> - справочники
      • <firms> - собственные организации.
        • <firm id=N> Элемент справочника. id — уникальный числовой идентификатор. Обязательный атрибут.
          • <name> - Название организации. Обязательный параметр.
          • <director> - ФИО директора
          • <manager> - ФИО менеджера
          • <buhgalter> - ФИО бухгалтера
          • <kladovshik> - ФИО кладовщика
          • <address> - Юридический адрес
          • <realaddress> - Почтовый адрес
          • <storesender> - Данные грузоотправителя
          • <phone> - Номер телефона
          • <okpo> - ОКПО
          • <nds> - Ставка НДС по умолчанию
        • <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 — уникальный числовой идентификатор. Обязательный атрибут.
              • <worker> - Флаг доступности сотрудника для выбора в документах.
              • <worker_email> - Служебный email сотрудника
              • <worker_phone> - Служебный телефон сотрудника
              • <worker_real_name> - ФИО сотрудника
              • <worker_real_address> - Служебный адрес сотрудника
              • <worker_post_name> - Должность сотрудника
          • <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> - КПП
                • <dir_fio> - ФИО директора юр.лица
                • <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. Обязательный атрибут.
                    • <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> - Название группы. Обязательный параметр.
                • <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> - Размер ставки НДС. Если не задан - используется ставка организации по умолчанию.
                • <prices> - Список переопределенных цен
                  • <price> - Элемент списка
                    • <price_id> - Идентификато переопределяемой цены
                    • <type> - Тип наценки. pp — процентная наценка, abs — абсолютная наценка, fix — фиксированная цена
                    • <value> - Значение наценки
                    • <accuracy> - Точность округления. Число показывает, до какого знака после точки округлять. Отрицательные значения — до какого знака до точки округлять.
                    • <direction> - направление округления. 1 — вверх, 0 — к ближайшему, -1 — вниз
    • <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' - Заявка на сборку
        • <date> - Дата и время документа в UNIXTIME
        • <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> - Страница номенклатурной таблицы (для документов с несколькими таблицами)
            • <nds> - Сумма ндс. Не может быть импортирована.

не закончено