Интеграция с JAR Computers Информационна Система

За пълна интеграция с нашата Информационна Система е необходимо да има реализирани следните функционалности:

     1. Пълен XML feed на ценовите листи - с цени към ЖАР, Препоръчителни крайно-клиентски цени, актуални наличности, продукт код, снимки на продукта, характеристики и всичко което е необходимо за продажбата (листването на продукта). Ще се извиква 2 до 3 пъти дневно обикновено сутрин м/у 8:00-12:00, и между 12:00-15:00 и ако има тежки снимки и много характеристики след 19:00 ;
     2. Същия feed като т.1, но в съкратена форма, продукт код (или ваше ID), наличност, евентуално цени към ЖАР, извиква се на 15 минути и актуализира наличностите при нас;
     3. Автоматично поръчване - API интерфейс, чрез който да направим автоматично поръчка, подаваме ваше ID на продукт и бройки, като резултат е добре да се върне, какво може да бъде изпълнено от поръчката, ако продукта или количеството е недостатъчно;
       Примерна за функцията от JAR API: https://api.jarcomputers.com/#orderPost
     4. Получаване на документ Складова разписка (Гаранционна Карта или Приемо-предавателен протокол) документа с който издавате стоката, API функции:
         а) Функция с която се получава списъка издадени документи за период, ние подаваме от дата - до дата, резултата е XML списък с издадените Складови Разписки за този период:
             Номер на документа;
             Дата;
             Тип (консигнация, продажба и т.н.);
             За кой офис е изпратен (адрес);
             Обща сума;
             Забележка - ако има във Вашата система;
             референтен номер - ако поддържа вашата информационна система, номер на заявка от ЖАР. <reference>
      Примерна за функцията от JAR API: https://api.jarcomputers.com/#documentsGet
         б) Функция за получаване на детайлната информация на документ Складова разписка:
             Номер по ред в документа;
             Продукт ID (Ваше в системата ID);
             бройки;
             серийни номера;
             единична цена в лева (тази която ще е във фактурата);
             гаранционен срок на продукта.
      Примерна за функцията от JAR API: https://api.jarcomputers.com/#documentGet
     5. Получаване на документ Фактура, като т.4:
         а) като т. 4а, само трябва да е добавен и списък Складови разписки (или една такава) към които се отнася фактурата, това се отнася и до Кредитните и Дебитните известия, също така е добре да има информация платена ли е фактура има ли задължение по нея и какво
      Примерна за функцията от JAR API: https://api.jarcomputers.com/#invoicesGet   
         б) като т. 4б, не е необходимо серийни номера и гаранционен срок;
      Примерна за функцията от JAR API: https://api.jarcomputers.com/#invoiceGet        
         г) Плащания списък фактури които не са платени, ако имате и падеж в системата да подавате датата на падеж
             - фактура номер
             - дата
             - тип - фактура, кредитно, дебитно
             - обща сума
             - падеж
             - статус - платено, задължение и др.
             - платена сума (или задължение)
     6. API с обща информация
         - общо задължение към фирмата;
         - таргети и тяхното изпълнение (текущо състояние);
         - промоционални кампании (ако тази информация не се подава в продуктовия XML feed);
         - Друга полезна информация според Вас.
      Примерна за функцията от JAR API: https://api.jarcomputers.com/#chargeGet


     Разбира се може да започнем първоначално с реализирането на т.1

Идеята е всички Ваши продукти да се листват на нашия сайт и чрез него и нашите дистрибутори (които също поръчват през сайта).
Структурата я направете така както Ви е удобно на Вас, ние имаме система за обработка която ще я трансформира до необходимата ни структура.
Когато имате готовност или примерна структура дори да няма всички данни, може да ни я подадете за да подготвим нещата от наша страна.

