Экспорт покупателей с сайта - XML файл

На данной странице описана структура содержимого XML файла, использующегося для экспорта покупателей с сайта на платформе komiz.io в систему бухгалтерского учета, например «1C».

Ниже приведен сокращенный пример файла имеющего описываемый формат (полный пример приведен далее).

	<?xml version="1.0" encoding="utf-8"?>
	<users amount="2" sessionId="1234567890">    <!-- Содержит теги покупателей -->
		<user id="123" asId="">                  <!-- Содержит информацию об одном покупателе -->
			<time>2014-12-31 08:32:59</time>     <!-- Одно из полей покупателя -->
			...
		</user>
		<user code="87654321">
			...
		</user>
	</users>

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

Данные в файле содержатся в кодировке UTF-8.

Ниже перечислены основные особенности структуры файла.

  • Коренным тегом XML документа является users. Он является контейнером списка покупателей, каждому из которых соответствует дочерний тег user.
  • Тег user в дочерних тегах и атрибутах содержит информацию о самом покупателе.

ОБРАТИТЕ ВНИМАНИЕ! Все теги (и их атрибуты) обязательно присутствуют в файле (в рамках своего контекста, т.е. родительского тега). Но также нужно учесть, что количество повторяемых тегов варьируется относительно количества отображаемых ими «сущностей». Например, количество тегов user равно количеству покупателей в данном файле (т.е. может быть равным нулю).

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

Тег Контекст Содержимое Атрибуты Описание
additionalField user Строка
0-4294967296
name - [строка: 1-255] - Значение поля «Имя в интерфейсе» для данного дополнительного поля. «Дополнительное поле» покупателя
country user Строка
1-255
«Страна» покупателя
description user Строка
0-255
Поле покупателя «Описание»
discount user Дробное число, разделитель «точка», максимум два символа после точки, если она есть
0-100.00
Текущая накопительная скидка покупателя, в процентах
discount user Дробное число, разделитель «точка», максимум два символа после точки, если она есть
0-100.00
Текущая скидка покупателя, в процентах. Может быть как установленной вручную, так и расчитанной автоматически
email user Строка
0-255
«Email» покупателя
firstName user Строка
0-255
Поле покупателя «Имя»
lastActiveTime user Строка
Длина: 19
Формат: ISO 8601
Поле покупателя «Время последней активности».
Дата и время последней активности. Пример: 2014-12-31 08:32:59
lastActiveTime_unixtime user Целое число
0-2147483647
Поле покупателя «Время последней активности» в формате UNIXTIME.
Время последней активности. Пример: 495546300
lastName user Строка
0-255
Поле покупателя «Фамилия»
login user Строка
0-255
«Логин» покупателя
middleName user Строка
0-255
Поле покупателя «Отчество»
minDiscount user Дробное число, разделитель «точка», максимум два символа после точки, если она есть
0-100.00
Поле покупателя «Минимальная скидка», в процентах
passwordHash user Строка
64
Хеш пароля покупателя, сформированный по алгоритму SHA-256
priceType user Строка
0-255
Тип цен, с которым связан данный покупатель. Если пустая строка - значит покупатель не связан с типом цен
telephone user Строка
0-255
«Телефон» покупателя
time user Строка
Длина: 19
Формат: ISO 8601
Поле покупателя «Время создания».
Дата и время создания покупателя. Пример: 2014-12-31 08:32:59
time_unixtime user Целое число
0-2147483647
Поле покупателя «Время создания» в формате UNIXTIME.
Время создания покупателя. Пример: 495546300
user users Дочерние теги id - [число: 1-2147483647] - Идентификатор покупателя на сайте.
asId - [строка: 0-255] - Идентификатор покупателя в системе бухгалтерского учета (accounting system id).
Информация о покупателе
users Коренной Дочерние теги amount - (цело число: 0-2147483647) - Количество покупателей, которые передаются в рамках данного запроса (максимум данного числа определяется ограничениями)
amountAll - (цело число: 0-2147483647) - Общее количество покупателей, которые готовы к передаче
sessionId - (строка: 10) - Идентификатор сессии обмена данными с системой бухгалтерского учета
Является контейнером для тегов покупателей (user)

<?xml version="1.0" encoding="utf-8"?>
<users amount="1">
	<user id="7049" asId="">
		<time>2016-09-13 13:05:34</time>
		<time_unixtime>1473761134</time_unixtime>
		<lastActiveTime>2016-09-13 13:05:39</lastActiveTime>
		<lastActiveTime_unixtime>1473761139</lastActiveTime_unixtime>
		<country>Австрия</country>
		<passwordHash>ef797c8118f02dfb649607dd5d3f8c7623048c9c063d532cc95c5ed7a898a64f</passwordHash>
		<email>a1234567@site.com</email>
		<telephone>0987654321</telephone>
		<login>some_user</login>
		<firstName>Иван</firstName>
		<middleName>Васильевич</middleName>
		<lastName>Бунша</lastName>
		<description>Создан пользователем ПУ</description>
		<discount>0.00</discount>
		<additionalField name="Описание"></additionalField>
		<activeKey>1</activeKey>
	</user>
</users>