Integracijos diegimas

Pagrindiniai diegimo žingsniai :

  • Manorivile-Gateway įdiegimas. Instrukcija kaip tai atlikti pateikta internetiniai_moduliai/api_rest/manorivile-gateway.
  • Importo programos įrašymas;
  • Parametrų ir dokumentų skaitliukų 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š Etsy užprogramavimo.

Į RIV_GAMA katalogą įrašoma importo programa.

Programų atsisiuntimas (Konsultantams ir atstovams):

Parametrų ir dokumentų skaitliukų aprašymas.

Rivile GAMA sistemoje aprašomi ir užpildomi:

  • specialūs, importui reikalingi parametrai,
  • parametras "Padalinio kodas pagal nutylėjimą",
  • aprašomas pardavimo dokumentų skaitliukas,
  • aprašomas klientų kodų skaitliukas (jei bus kuriami klientai).

Parametrai ir skaitliukai gali būti priskirti tik konkrečiam vartotojui.

Vartotojo vardas, kuriuo leidžiamas importas, yra Rivilės API rakto simboliai iki taško.

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š Etsy sistemos.

Instrukcija, kaip gaunamas Etsy API raktas pateikta: Etsy_API_rakto_uzsakymas.pdf

Parametras Aprašymas
ETSY_RIV Rivile API (web service) raktas
ETSY_SITE Etsy parduotuvės adresas (pvz., myshop)
ETSY_USER Etsy prisijungimo duomenys (pvz.,z45eg8d788psp3ethbtzdgzk pkj12gvign )

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ų)
i06_dok_data 'create_timestamp' Dokumento ir operacijos datos laukas (koregavimo data: 'update_timestamp')
i06_dok_nr '' Dokumento numerio laukas (dokumento id: 'receipt_id'). Nenurodžius - priskiriamas iš skaitliuko.
kliento_kodas '' Kliento kodas, kai visi pardavimai registruojami vienam klientui
kliento_rysys 'PT001' Kliento sąskaitų ryšio kodas pagal nutylėjimą
kliento_mokesciai 'PVM0' Kliento mokesčio kodas pagal nutylėjimą
kliento_info '' Kliento papildoma informacija kuriant kliento kortelę. Pavyzdžiui: "<N08_KODAS_GS>WEB</N08_KODAS_GS>"
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 .T. Etsy atveju sumos visada su PVM
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 'ETSY' Kliento kodas, naudojamas kliento prekių aprašymuose prie prekių kortelės
api_url 'https://openapi.etsy.com/v3/application/' API versijos nuoroda
api_redirect_url 'https://www.rivile.lt/rivileapps/pardavimu-importas-is-etsy' Nuoroda, kuri registruojama prie API rakto, kur bus pateiktas patvirtinimas
api_filtravimas '' Filtravimo sąlygos, kaip atrenkami dokumentai iš el. parduotuvės. Pvz.: "was_shipped=1"
api_puslapio_limit 100 Gražinamų iš el. parduotuvės dokumentų kiekis vienoje užklausoje (max 100)
param_riv 'ETSY_RIV' Parametro kodas, kuriame nurodomas prisijungimo prie Rivile API raktas
param_site 'ETSY_SITE' Parametro kodas, kuriame nurdomas el. parduotuvės adresas
param_user 'ETSY_USER' Parametro kodas, kuriame bus nurodomas prisijungimo prie elektroninės parduotuvės raktas ir slaptažodis
param_token 'ETSY_TOKEN' Parametro kodas, kuriame bus automatiškai priskirta ir išsaugota privati prisijungimo prie el. parduotuvės informacija
debug .F. jei .T. - išsaugomi originalūs xml failai tmp kataloge
dok_nr .F. jei .T. - dokumento numeriui naudojamas užsakymo numeris
field_sku 'product_data.sku' Nurodomas laukas, iš kurio imamas prekės/paslaugos SKU kodas
field_barcode '' Nurodomas laukas, iš kurio imamas prekės/paslaugos barkodas
id_prefix '' Importuojant iš keletos parduotuvių, kiekviena privalo turėti savo id prefiksą, kuris užtikrina dokumentų unikalumą. Pavyzdžiui 'A','B','1' ar pan.
dok_prefix '' Dokumento numerio prefiksas

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.
  • Naudojama CHILKAT biblioteka.
  • Jeigu pardavimai bus registruojami kiekvienam pirkėjui atskirai, būtinai turi būti aprašytas skaitliukas klientų kodų kūrimui:

Servisas -> Administravimas -> Dokumentų skaitliukai

etsy_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.
  • Etsy nesaugoma PVM informacija, t.y. visos kainos ir sumos pateikiamos su PVM. Kliento mokesčių kodas pagal nutylėjimą turėtų būti "PVM0", kitiems klientams galima taikyti PVM mokesčių kodą pagal valiutą arba valiutą ir šalį.

Importui reikalingo klavišo užprogramavimas.

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

Pavyzdžiui:

imp=imp_etsy_api() && Sukuriamas parametrų objektas
imp.nuo_datos=MAX({^2020.11.01},date()-7) && Nurodoma pradžios data, nuo kurios dienos startuojamas servisas
imp.kliento_kodas="PIRKEJAS"
imp.apmokejimas="cc:271,pp:273,mo:274,pp-USD:2711" && galimos reikšmės: pp (paypal), cc (credit card), ck (check), mo (money order), other (kita)
imp.mokesciai="EUR:PVM,EUR-US:PVM0,EUR-GB:PVM0" && Galima konfigūruoti mokesčius pagal valiutą ir šalis
imp.Init() && Vykdomas importas