Lietojumprogrammas saskarne (Norgate API)

Versija 2.0

Administratora instrukcija

Administratora instrukcija

4

 

Lietojumprogrammas saskarne (Norgate API). Versija 2.0

1.Ievads

1.1.Dokumenta nolūks

Šis dokuments apraksta Lietojumprogrammas saskarnes (Norgate API) instalēšanu, konfigurēšanu un ekspluatāciju.

(Norgate API) nodrošina tirgotāja sasaisti ar Norgate Trader noliktavas uzskaites sistēmu.

1.2. Auditorija

Dokuments paredzēts sistēmu izstrādātājiem un administratoriem.

1.3. Lietojamība

Šis dokuments atbilst sekojošiem programmatūras moduļiem:

Elektroniskās komercijas sistēma Trader

ELietojumprogrammas saskarne (Norgate API). Versija 2.0

Administratora instrukcija

5

 

Lietojumprogrammas saskarne (Norgate API). Versija 2.0

2.Norgate API sagatavošana

2.1.Sistēmas prasības

2.1.1.

Nepieciešamā third-party programmatūra

 

 

 

 

 

Komponente

 

Versija

Piezīmes

 

PHP

 

PHP 4.0.2 vai

Nepieciešama CURL bibliotēka

 

 

jaunāka

 

 

 

 

 

2.2.Norgate API instalācija

2.2.1.Norgate API pakotnes saturs

Lai uzinstalētu Norgate API uz jūsu servera, atarhivējiet api.zip arhīvu tirgotāja web veikala saknes direktorijā.

Administratora instrukcija

6

 

Lietojumprogrammas saskarne (Norgate API). Versija 2.0

3.Norgate API integrēšana

3.1. Integrēšana

Trader noliktavas uzskaites sistēmas servera izsaukšana, lietojot Norgate API var tikt realizēta lietojot php klasi "class.Trader.php"

Klases izsaukšana:

require_once 'class.Trader.php';

require_once 'class.restRequest.php';

$api_url = 'api1.norgate.lv'; // PIEŠĶIRTAIS API SERVERIS!

$api_key = '4f230818a2397431882713c4c2e58702'; // PIEŠĶIRTĀ API ATSLĒGA!

$trader = new Trader($api_url, $api_key);

3.2. Klienta reģistrācija

Reģistrējot klientu, tiek pārbaudīts e-pasts, ja epasts eksistē un ir ievadīta parole, tad skatās vai nav tāds pats e-pasts ar paroli, atrašanas gadijumā funkcija atgriež rezultātu ar paziņojumu, ka klients ar šādu e-pastu eksistē. Gadijumā, ja parole nav ievadīta, vai arī parole ir un e-pasts ir unikāls, tad tiek izveidots jauns klients, kā arī tiek atgriesti klienta dati.

Funkcijas izsaukšana:

$result = $trader->registerClient(array(

     'CLIENT_NAME'=>'Vārds Uzvārds',

     'IS_FIZISKA'=>'F',//T/F

     'PHONE' =>'+371 29475675',

     'PVN_REG_NR' => 'LV 23437567523894',

     'REG_NR' => '23437567523894',

     'ADDRESS' => 'Brīvības gatve 250, Rīga',

     'EMAIL' => 'info@example.com',

     'PASSWD' => '*******',

     'REAL_ADDRESS' => 'Turaidas iela 2, Rīga',

     'BANK_ACCOUNT' => '',

     'FAX' => '634956747'

));

3.3. Reģistrēta klienta datu iegūšana

Klienta dati tiek atgriesti pēc e-pasta un paroles, nesakritību gadijumā tiek atgriests 'undefined'.

Funkcijas izsaukšana:

$result = $trader->login(array(

     'EMAIL'=>'info@norgate.lv',

     'PASSWD' =>'90',

));

3.4. Preču iegūšana

Sinhronizējot preces, tiek atgriests vairākdimensiju masīvs ar preču sarakstu un to datiem. Ātrdarbības nolūkos rekomendējam preces sinhronizēt nakts vidū, kad viss mazākais klientu apmeklējums mājaslapai.

Funkcijas izsaukšana:

$result = $trader->getGoods();

3.5. Preču koka iegūšana

Sinhronizējot preču koku, tiek atgriests vairākdimensiju masīvs ar preču koka sarakstu un to datiem. Ātrdarbības nolūkos rekomendējam preču koku sinhronizēt nakts vidū, kad viss mazākais klientu apmeklējums mājaslapai.

Funkcijas izsaukšana:

$result = $trader->getGoodsTree();

3.6. Ražotāju iegūšana

