Integracijos diegimas

Pagrindiniai diegimo žingsniai :

  • Manorivile-Gateway įdiegimas. Instrukcija kaip tai atlikti pateikta internetiniai_moduliai/api_rest/manorivile-gateway.
  • Importo programos įrašymas;
  • Parametrų aprašymas;
  • Programos parametrų priderinimas pagal kliento poreikį;
  • Importui reikalingo klavišo užprogramavimas.

Importo programos įrašymas.

Su UAB "Rivile" ar atstovais sudaroma sutartis dėl importo iš PrestaShop užprogramavimo.

Į RIV_GAMA katalogą įrašoma importo programa.

Parametrų aprašymas.

Rivile GAMA sistemoje aprašomi ir užpildomi importui reikalingi parametrai.

Parametrų sąraše kurti naujų parametrų nereikia. Jie susikurs automatiškai, pirmą kartą paspaudus užprogramuotą importo klavišą.

Parametrų reikšmės gaunamos iš PrestaShop sistemos.

Instrukcija, kaip gaunamas PrestaShop API raktas pateikta: Prestashop_API_rakto_uzsakymas.pdf

Parametras Aprašymas
PRESTA_RIV Rivile API (web service) raktas
PRESTA_SITE PrestaShop parduotuvės adresas (pvz., https://parduotuve.lt)
PRESTA_USER PrestaShop prisijungimo duomenys (pvz., J3T46CMV1Q1H8A6VTTKTST8C88TATDJU)

Iš anksto nesukūrus parametrų ir pirmą kartą iškvietus importą, programa praneš, kad neaprašyti parametrai. Parametrai susikurs automatiškai, reikės aprašyti jų reikšmes.

Programos parametrų priderinimas pagal kliento poreikį.

Importo programoje naudojami tam tikri parametrai. Keičiant jų reikšmes, importo programą galima lanksčiai priderinti prie kliento poreikių.

Parametras Reikšmė pagal nutylėjimą Aprašymas
nuo_datos DATE()-30 Nurodoma nuo kada skaityti pardavimų informaciją (pvz: už paskutines 5 dienas arba už paskutines 30 dienų)
kliento_kodas '' Kliento kodas, kai visi pardavimai registruojami vienam klientui
kliento_rysys 'PT001' Kliento sąskaitų ryšio kodas pagal nutylėjimą
kliento_mokesciai 'PVM' Kliento mokesčio kodas pagal nutylėjimą
mokesciai '' Mokesčių parinkimo sąlygos: "<VALIUTA>[-<ŠALIS>]:<MOKESČIO KODAS>,...", pavyzdžiui: "USD:PVM_I,EUR:PVM,GBP:PVM_UK,EUR-LT:PVM_LT"
pristatymo_kodas 'PRISTATYMAS' Pristatymo paslaugos kodas
pristatymo_tipas 2 && Tipas: 1-prekė, 2-paslauga, 3-kodas
nuolaidos .F. Ar skaičiuoti nuolaidos sumą (kainos ir sumos bus imamos prieš nuolaidą)
nuolaidos_kodas 'NUOLAIDA' Nuolaidos paslaugos kodas
nuolaidos_tipas 2 Tipas: 1-prekė, 2-paslauga, 3-kodas
apmokejimas '' Apmokėjimo sąlygos: "<MOKĖJIMO BŪDAS>[-<VALIUTA>]:<SĄSKAITA>,...", pavyzdžiui: "STRIPE:271,PAYPAL:273,PAYSERA:274,PAYSERA-USD:2711"
op_tip 53 51 - Pardavimo važtaraštis, 53 - Pardavimo užsakymas
kaina_su_pvm .T. .T. - Kaina su PVM dokumente, .F. - Kaina be PVM dokumente
isaf_pozymis 0 Dokumentų registre: 0 - Formuoti, 1 - (+)Sąskaita, ...
suma_su_pvm .F. .T. - PVM suskaičiuojama Rivilės sistemoje, arba .F. - sumos ir PVM imamos taip, kaip pateikta el. parduotuvėje
suminis .F. .T. - Suminis dokumentas, neimportuojama detaliomis eilutėmis, arba .F. - importuojamos detalios eilutės
suminis_kodas 'PARDAVIMAS' Suminio dokumento pardavimo kodas
suminis_matas 'VNT' Mato vienetas
suminis_tipas 3 Tipas: 1-prekė, 2-paslauga, 3-kodas
preke_kliento 'PRESTASHOP' Kliento kodas, naudojamas kliento prekių aprašymuose prie prekių kortelės
api_url '/api/' API versijos nuoroda
api_header_auth .T. Ar formuoti Authorization header?
api_filtravimas 'filter[current_state]=%[]%' Filtravimo sąlygos, kaip atrenkami dokumentai iš el. parduotuvės
api_puslapio_limit 100 Gražinamų iš el. parduotuvės dokumentų kiekis vienoje užklausoje (max 100)
param_riv 'PRESTA_RIV' Parametro kodas, kuriame nurodomas prisijungimo prie Rivile API raktas
param_site 'PRESTA_SITE' Parametro kodas, kuriame nurodomas el. parduotuvės adresas
param_user 'PRESTA_USER' Parametro kodas, kuriame nurodomas prisijungimo prie elektroninės parduotuvės raktas
debug .F. jei .T. - išsaugomi originalūs xml failai tmp kataloge

Jeigu pardavimai bus registruojami kiekvienam pirkėjui atskirai, tai klientas parenkamas pagal tokią logiką prioritetiškai:
Kliento kodas pagal nutylėjimą -> Parenkamas pagal trumpame pavadinime nurodytą ID -> Parenkamas pagal el. pašto adresą -> Kuriamas naujas.

Prekė/ paslauga/ pardavimo kodas parenkamas pagal tokią logiką prioritetiškai:
Barkodas -> Parenkama iš kliento, nurodyto parametre "preke_kliento", prekių sąrašo (jeigu prekių kortelėse yra suvestos klientų prekės) -> Parenkama pagal prekės kodas + pagrindinis mato vnt -> pardavimo kodas -> Jeigu nieko nerandama, gaunama klaida, ir neimportuojamas visas dokumentas.

Reikalavimai ir pastabos:

  • Veikia nuo Rivile GAMA 115 versijos.
  • Turi būti aprašytas pardavimo dokumentų skaitliukas.
  • Jeigu pardavimai bus registruojami kiekvienam pirkėjui atskirai, būtinai turi būti aprašytas skaitliukas klientų kodų kūrimui:

Servisas -> Administravimas -> Dokumentų skaitliukai

presta_1

  • Kad neimportuotų antrą kartą tų pačių klientų, klientų kortelėse turi būti suvesti bent jau el. pašto adresai - pagal juos bus identifikuojamas klientas.
  • Kad neimportuotų antrą kartą tų pačių pardavimo dokumentų , "Dokumentų registro" lauke įrašomas užsakymo numeris.
  • Startuojant pirmą kartą, rekomenduojama nurodyti parametre datą, nuo kurios dienos turi būti pradėti importuoti dokumentai ir už kokį intervalą jie turi būti imami. Pavyzdžiui, už 31 dieną, pradedant nuo 2020.09.01: imp.nuo_datos=MAX({^2020.09.01},date()-30)
  • Ištrynus pardavimo dokumentą, jį programa importuos dar kartą.
  • Ištrynus arba pakeitus pardavimo dokumente "Dokumentų registro" lauką, dokumentas bus importuojamas dar kartą.
  • Mokėjimo statusas bei mokėjimo būdas išsaugomi importuoto pardavimo dokumento aprašymo lauke.

Importui reikalingo klavišo užprogramavimas.

Pardavimo operacijų sąraše užprogramuojamas klavišas, kurį paspaudus bus vykdomas importas iš PrestaShop sistemos.

Pavyzdžiui:

imp=imp_prestashop_api() && Sukuriamas parametrų objektas
imp.nuo_datos=MAX({^2020.09.20},date()-7) && Nurodoma pradžios data, nuo kurios dienos startuojamas servisas
imp.suma_su_pvm=.F.
imp.kliento_kodas="PIRKEJAS"
imp.apmokejimas="STRIPE:271,PAYPAL:273,PAYSERA:274,PAYSERA-USD:2711"
imp.Init() && Vykdomas importas