goods-exporter 0.3.3 → 0.3.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -1
- package/dist/bundle.d.ts +406 -421
- package/dist/cjs/index.cjs +155 -119
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/esm/index.mjs +155 -119
- package/dist/esm/index.mjs.map +1 -1
- package/package.json +8 -1
package/dist/bundle.d.ts
CHANGED
|
@@ -1,344 +1,344 @@
|
|
|
1
1
|
interface Product {
|
|
2
2
|
/**
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
3
|
+
* **ID товара**
|
|
4
|
+
*
|
|
5
|
+
* Любая последовательность длиной до 80 знаков. В нее могут входить английские и русские (кроме ё) буквы, цифры и символы . , / \ ( ) [ ] - = _
|
|
6
|
+
*
|
|
7
|
+
* Пример: belaya-kofta-12345
|
|
8
|
+
*/
|
|
9
9
|
productId: number;
|
|
10
10
|
/**
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
* **Родительскй SKU**
|
|
12
|
+
*
|
|
13
|
+
* Любая последовательность длиной до 80 знаков. В нее могут входить английские и русские (кроме ё) буквы, цифры и символы . , / \ ( ) [ ] - = _
|
|
14
|
+
*
|
|
15
|
+
* Пример: belaya-kofta-12345
|
|
16
|
+
*/
|
|
17
17
|
parentId?: number;
|
|
18
18
|
/**
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
19
|
+
* **SKU**
|
|
20
|
+
*
|
|
21
|
+
* Любая последовательность длиной до 80 знаков. В нее могут входить английские и русские (кроме ё) буквы, цифры и символы . , / \ ( ) [ ] - = _
|
|
22
|
+
*
|
|
23
|
+
* Пример: belaya-kofta-12345
|
|
24
|
+
*/
|
|
25
25
|
variantId: number;
|
|
26
26
|
/**
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
27
|
+
* **Название**
|
|
28
|
+
*
|
|
29
|
+
* Составляйте название по схеме: тип + бренд или производитель + модель + особенности, если есть (например, цвет, размер или вес) и количество в упаковке.
|
|
30
|
+
*
|
|
31
|
+
* Не включайте в название условия продажи (например, «скидка», «бесплатная доставка» и т. д.), эмоциональные характеристики («хит», «супер» и т. д.). Не пишите слова большими буквами — кроме устоявшихся названий брендов и моделей.
|
|
32
|
+
*
|
|
33
|
+
* Оптимальная длина — 50–60 символов, максимальная — 150.
|
|
34
|
+
*
|
|
35
|
+
* Составлять хорошие названия помогут [рекомендации](https://yandex.ru/support/marketplace/assortment/fields/title.html).
|
|
36
|
+
*
|
|
37
|
+
* Пример: Ударная дрель Makita HP1630, 710 Вт
|
|
38
|
+
*/
|
|
39
39
|
title: string;
|
|
40
40
|
/**
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
41
|
+
* **Описание**
|
|
42
|
+
*
|
|
43
|
+
* Подробное описание товара: например, его преимущества и особенности.
|
|
44
|
+
*
|
|
45
|
+
* Не давайте в описании инструкций по установке и сборке. Не используйте слова «скидка», «распродажа», «дешевый», «подарок» (кроме подарочных категорий), «бесплатно», «акция», «специальная цена», «новинка», «new», «аналог», «заказ», «хит». Не указывайте никакой контактной информации и не давайте ссылок.
|
|
46
|
+
*
|
|
47
|
+
* Можно использовать теги:
|
|
48
|
+
*
|
|
49
|
+
** <h>, <h1>, <h2> и так далее — для заголовков;
|
|
50
|
+
** <br> и <p> — для переноса строки;
|
|
51
|
+
** <ol> — для нумерованного списка;
|
|
52
|
+
** <ul> — для маркированного списка;
|
|
53
|
+
** <li> — для создания элементов списка (должен находиться внутри <ol> или <ul>);
|
|
54
|
+
** <div> — поддерживается, но не влияет на отображение текста.
|
|
55
|
+
* Оптимальная длина — 400–600 символов, максимальная — 6000.
|
|
56
|
+
*
|
|
57
|
+
* Составить хорошее описание помогут рекомендации.
|
|
58
|
+
*
|
|
59
|
+
* Пример: В комплекте с детским микроскопом есть все, что нужно вашему ребенку для изучения микромира
|
|
60
|
+
*/
|
|
61
61
|
description: string;
|
|
62
62
|
/**
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
63
|
+
* **Бренд**
|
|
64
|
+
*
|
|
65
|
+
* Название бренда или производителя.
|
|
66
|
+
*
|
|
67
|
+
* Записывайте название так, как его пишет сам бренд.
|
|
68
|
+
*
|
|
69
|
+
* Пример: LEVENHUK
|
|
70
|
+
*/
|
|
71
71
|
vendor?: string;
|
|
72
72
|
/**
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
73
|
+
* **Артикул производителя**
|
|
74
|
+
*
|
|
75
|
+
* Код товара, который ему присвоил производитель.
|
|
76
|
+
*
|
|
77
|
+
* Если артикулов несколько, укажите их через запятую.
|
|
78
|
+
*
|
|
79
|
+
* Пример: VNDR-0005A, VNDR-0005B
|
|
80
|
+
*/
|
|
81
81
|
vendorCode?: string;
|
|
82
82
|
/**
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
83
|
+
* **Дата выхода**
|
|
84
|
+
*
|
|
85
|
+
* Пример: 01.01.2000
|
|
86
|
+
*/
|
|
87
87
|
saleDate?: string;
|
|
88
88
|
/**
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
89
|
+
* **Категория в магазине**
|
|
90
|
+
*
|
|
91
|
+
* Категория, к которой вы относите товар. Она помогает точнее определить для товара категорию на Маркете.
|
|
92
|
+
*
|
|
93
|
+
* Указывайте конкретные категории — например, набор ножей лучше отнести к категории Столовые приборы, а не просто Посуда.
|
|
94
|
+
*
|
|
95
|
+
* Выбирайте категории, которые описывают товар, а не абстрактный признак — например, лучше указать Духи, а не Подарки.
|
|
96
|
+
*
|
|
97
|
+
* Содержит номер категории, а не ее название.
|
|
98
|
+
*/
|
|
99
99
|
categoryId: number;
|
|
100
100
|
/**
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
101
|
+
* **Страна производства**
|
|
102
|
+
*
|
|
103
|
+
* Страна, где был произведен товар.
|
|
104
|
+
*
|
|
105
|
+
* Записывайте названия стран так, как они записаны в [списке](https://yastatic.net/s3/doc-binary/src/support/market/ru/countries.xlsx).
|
|
106
|
+
*
|
|
107
|
+
* Пример: Россия
|
|
108
|
+
*/
|
|
109
109
|
countryOfOrigin?: string;
|
|
110
110
|
/**
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
111
|
+
* **Изображение**
|
|
112
|
+
*
|
|
113
|
+
* До двадцати изображений, которые показываются на карточке товара.
|
|
114
|
+
*
|
|
115
|
+
* Принимаются jpg- или png-изображения товара, соответствующие [требованиям](https://yandex.ru/support/marketplace/assortment/fields/images.html).
|
|
116
|
+
*
|
|
117
|
+
* В кабинете изображения добавляются в виде файлов. В Excel-файле — в виде ссылок через запятую. Первое фото становится основным.
|
|
118
|
+
*
|
|
119
|
+
* Чтобы изменить изображение, выложите новое по новой ссылке, иначе картинка не обновится.
|
|
120
|
+
*/
|
|
121
121
|
images?: string[];
|
|
122
122
|
/**
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
123
|
+
* **Видео**
|
|
124
|
+
*
|
|
125
|
+
* Видеоиллюстрации для карточки товара.
|
|
126
|
+
*
|
|
127
|
+
* Видео должно соответствовать [требованиям](https://yandex.ru/support/marketplace/assortment/fields/video.html).
|
|
128
|
+
*
|
|
129
|
+
* Можно добавить не больше 6 видео.
|
|
130
|
+
*
|
|
131
|
+
* В кабинете можно загрузить видеофайлы. В Excel-шаблоне укажите ссылки на файлы.
|
|
132
|
+
*/
|
|
133
133
|
videos?: string[];
|
|
134
134
|
/**
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
135
|
+
* **Базовая цена**
|
|
136
|
+
*
|
|
137
|
+
* Цена указывается в рублях. Число должно быть целым.
|
|
138
|
+
*
|
|
139
|
+
* Пример:
|
|
140
|
+
*
|
|
141
|
+
* 240
|
|
142
|
+
*/
|
|
143
143
|
price: number;
|
|
144
144
|
/**
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
145
|
+
* **Цена до скидки**
|
|
146
|
+
*
|
|
147
|
+
* Цена указывается в рублях. Число должно быть целым.
|
|
148
|
+
*
|
|
149
|
+
* Вы можете указать цену со скидкой от 5 до 75 %.
|
|
150
|
+
*
|
|
151
|
+
* Пример:
|
|
152
|
+
*
|
|
153
|
+
* 250
|
|
154
|
+
*/
|
|
155
155
|
oldPrice?: number;
|
|
156
156
|
/**
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
157
|
+
* **Себестоимость**
|
|
158
|
+
*
|
|
159
|
+
* Цена указывается в рублях. Число должно быть целым.
|
|
160
|
+
*
|
|
161
|
+
* Пример:
|
|
162
|
+
*
|
|
163
|
+
* 200
|
|
164
|
+
*/
|
|
165
165
|
purchasePrice?: number;
|
|
166
166
|
/**
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
167
|
+
* **Дополнительные расходы**
|
|
168
|
+
*
|
|
169
|
+
* Дополнительные расходы на товар. Например, на доставку или упаковку.
|
|
170
|
+
*
|
|
171
|
+
* После заполнения этого поля в калькуляторе и на странице управления ценами рассчитается потенциальная маржинальность товара.
|
|
172
|
+
*
|
|
173
|
+
* Цена указывается в рублях. Число должно быть целым.
|
|
174
|
+
*
|
|
175
|
+
* Пример:
|
|
176
|
+
*
|
|
177
|
+
* 75
|
|
178
|
+
*/
|
|
179
179
|
additionalExpenses?: number;
|
|
180
180
|
/**
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
181
|
+
* **Порог для скидок с Маркетом**
|
|
182
|
+
*
|
|
183
|
+
* Цена указывается в рублях. Число должно быть целым.
|
|
184
|
+
*
|
|
185
|
+
* Пример:
|
|
186
|
+
*
|
|
187
|
+
* 300
|
|
188
|
+
*/
|
|
189
189
|
cofinancePrice?: number;
|
|
190
190
|
/**
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
191
|
+
* **Валюта (DBS)**
|
|
192
|
+
*
|
|
193
|
+
* Валюта, в которой указана цена товара. Покупателям Маркет показывает цену в рублях, пересчитывая ее по курсу Центробанка.
|
|
194
|
+
*
|
|
195
|
+
* Поле используется, если для кабинета еще не включена работа с базовыми ценами.
|
|
196
|
+
*
|
|
197
|
+
* Поддерживаются российские и белорусские рубли, евро, доллары, украинские гривны и казахстанские тенге.
|
|
198
|
+
*
|
|
199
|
+
* В кабинете валюту можно просто выбрать из списка. В Excel-файле указывается код валюты: RUR, BYN, EUR, USD, UAN, KZT.
|
|
200
|
+
*/
|
|
201
201
|
currency: Currency;
|
|
202
202
|
/**
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
203
|
+
* **Ссылка на страницу товара**
|
|
204
|
+
*
|
|
205
|
+
* Адрес страницы на вашем сайте с фотографиями и описанием товара.
|
|
206
|
+
*
|
|
207
|
+
* Максимальная длина URL — 512 символов. Записывайте его согласно стандарту RFC 3986.
|
|
208
|
+
*
|
|
209
|
+
* Пример: http://best.seller.ru/product_page.asp?pid=12346
|
|
210
|
+
*/
|
|
211
211
|
url?: string;
|
|
212
212
|
/**
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
213
|
+
* **Убрать из продажи**
|
|
214
|
+
*
|
|
215
|
+
* Поле позволяет приостановить продажу товара.
|
|
216
|
+
*
|
|
217
|
+
* Укажите значение true, если нужно приостановить продажу.
|
|
218
|
+
*/
|
|
219
219
|
disabled?: boolean;
|
|
220
220
|
/**
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
221
|
+
* **Доступное количество товара**
|
|
222
|
+
*
|
|
223
|
+
* Общее количество товара, доступное для продажи
|
|
224
|
+
*
|
|
225
|
+
* Укажите 0, если товара нет в наличии.
|
|
226
|
+
*
|
|
227
|
+
* Пример: 7
|
|
228
|
+
*/
|
|
229
229
|
count?: number;
|
|
230
230
|
/**
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
231
|
+
* **Товар в наличии (DBS)**
|
|
232
|
+
*
|
|
233
|
+
* Поле указывает, есть ли товар в наличии.
|
|
234
|
+
*/
|
|
235
235
|
available?: boolean;
|
|
236
236
|
/**
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
237
|
+
* **Минимальное количество товара**
|
|
238
|
+
*
|
|
239
|
+
* Если значение задано, покупатель не сможет заказать меньше единиц товара. Ограничение не работает, когда товара на складе осталось меньше этого количества — тогда покупатель сможет сделать заказ на остаток.
|
|
240
|
+
*
|
|
241
|
+
* Целое число.
|
|
242
|
+
*/
|
|
243
243
|
minQuantity?: number;
|
|
244
244
|
/**
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
245
|
+
* **Квант продажи**
|
|
246
|
+
*
|
|
247
|
+
* Если значение задано, покупатель сможет добавить к заказу только кратное количество товара. Ограничение не работает, когда на складе осталось меньше этого количества — тогда покупатель сможет сделать заказ на остаток.
|
|
248
|
+
*
|
|
249
|
+
* Целое число.
|
|
250
|
+
*/
|
|
251
251
|
stepQuantity?: number;
|
|
252
252
|
/**
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
253
|
+
* **Штрихкод**
|
|
254
|
+
*
|
|
255
|
+
* Указывайте в виде последовательности символов. Подойдут коды EAN-13, EAN-8, UPC-A, UPC-E или Code 128.
|
|
256
|
+
*
|
|
257
|
+
* Для книг указывайте ISBN.
|
|
258
|
+
*
|
|
259
|
+
* Для товаров [определенных категорий и торговых марок](https://yastatic.net/s3/doc-binary/src/support/market/ru/yandex-market-list-for-gtin.xlsx) штрихкод должен быть действительным кодом GTIN. Обратите внимание: внутренние штрихкоды, начинающиеся на 2 или 02, и коды формата Code 128 не являются GTIN.
|
|
260
|
+
*
|
|
261
|
+
* Если штрихкодов несколько, напишите все через запятую.
|
|
262
|
+
*
|
|
263
|
+
* Пример: 46012300000000
|
|
264
|
+
*/
|
|
265
265
|
barcode?: string;
|
|
266
266
|
/**
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
267
|
+
* **Код ТН ВЭД**
|
|
268
|
+
*
|
|
269
|
+
* Для некоторых категорий товаров код ТН ВЭД обязателен. Если это касается ваших товаров, вы получите уведомление в каталоге.
|
|
270
|
+
*
|
|
271
|
+
* 10 или 14 цифр без пробелов.
|
|
272
|
+
*
|
|
273
|
+
* Пример: 8517610008
|
|
274
|
+
*/
|
|
275
275
|
codesTN?: string[];
|
|
276
276
|
/**
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
277
|
+
* **С какого возраста пользоваться**
|
|
278
|
+
*
|
|
279
|
+
* Если товар не предназначен для детей младше определенного возраста, укажите это.
|
|
280
|
+
*
|
|
281
|
+
* Возрастные ограничения можно задавать в годах (с нуля, с 6, 12, 16 или 18) или в месяцах (любое число от 0 до 12).
|
|
282
|
+
*/
|
|
283
283
|
age?: {
|
|
284
|
-
unit:
|
|
284
|
+
unit: "year" | "month";
|
|
285
285
|
value: number;
|
|
286
286
|
};
|
|
287
287
|
/**
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
288
|
+
* **Вес с упаковкой**
|
|
289
|
+
*
|
|
290
|
+
* Вес товара с упаковкой.
|
|
291
|
+
*
|
|
292
|
+
* Единица измерения — килограммы. Можно дроби: разделитель — точка или запятая, не больше трех цифр после него.
|
|
293
|
+
*
|
|
294
|
+
* Пример: 3.1
|
|
295
|
+
*/
|
|
296
296
|
weight?: number;
|
|
297
297
|
/**
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
298
|
+
* **Габариты с упаковкой**
|
|
299
|
+
*
|
|
300
|
+
* Длина, ширина, высота в упаковке.
|
|
301
|
+
*
|
|
302
|
+
* Единица измерения — сантиметры. Можно дроби: разделитель — точка или запятая, не больше трех цифр после него.
|
|
303
|
+
*
|
|
304
|
+
* Пример: 20.1/20.551/22.5
|
|
305
|
+
*/
|
|
306
306
|
dimensions?: string;
|
|
307
307
|
/**
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
308
|
+
* **Товар занимает больше одного места**
|
|
309
|
+
*
|
|
310
|
+
* Если товар занимает одно место (представляет собой одну коробку, упаковку и так далее), оставьте поле пустым. Если товар занимает несколько мест — укажите их количество. Например, кондиционер занимает два места — внешний и внутренний блоки в двух коробках.
|
|
311
|
+
*
|
|
312
|
+
* Укажите количество мест.
|
|
313
|
+
*
|
|
314
|
+
* Пример: 2
|
|
315
|
+
*/
|
|
316
316
|
boxCount?: number;
|
|
317
317
|
/**
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
318
|
+
* **Ставка НДС**
|
|
319
|
+
*
|
|
320
|
+
* Значение ставки НДС для товара.
|
|
321
|
+
*
|
|
322
|
+
* Выберите одно из значений:
|
|
323
|
+
*
|
|
324
|
+
** НДС не облагается — 6 или NO_VAT
|
|
325
|
+
*
|
|
326
|
+
** 0 % — 5 или VAT_0
|
|
327
|
+
*
|
|
328
|
+
** 10 % — 2 или VAT_10
|
|
329
|
+
*
|
|
330
|
+
** 20 % — 7 или VAT_20
|
|
331
|
+
*
|
|
332
|
+
* Если не заполнено, Маркет устанавливает ставку, соответствующую схеме налогообложения.
|
|
333
|
+
*
|
|
334
|
+
* Пример: VAT_20
|
|
335
|
+
*/
|
|
336
336
|
vat: Vat;
|
|
337
337
|
/**
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
338
|
+
* **Характеристики, которые есть только у товаров конкретной категории**
|
|
339
|
+
*
|
|
340
|
+
* Кроме общих свойств, у товара есть характеристики, присущие конкретной категории, к которой он относится. Например, у велосипеда есть размер рамы, а детское пюре бывает овощное, мясное или фруктовое.
|
|
341
|
+
*/
|
|
342
342
|
params?: IParam[];
|
|
343
343
|
/**
|
|
344
344
|
* **Свойства товара**
|
|
@@ -347,129 +347,129 @@ interface Product {
|
|
|
347
347
|
*/
|
|
348
348
|
properties?: IParam[];
|
|
349
349
|
/**
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
350
|
+
* **Теги**
|
|
351
|
+
*
|
|
352
|
+
* Придумайте любое название — его можно будет изменить после.
|
|
353
|
+
*
|
|
354
|
+
* Максимальная длина тега — 20 символов.
|
|
355
|
+
*
|
|
356
|
+
* У одного товара — максимум 10 тегов.
|
|
357
|
+
*
|
|
358
|
+
* Всего можно создать не больше 50 разных тегов.
|
|
359
|
+
*
|
|
360
|
+
* Пример: apple, до 500 рублей
|
|
361
|
+
*/
|
|
362
362
|
tags?: string[];
|
|
363
363
|
/**
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
364
|
+
* **Товар для взрослых**
|
|
365
|
+
*
|
|
366
|
+
* Параметр включает для товара пометку 18+. Устанавливайте ее только для товаров, которые относятся к удовлетворению сексуальных потребностей.
|
|
367
|
+
*/
|
|
368
368
|
adult?: boolean;
|
|
369
369
|
/**
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
370
|
+
* **Цифровой товар**
|
|
371
|
+
*
|
|
372
|
+
* Параметр, устанавливаемый для цифровых товаров, которые просто скачиваются.
|
|
373
|
+
*/
|
|
374
374
|
downloadable?: boolean;
|
|
375
375
|
/**
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
376
|
+
* **Срок годности**
|
|
377
|
+
*
|
|
378
|
+
* Период с момента изготовления, по прошествии которого товар становится непригоден.
|
|
379
|
+
*
|
|
380
|
+
* Указывайте срок, указанный на банке или упаковке. Текущая дата, дата поставки или дата отгрузки значения не имеет.
|
|
381
|
+
*
|
|
382
|
+
* Срок можно указывать в годах, месяцах, днях, неделях и часах.
|
|
383
|
+
*
|
|
384
|
+
* Обязательно указывайте срок, если он есть.
|
|
385
|
+
*
|
|
386
|
+
* Продолжительность указывается согласно ISO 8601, то есть в виде строчки, начинающейся буквой P:
|
|
387
|
+
*
|
|
388
|
+
** P1Y — 1 год;
|
|
389
|
+
** P1Y6M — 1 год и 6 месяцев;
|
|
390
|
+
** P15D — 15 дней.
|
|
391
|
+
*/
|
|
392
392
|
validityPeriod?: string;
|
|
393
393
|
/**
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
394
|
+
* **Комментарий к сроку годности**
|
|
395
|
+
*
|
|
396
|
+
* Поле предназначено для описаний условий хранения.
|
|
397
|
+
*
|
|
398
|
+
* Не длиннее 250 знаков и без спецсимволов.
|
|
399
|
+
*
|
|
400
|
+
* Пример: Хранить в сухом помещении
|
|
401
|
+
*/
|
|
402
402
|
validityComment?: string;
|
|
403
403
|
/**
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
404
|
+
* **Срок службы**
|
|
405
|
+
*
|
|
406
|
+
* В течение срока службы товар должен исправно выполнять свою функцию.
|
|
407
|
+
*
|
|
408
|
+
* Обязательно указывайте срок, если он есть.
|
|
409
|
+
*
|
|
410
|
+
* Срок можно указывать в годах, месяцах и днях.
|
|
411
|
+
* Продолжительность указывается согласно ISO 8601, то есть в виде строчки, начинающейся буквой P:
|
|
412
|
+
*
|
|
413
|
+
** P1Y — 1 год;
|
|
414
|
+
** P1Y2M — 1 год и 2 месяца;
|
|
415
|
+
** P15D — 15 дней;
|
|
416
|
+
** P2Y10D — 2 года, 10 дней;
|
|
417
|
+
** P2Y6M10D — 2 года, 6 месяцев и 10 дней.
|
|
418
|
+
*/
|
|
419
419
|
serviceLifePeriod?: string;
|
|
420
420
|
/**
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
421
|
+
* **Комментарий к сроку службы**
|
|
422
|
+
*
|
|
423
|
+
* Поле предназначено для описаний условий использования.
|
|
424
|
+
*
|
|
425
|
+
* Не длиннее 250 знаков и без спецсимволов.
|
|
426
|
+
*
|
|
427
|
+
* Пример: Использовать при температуре не ниже −10 градусов
|
|
428
|
+
*/
|
|
429
429
|
serviceLifeComment?: string;
|
|
430
430
|
/**
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
431
|
+
* **Гарантийный срок**
|
|
432
|
+
*
|
|
433
|
+
* В течение какого времени можно бесплатно заменить или починить товар.
|
|
434
|
+
*
|
|
435
|
+
* Срок можно указывать в годах, месяцах или днях.
|
|
436
|
+
*
|
|
437
|
+
* Продолжительность указывается согласно ISO 8601, то есть в виде строчки, начинающейся буквой P:
|
|
438
|
+
*
|
|
439
|
+
** P1Y — 1 год;
|
|
440
|
+
** P1Y2M — 1 год и 2 месяца;
|
|
441
|
+
** P15D — 15 дней;
|
|
442
|
+
** P2Y10D — 2 года, 10 дней;
|
|
443
|
+
** P2Y6M10D — 2 года, 6 месяцев и 10 дней.
|
|
444
|
+
*/
|
|
445
445
|
warrantyPeriod?: string;
|
|
446
446
|
/**
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
447
|
+
* **Комментарий к гарантийному сроку**
|
|
448
|
+
*
|
|
449
|
+
* Поле предназначено для описания особенностей гарантийных условий.
|
|
450
|
+
*
|
|
451
|
+
* Указывайте только то, что относится к гарантии изготовителя.
|
|
452
|
+
*
|
|
453
|
+
* Не длиннее 250 знаков и без спецсимволов.
|
|
454
|
+
*
|
|
455
|
+
* Пример: Гарантия на аккумулятор — 6 месяцев
|
|
456
|
+
*/
|
|
457
457
|
warrantyComment?: string;
|
|
458
458
|
/**
|
|
459
|
-
|
|
460
|
-
|
|
459
|
+
* **Официальная гарантия производителя**
|
|
460
|
+
*/
|
|
461
461
|
manufacturerWarranty?: boolean;
|
|
462
462
|
/**
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
463
|
+
* **Номер документа**
|
|
464
|
+
*
|
|
465
|
+
* Номер документа на товар: сертификата, декларации соответствия и т. п.
|
|
466
|
+
*
|
|
467
|
+
* Прежде чем указывать номер документа, загрузите скан документа через кабинет.
|
|
468
|
+
*
|
|
469
|
+
* Укажите номер документа.
|
|
470
|
+
*
|
|
471
|
+
* Пример: 6241421
|
|
472
|
+
*/
|
|
473
473
|
certificate?: string;
|
|
474
474
|
}
|
|
475
475
|
declare enum Vat {
|
|
@@ -488,31 +488,31 @@ declare enum Currency {
|
|
|
488
488
|
}
|
|
489
489
|
interface IParam {
|
|
490
490
|
/**
|
|
491
|
-
|
|
492
|
-
|
|
491
|
+
* **Название характеристики**
|
|
492
|
+
*/
|
|
493
493
|
key: string;
|
|
494
494
|
/**
|
|
495
|
-
|
|
496
|
-
|
|
495
|
+
* **Значение**
|
|
496
|
+
*/
|
|
497
497
|
value: string;
|
|
498
498
|
}
|
|
499
499
|
|
|
500
500
|
interface Category {
|
|
501
501
|
/**
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
502
|
+
* **ID категории**
|
|
503
|
+
*
|
|
504
|
+
* Целое число
|
|
505
|
+
*/
|
|
506
506
|
id: number;
|
|
507
507
|
/**
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
508
|
+
* **ID родительской категории**
|
|
509
|
+
*
|
|
510
|
+
* Целое число
|
|
511
|
+
*/
|
|
512
512
|
parentId?: number;
|
|
513
513
|
/**
|
|
514
|
-
|
|
515
|
-
|
|
514
|
+
* **Название категории**
|
|
515
|
+
*/
|
|
516
516
|
name: string;
|
|
517
517
|
}
|
|
518
518
|
|
|
@@ -522,23 +522,8 @@ declare abstract class FormatterAbstract {
|
|
|
522
522
|
abstract format(products: Product[], categories?: Category[], option?: FormatterOptions): Promise<Buffer | string>;
|
|
523
523
|
}
|
|
524
524
|
interface FormatterOptions {
|
|
525
|
-
/**
|
|
526
|
-
* **Название магазина**
|
|
527
|
-
*
|
|
528
|
-
* Используется в YML формате
|
|
529
|
-
*/
|
|
530
525
|
shopName?: string;
|
|
531
|
-
/**
|
|
532
|
-
* **Название компании**
|
|
533
|
-
*
|
|
534
|
-
* Используется в YML формате
|
|
535
|
-
*/
|
|
536
526
|
companyName?: string;
|
|
537
|
-
/**
|
|
538
|
-
* **Параметры в отдельных столбцах**
|
|
539
|
-
*
|
|
540
|
-
* Используется в CSV и XLSX формате
|
|
541
|
-
*/
|
|
542
527
|
splitParams?: boolean;
|
|
543
528
|
}
|
|
544
529
|
declare enum Extension {
|
|
@@ -547,42 +532,42 @@ declare enum Extension {
|
|
|
547
532
|
XLSX = "xlsx"
|
|
548
533
|
}
|
|
549
534
|
|
|
550
|
-
declare class
|
|
535
|
+
declare class CSVFormatter implements FormatterAbstract {
|
|
551
536
|
formatterName: string;
|
|
552
537
|
fileExtension: Extension;
|
|
553
538
|
format(products: Product[], categories?: Category[], option?: FormatterOptions): Promise<string>;
|
|
554
539
|
}
|
|
555
540
|
|
|
556
|
-
declare class
|
|
541
|
+
declare class ExcelFormatter implements FormatterAbstract {
|
|
557
542
|
formatterName: string;
|
|
558
543
|
fileExtension: Extension;
|
|
559
|
-
format(products: Product[], categories?: Category[],
|
|
544
|
+
format(products: Product[], categories?: Category[], _?: FormatterOptions): Promise<Buffer>;
|
|
560
545
|
}
|
|
561
546
|
|
|
562
547
|
declare class InsalesFormatter implements FormatterAbstract {
|
|
563
548
|
formatterName: string;
|
|
564
549
|
fileExtension: Extension;
|
|
565
|
-
format(products: Product[], categories?: Category[],
|
|
550
|
+
format(products: Product[], categories?: Category[], _?: FormatterOptions): Promise<Buffer>;
|
|
566
551
|
}
|
|
567
552
|
|
|
568
|
-
declare class
|
|
553
|
+
declare class TgShopFormatter implements FormatterAbstract {
|
|
569
554
|
formatterName: string;
|
|
570
555
|
fileExtension: Extension;
|
|
571
|
-
|
|
572
|
-
format(products: Product[], categories?: Category[], options?: FormatterOptions): Promise<string>;
|
|
573
|
-
private getOffers;
|
|
556
|
+
format(products: Product[], categories?: Category[], _?: FormatterOptions): Promise<Buffer>;
|
|
574
557
|
}
|
|
575
558
|
|
|
576
|
-
declare class
|
|
559
|
+
declare class TildaFormatter implements FormatterAbstract {
|
|
577
560
|
formatterName: string;
|
|
578
561
|
fileExtension: Extension;
|
|
579
|
-
format(products: Product[], categories?: Category[],
|
|
562
|
+
format(products: Product[], categories?: Category[], _?: FormatterOptions): Promise<string>;
|
|
580
563
|
}
|
|
581
564
|
|
|
582
|
-
declare class
|
|
565
|
+
declare class YMLFormatter implements FormatterAbstract {
|
|
583
566
|
formatterName: string;
|
|
584
567
|
fileExtension: Extension;
|
|
585
|
-
|
|
568
|
+
private readonly builder;
|
|
569
|
+
format(products: Product[], categories?: Category[], options?: FormatterOptions): Promise<string>;
|
|
570
|
+
private getOffers;
|
|
586
571
|
}
|
|
587
572
|
|
|
588
573
|
declare const Formatters: {
|
|
@@ -595,7 +580,7 @@ declare const Formatters: {
|
|
|
595
580
|
};
|
|
596
581
|
|
|
597
582
|
type Transformer = (product: Product) => Product;
|
|
598
|
-
type Exporter = (data: Buffer) =>
|
|
583
|
+
type Exporter = (data: Buffer) => Buffer | Promise<Buffer>;
|
|
599
584
|
|
|
600
585
|
declare class GoodsExporter {
|
|
601
586
|
private formatter;
|
|
@@ -604,7 +589,7 @@ declare class GoodsExporter {
|
|
|
604
589
|
setTransformers(transformers: Transformer[]): void;
|
|
605
590
|
setFormatter(formatter: FormatterAbstract): void;
|
|
606
591
|
setExporter(exporter: Exporter): void;
|
|
607
|
-
export
|
|
592
|
+
export(products: Product[], categories?: Category[], option?: FormatterOptions): Promise<Buffer>;
|
|
608
593
|
}
|
|
609
594
|
|
|
610
595
|
export { type Category, Currency, type Exporter, Extension, FormatterAbstract, type FormatterOptions, Formatters, GoodsExporter, type IParam, type Product, type Transformer, Vat };
|