Sinhronizējot ražotājus, tiek atgriests vairākdimensiju masīvs ar ražotāju sarakstu un to datiem. Ātrdarbības nolūkos rekomendējam ražotājus sinhronizēt nakts vidū, kad viss mazākais klientu apmeklējums mājaslapai.

Funkcijas izsaukšana:

$result = $trader->getManufacturers();

3.7. Izejošo dokumentu veidošana

Veicot groza izrakstīšanu, izmantojam zemāk minēto funkciju, kas nodrošina izejošo dokumentu izveidi, kas atgriež izejošā dokumenta ID. Pirms groza izrakstīšanas obligāti jāiegūst klienta ID Sk. 3.2 punktu.

Funkcijas izsaukšana:

$result = $trader->checkoutCart(array(

    'CLIENT_ID' => 12,

    'DELIVERY_ADDRESS' => 'Rīga, brīvības gatve 222a',

    'CMR_ID' => null, //JA IZMANTO CMR MODULI

    //UN IR VAJADZĪBA SASAISTĪT DUKUMENTU AR DARĪJUMU

    'ITEMS' => array(

        1 => array(

             'GOOD_ID' => 123, // PRECES ID

             'STOCK_NR' => 2, //NOLIKTAVAS NR

             'AMOUNT' => 4, //DAUDZUMS

             'L1' => 'Preces nosaukums', //PRECES NOSAUKUMS

             'PRICE' => 23.567892, // CENA BEZ PVN

             'DISCOUNT' => 5, // ATLAIDE PROCENTOS

             'IS_PAKALPOJUMS' => 'T', // VAI IR PAKALPOJUMS T / F

             'IS_DISCOUNT' => 'T' //VAI IR ATLAIDE T / F

        )

));

*/

3.8. Preces gala cenas iegūšana

Lai noteiktu korektu klienta cenu pēc klienta datu iegūšanas, atlaidi, vai cenu bez PVN, izmantojam zemāk minēto funkciju, kas aprēķina preces cenu.

Funkcijas izsaukšana:

$price = $trader->getPrice(

    array(

        'CATEGORY_ID' => 2,

        'GROUP_ID' => 5,

        'SUBGROUP_ID' => 1,

        'GOOD_ID' => 100,

        'GOOD_SELL_PRICE' => 43.567564,

        'IS_AKCIJA' => 'T',

        'ACTION_PRICE' => 34.567443,

        'DISCOUNT_PERCENT' => 0

    ),

    $real="true", //false = cena bez atlaides; akcija = akcijas cena; true = reālā cena

    $pvn=true, // ar, bez pvn

    $wdis=false // true = neņemt vērā klienta atlaidi

);


3.9. Preces pievienošana

Lai pievienotu jaunu preci, izmantojam zemāk minēto funkciju, kas pievieno preci un vajadzības gadijumā izveido preces apakšgrupas, ja tādu nav. Rezultātā atgriež masīvu ar preces ID

Funkcijas izsaukšana:

$GOOD = $trader->addItem(

    array(

        'TREE'=>array(

            'CTG' => 'Kategorija',

            'GRP' => 'Grupa',

            'SGR' => 'Apakšgrupa'

        ),

        'GOOD'=>array(

            'L1' => 'Preces nosaukums',

            'CODE1' => 'Kods',

            'SELL_PRICE' => 34.54

        )

    )

);


3.10. Maksājumu pievienošana

Lai piesaistītu maksājumu izejošajam dokumentam izmantojam zemāk minēto funkciju.

Funkcijas izsaukšana:

$success = $trader->addPayment(

     $_SELL_DOC_ID, //Izejošā dokumenta ID = $trader->checkoutCart();

     $_AMOUNT // maksājumu summa

);


3.11. Klienta pasūtījumu vēsture

Lai iegūtu klienta izejošo dokumentu sarakstu izmantojam zemāk minēto funkciju.

Padodot parametru no kura ieraksta sākt lasīt iegūst 20 ierakstus.

Funkcijas izsaukšana:

$history = $trader->clientHistory(

     $CLIENT_ID, //klienta ID

     $FROM // No kura ieraksta sākt lasīt

);


3.12. CMR Darījumu pievienošana

Lai izveidotu jaunu darijumu izmantojam zemāk minēto funkciju.

Funkcijas izsaukšana:

$dealID = $trader->newDeal(

    array(

        'NAME'=>'Norgate Deal Test',

        'CLIENT_ID'=>16955,

        'AMOUNT'=>9.99,

        'DATE'=>date('d.m.Y'),

        'PIPELINE'=>'Pārdošana',

        'DEAL_NOTES'=>'Piezīmes',

        'PIPELINE_STEP'=>'Pieprasījums no mājaslpas',

        'DEAL_MANAGER_ID'=>array(

            1,

            6,

        ')

    )

);