Прилагам списък с необходими данни, разбира се полетата не са задължителни т.е. каквато и информация за продуктите да имате ще е от полза, за правилното функциониране на системата все пак са необходими поне полетата "Цена към ЖАР", "Крайноклиентска (продажна) цена" и "уникален код на продукта" (може да е от вашата система или най-добре производителя), за по-бързото въвеждане на продуктите ще е от полза наличието на Продуктов код на производителя или баркод (GTIN):

     1. Име на продукта; <product_name>
     2. Марка на продукта; <product_brand>
     3. Продуктова група (Категория) - CPU, MB, ... (и/или подгрупи ако имате йерархия); <category>
     3а. Продуктов път - пътя до продуктовата група (Периферия | Принтери | Мастиленоструйни принтери); <category_path>
     4. Уникален код на продукта - от вашата система (ID) (трябва да е уникално за продуктовата листа); <product_id>
     5. Продуктов код на производителя - желателно е да го има; <product_code>
     5a. Баркод(GTIN), EAN, UPC, ISBN, ISSN ... - може да е списък с някакъв разделител, например ','; <product_gtin>
     6. Цена на продукта към ЖАР - или система на изчисляването и; <dealer_price>
     7. Вид валута на цената - EUR, USD, BGN; <dealer_currency>
     8. Курс към BGN - по който се фактурира продукта (ако е валутна цената); <rate>
     9. Препоръчителна крайно клиентска цена - за продуктите с цена под която не трябва да се продава, промоционални и др ..; <sales_price>
     9а.  Валута на крайноклиентската цена, ако е приложимо; <sale_currency>
     10. Наличност - не е необходимо да са точно бройки, може и статус (има, има ограничено количество, чака се доставка и т.н., тези които и вие си ползвате); <available>
     10a. Наличност - количество на склад, ако предоставяте такава информация; <available_count>
     11. Кратко описание на продукта - ако има текстово описание; <description>
     11а. Пълно описание на продукта - подробно описание на продукта може и в html формат; <full_description>
     12. Гаранционен срок на продукта; <warranty>
     13. Списък характеристика - ако има, хубаво е да се указват кои от тях се ползват за филтри (<filter>) и ако са групирани - групата (<group_name>); <characteristics><characteristic><name><value>
     14. Тегло - ако има (може и да е част от характеристиките); <weight>
     15. Адрес(и) към снимка - URL адрес (или списък с адреси) към снимки на продуктите от където може да ги свалим; <pictures><picture><picture_url><picture_text><picture_order><picture_last_change>
     15а. В информацията за снимките е добре да се подават "ред на показване", ако има; <pictures><picture><picture_order>
     15б. В информацията за снимките е добре да се подават "дата на последна промяна", ако има; <pictures><picture><picture_last_change>
     15в. В информацията за снимките е добре да се подават "текстово описание на снимката", ако има; <pictures><picture><picture_text>
     16. Адрес(и) към прикачени документи на продукта - ръководства, спецификации, сертификати - всякакви документи към продукта, ако имате такива; <documents><document><document_url><document_description>
     17. Адрес към производителя -  страница на производителя на продукта, ако има; <brand_url>
     18. В промоция ли е при Вас продукта (промоционалната цена е в поле 9; <promotion>
     18а. Промоционален текст (ако разбира се имате такъв); <campaign_text>
     18б. Валидност на промоцията (от дата до кога); <campaign_start> и <campaign_end>
     19. Дата/час на последна промяна на полетата описващи продукта (полета: 1,2,3,3а,5,5а,11,11а,12,13,14,15,15а-в,16,17,24), използва се за актуализиране на характеристиките при първоначално въведени грешни данни; <product_last_change>
     20. Дата/час на добавяне на продуцта в ценовата листа <product_created>
     21. Свързани продукти - списък от product_id на свързаните продукти с този; <linked_products>
     22. Продукта е бъндел от два или повече продукти - съставен продукт от няколко продукта; <bundle><product_id>
     23. Продукт с подарък - <gifts><gift><product_id>
     24. Адрес до вашата интернет страницата с описание на продукта <product_url>

Формата на файла може да бъде XML, JSON, CSV какъвто ви е лесно да го генерирате, ние ще си направим парсер или XSL трансформация към нашата база. XML Feed-a може да бъде архивиран като zip или gzip за да намалим трансфера.
Файлът трябва да бъде записан на Ваш публичен сървър (може там където Ви е web страницата). Метода на ауторизация също няма значение за нас просто го опишете (потребители, пароли, генериране на сесии и т.н.).
Данните за наличност е добре да се получават от складовата Ви програма за да са актуални.


т.1 Примерен ПЪЛЕН XML Feed - това е някакъв вариант, всичко е възможно като структура и имена на таговете:


<?xml version="1.0" encoding="utf-8"?>
<products>
   <product>
     <product_id>82266</product_id>
     <product_code>N1508ICDR32N4G</product_code>
     <product_name><![CDATA[ Лаптоп Inspiron 5559 (5397063907939), дву-ядрен SkyLake Intel Core i7-6500U 2.5/3.1GHz, Full HD LED Display & AMD Radeon R5 M335 4GB (HDMI), 8GB, 1TB HDD, USB 3.0, Linux, 2.3kg ]]> </product_name>
     <product_brand>DELL</product_brand>
     <product_model>Inspiron 5559</product_model>
     <product_gtin>9876437218723</product_gtin>
     <category_path>Компютри и Таблети | Лаптопи</category_path>
     <category>Лаптопи</category>
     <description><![CDATA[ Dell Inspiron 5559 5397063907939 Black 15.6" (39.62 cm) Full HD LED Anti-Glare (1920 x 1080 pix.) AMD Radeon R5 M335 4GB DDR3 HD Webcam  ....... ]]></description>
     <available>на склад</available>
     <available_count>23</available_count>
     <warranty>24</warranty>
     <weight>4500</weight>
     <sale_price>1267.53</sale_price>
     <sale_currency>BGN</sale_currency>
     <dealer_price>1296.00</dealer_price>
     <dealer_currency>BGN</dealer_currency>
     <product_created>2016-07-28 14:54:36</product_created>
     <product_last_change>2016-07-29 16:12:06</product_last_change>
     <product_url>https://www.jarcomputers.com/156-3962-cm-DELL-Inspiron-3521_prodold_N1508ICDR32N4G.html?ref=prod<product_url>
     <linked_producs/>
     <pictures>
       <picture>
         <picture_url>https://p.jarcomputers.com/680x680/N1508ICDR32N4G_680x680.jpg</picture_url>
         <picture_order>1</picture_order>
         <picture_text>основна снимка 194866976.jpg</picture_name>
         <picture_last_change>2016-07-29 16:17:45</picture_last_change>
       </picture>
      ....
     </pictures>
     <characteristics>
       <characteristic>
         <name>Серия</name>
         <value>Inspiron</value>
         <filter>0</filter>
       </characteristic>
      ....
     </characteristics>
     <documents>
       <document>
         <document_url>https://www.jarcomputers.com/docs/NBDELL5397063907939/manual.doc</document_url>
         <document_description>Техническа документация</document_description>
       </document>
      ....
     </documents>
     <promotion>
       <campaign_name>Национална промоция</campaign_name>
       <campaign_start>2014-09-01</campaign_start>
       <campaign_end>2014-09-30</campaign_end>
       <campaign_text>Хайде на училище</campaign_text>
     </promotion>
     <gifts>
       <gift>
         <product_id>81232</product_id>
         <description>Подарък чанта JAR Computers</description>
         <picture>https://p.jarcomputers.com/680x680/N1508ICDR32N4G_680x680.jpg</picture>
       </gift>
      ....
     </gifts>
     <bundle/>
   </product>
.
.
.

</products>

Може някои от полетата да се пуснат като атрибути за намаляване на обема на feed-a например:

<pictures>
  <picture picture_text="основна снимка 194866976.jpg" picture_last_change="2016-07-29 16:17:45" picture_order="1">https://p.jarcomputers.com/680x680/N1508ICDR32N4G_680x680.jpg</picture>
  ....
</pictures>
и
<characteristics>
  <characteristic name="Серия" filter="0">Inspiron</characteristic>
  ....
</characteristics>
и
<documents>
  <document document_description="Техническа документация">https://www.jarcomputers.com/docs/NBDELL5397063907939/manual.doc</document>
  ....
</documents>



т.2 Примерен XML feed за складови наличности:
<?xml version="1.0" encoding="utf-8"?>
<products>
  <product>
    <product_id>56382</product_id>
    <available>На склад</available>
    <sale_price>498.23</sale_price>
  </product>
</products>
или реализация с атрибути за по кратък синтаксис:
<?xml version="1.0" encoding="utf-8"?>
<products>
  <product id="56382" avail="На склад">498.23</product>
  ....
</products>

Примерен feed: https://www.jarcomputers.com/export/jar/jar_avail.xml

Що се отнася до другите точки, можете да се използва документацията на нашето API, можете да я видите на адрес:
https://api.jarcomputers.com

Моля при възникнали въпроси да се свържете с мен без притеснение.