Перейти к содержимому

Каталог ​

Дерево ​

Коды образуют дерево. Каждый уровень добавляет цифры к коду родителя:

УровеньЦифрПримерНазвание
Группа3009КОФЕ, ЧАЙ И СПЕЦИИ
Класс500901Кофе
Позиция800901001Кофе
Субпозиция1100901001001Молотый (порошкообразный) кофе
Бренд1400901001001048Maccoffee
Код1700901001001048023в пакет 3в1 20г

children() возвращает следующий уровень под кодом, а без кода — группы:

ts
const groups = await mxik.children()
groups.items[8] // { code: '009', name: 'КОФЕ, ЧАЙ И СПЕЦИИ', count: 2312 }

const classes = await mxik.children('009')
classes.items[0] // { code: '00901', name: 'Кофе', count: 425 }

Каждый элемент — CatalogNode: code, name и count, число кодов внутри. На последнем уровне, у 17-значных кодов, есть ещё штрихкод в internationalCode. У записи «без бренда» в субпозиции name: null.

Результаты приходят страницами, как в поиске. Отфильтровать уровень по названию можно через text:

ts
await mxik.children('00901001001', { text: 'jardin', size: 50 })

Чтобы пройти по всем страницам, используйте childrenAll():

ts
for await (const brand of mxik.childrenAll('00901001001'))
  console.log(brand.code, brand.name)

У 17-значного кода нет потомков, а коды другой длины недопустимы: в обоих случаях children() отклоняется с TypeError.

Справочники ​

ts
await mxik.stats()
// { groupCount: 117, classCount: 1300, ..., mxikCount: 442337 }

await mxik.units()
// [{ id: 111, name: 'карат' }, { id: 88, name: 'штук (пэт бутылка)' }, ...]

await mxik.taxBenefits()
// [{ id: 100407, nameRu: '...', docNum: 1600, ... }]
  • stats(): сколько в каталоге групп, классов, позиций, субпозиций, брендов и кодов.
  • units(): единицы измерения на языке клиента.
  • taxBenefits(): налоговые льготы с документами, которые их устанавливают, на русском, узбекском (кириллица) и узбекском (латиница). Карточка ссылается на льготу через lgotaId.

Неофициальный клиент, не связан с Налоговым комитетом Узбекистана и tasnif.soliq.uz.
Распространяется под лицензией MIT.