Examples
Здесь размещены просто наброски для примерного понимания направления движения стандарта. После утверждения первой версии будут созданы полноценные примеры.
// Пример передачи набора данных о физических товарах с отдельными примерами по темам.
{
//=============================================
// Метаданные
standart_name:'jsoncommerce', // Наименование стандарта
standart_version: '0.1', // Версия стандарта
created: '2017–03–10T11:30:00+09:00', // Дата и время подготовки файла по ISO 8601
completeness: 'full data', // Полнота данных. 'full data' весь прайс 'data changes'- только изменения относительно предыдущей передачи.
//exchange_version: 14, // Только если completeness: 'data changes'. Шаг версии единица.
//~~~~~~~~~~
type_data: 'product offer', // Тип передаваемых данных //Отдельными файлами инфу о продукте, отдельным предложение по ценам и количеству
supplier: { // Поставщик
name: 'Company X',
adress: 'Калининград, ул. Первая, 25',
telefon: '74012999999',
e-mail: 'sales@companyx.ru',
},
description: 'Прайс для мелкооптовых покупателей',
//=============================================
//Внутренние справочники
//---------------------------------------------
// Объявляем таксономию
// /!\ Независимо от каталога все id категорий должны быть уникальны
catalog: [
{ // Простой плоский (одноуровневый каталог)
id: 'Производители',
name: 'Производители',
category: [
{
id: 'Bosch',
name: 'Bosch',
},
{
id: 'LG',
name: 'LG',
},
]
},
{ // Иерархичный (рекурсивный) каталог
id: 'cat1',
name: 'Каталог товаров',
description: 'Это основной каталог товаров',
category: [
{
id: '1b',
name: 'Бытовая техника',
category: [
{
id: '2stir',
name: 'Стиральные машины',
},
{
id: '2hol',
name: 'Холодильники',
},
]
}
]
}
],
// Объявляем характеристики
characteristic: [
{
id: '1',
name: 'Мощность',
unit: 'kWt',
type: 'numeric',
group: 'Электроприборы',
},
{
id: '2',
name: 'Цвет',
type: 'color',
group: 'Общие',
}
],
//---------------------------------------------
// Объявляем склады
warehouse: [
{
id: 'whouse1',
name: 'Магазин на улице Мира',
adress: 'Проспект Мира, дом 136',
description: 'За поворотом где большая вывеска',
},
{
id: 'whouse2',
name: 'Склад на окружной',
},
],
//---------------------------------------------
// Объявляем валюты
currency_base: 'RUB',
currency_rate:
{
USD: 'RUB*80', // Явно указывается коэффициент пересчета долларовых цен в рубли.
EUR: 'cbrf(EUR)', // Равняется курсу eвро, определенным ЦБРФ.
UED: 'cbrf(USD)*1.05', // Придуманная условная единица, равна официальному в России курсу доллара +5%
},
//А не правильнее ли так написать с массивами? или так только кода там объекты?
currency_base: 'RUB',
currency_rate: [
USD: 'RUB*80',
EUR: 'RUB*90',
KZT: 'cbrf(KZT)*1.1',
UE1: 'cbrf(USD)*1.1',
]
//=============================================
// Значения по умолчанию
//---------------------------------------------
// Общие условия и параметры подходящие для большинства продуктов (значения по умолчанию) для уменьшения объема передаваемых данных
product_type: 'goods',
unit: 'pcs', // основная единица количества товаров
unit_weight: 'kg',
unit_height: 'm',
currency: 'RUB',
tax_vat_rate: '20', // 20, что равно 20%. 'not' - не является плательщиком НДС, не то же самое, что 0%.
// can_ordered: true, // Этот товар можно дозаказать свер того, что доступно.
//=============================================
// Передача данных о товаре
// /!\ Здесь product разбиты на несколько частей исключительно для облегчения восприятия рассматриваемой тематики.
//---------------------------------------------
// Описание товара
product: [
{
id: '43250340-7291',
article: 'm-diano-35x67-baige',
name: 'Керамическая настенная плитка Mayolica DAINO бежевая 34X67',
description: 'Хорошая плитка с качественной глазурью',
img_url: 'example.com/img/3434234234.jpg',
},
],
//---------------------------------------------
// Связь товара с таксономией
product: [
{
id: 'product1234',
name: 'Стиральная машина LG10501',
category_id: ['LG','2stir', '2suh'], //указываем id категорий, которые были объявлены в таксономии
}
{ // Вариант когда категоризация единственная и не объявляется заранее
id: 'product5',
name: 'Молоко',
unit: 'pc',
category: 'milk',
}
],
//---------------------------------------------
// Указываем характеристики в товаре
product:[
{
id: 'product1',
name: 'Пряжа шерстяная',
characteristic: [
{
id: '1',
value:'1.5',
}
{
id: '2',
value:'Вишневый',
color: '#C6214B',
}
],
//---------------------------------------------
// Передача цен
products: [
{
id: 'product1',
name: 'Плитка керамическая Лира настенная бежевая 40х40',
unit: 'm2',
price_retail: 1199, // Рекомендация продавать в розницу по этой цене
price_vendor: 990, // Сделка между сторонами будет происходить по цене 990 руб.
},
{
id: 'product2',
name: 'Пряжа шерстяная',
unit: 'kg',
currency: 'usd', // Цены данного продукта указаны в долларах.
price_retail: 14,
price_vendor: 10,
},
{
id: 'product5',
name: 'Стиральная машина LG10501',
price: 10800,
price_retail: 12990, // Цены товара в рублях, но
// Возможно не нужно разрешать разные цены в рамках одного предложения
price_vendor: {value: 700, currency: 'USD'}, // Цена поставщика в иностранной валюте
},
],
//---------------------------------------------
// Передаем данные по наличию товаров
products: [
{
id: 'product5',
name: 'Стиральная машина LG10501',
unit: 'pcs',
avl: 2, // Две машинки доступны для заказа.
}
{
id: 'product1',
name: 'Плитка керамическая Лира настенная бежевая 40х40',
unit: 'm2',
avl: 1051, // 1051 кв.м можно приобрести
reserved: 200, // 200 кв.м ещё лежит на складе, но скоро уедет другим покупателям
can_ordered: false, // Этот товар нельзя дозаказать свер того, что доступно (коллекция устарела).
},
{
id: 'product2',
name: 'Молоко 1 литр',
avl: 692,
warehouse: [ // Данные по остаткам в разрезе складов.
{warehouse_id:'whouse1', avl: 48,},
{warehouse_id:'whouse2', avl: 644,},
]
},
],
//---------------------------------------------
// Передача данных об упаковке товара
products: [
{
id: 'product5',
name: 'Молоко',
unit: 'pc',
pck: { // Один вид упаковки содержащий одну единицу товара.
name:'Пакет 1 л',
weight: 1.03,
},
},
{ // Плитка упакована в картон по 8 шт, и складывается в палеты.
id: 'product1',
name: 'Плитка керамическая Лира настенная бежевая 40х40',
unit: 'm2',
pck: [
{
name: 'одна плитка',
qty: 0.16,
weight: 0.2,
heigt: 5,
unit_height: 'mm',
width: 0.4,
length: 0.4,
},
{
name: 'Картонная упаковка',
qty: 1.28,
gweight: 1.7,
gheigt: 0.60,
gwidth: 0.405,
glength: 0.405,
contains: 0.16, // Содержит упаковки указанного объема, можно вычислить количество 1.28/0.16=8шт.
},
{
name: 'Палета',
qty: 384,
gweight: 550,
contains: 1.28,
},
]
},
{ // Химреактив, развешиваемый на определенные порции.
id:'prodict2',
name: 'Кобальта (II) алюминат, 99%',
unit: 'g',
qty: 1000,
pck: [ qty:25, qty: 50, qty: 100, qty: 250],
},
{
id:'prodict14',
name: 'Хлопья овсяные',
unit: 'g',
qty: 1000,
pck: {
name: 'пачка 900г',
pck_code: 19283928,
},
}
],
//---------------------------------------------
// Кратность продажи
products: [
{
id: 'product1',
name: 'Плитка керамическая Лира настенная бежевая 40х40',
price: 990,
unit: 'm2',
multiplicity: 1.28, // Продаем кратно упаковке 1,28 кв. метров.
min 128, // Минимальная партия покупки 128 кв. м. (10 пачек).
},
{
id: 'product2',
name: 'Пряжа шерстяная',
price: 800,
unit: 'kg',
multiplicity: 0.2, // Продаем пряжу на развес по 200 грамм (160 руб)
},
{
id: 'prodict3',
name: 'Соль поваренная',
price: 10, // Цена не зависит от развеса упаковки
unit: 'g',
pck: [ gty: 10, qty: 100, qty: 1000,],
multiplicity: 'pck', //Продаем химреактивы кратно упаковкам. - так правильнее, т.к. будет что в корзине указывать
},
{
id:'prodict4',
name: 'Кобальта (II) алюминат, 99%',
price: {pck:25, value: 250},{pck:50, value: 400},], // Цена каждой упаковки индивидуальна
unit: 'g',
pck: [ gty:25, qty: 50, qty: 100, qty: 250,],
multiplicity: 'pck',
},
],
multiplicity: [ 25, 50, 100, 250 ]', // Продаем химреактивы кратно упаковкам.
Файлы для скачивания: