API pentru comerciantii online

De la wiki.livrarionline.ro
Salt la: navigare, căutare

Modelul comerciantilor LivrariOnline.ro

Comerciantii inregistrati primesc un cont in sistem definit prin:

  • un identificator unic «ID Companie de curierat »;
  • un identificator unic «ID Comerciant »;
  • chei de securitate;
  • conturi de utilizator.


Serviciile contractate de Comercianti

Atunci cand Comerciantii semneaza contractul, compania de curierat defineste serviciile contractate cu toti parametrii agreati (de exemplu pret livrare loc, sau km inclusi, etc.).

Serviciile sunt identificate in mod unic in systemul LivrariOnline.ro prin:

  • ID Serviciu.

Aceste elemente de identificare leaga livrarile de contul comerciantului. Aceste informatii le primiti automat pe adresa de e-mail specificata in formularele de contact indata ce inrolare comrciantului a fost facuta cu succes. Recomandam ca indata ce primiti informatiile pe e-mail sa va conectati la interfata comerciantilor https://comercianti.livrarionline.ro/ si sa schimbati parola.

Comerciantii care semneaza contract cu compania de curierat au automat acces API (Application programming interface) pentru gestiunea livrarilor. API este perfect pentru integrarea cu site-urile de e-commerce.

API permite comerciantilor sa automatizeze procesele legate de livrarile comenzilor in cadrul activitatii online/offline.


Functionalitatile API:

Cum se adauga o livrari/Cum se genereaza un AWB

Toate cererile API de inregistrare livrari online sunt trimise sistemului Livrari Online in formatul « SOAP - application/json ».

Cererile sunt construite in format JSON:

  • Fiecare camp utilizat de API Livrari Online are un nume de forma f_nume_camp. De exemplu:
{"loapi":
 {"f_login":0192022210,
 "f_request":"39795057696e61727a744",
 "f_secure":"BI6LOK68S\/1v8v+hKNjHiDo3lbZfACR19fYWPWDwBbzqe8bCu\/ThSy9F8=" } }


Campul f_login reprezinta ID-ul de comercisnt din sistem.

Campul f request contine datele despre livrare intr-un bloc JSON, incriptate cu algoritmul AES cu o cheie de securitate generata aleator pentru fiecare cerere la server; Rezultatul incriptarii AES este tranformat in base64 si apoi in hexa.


ATENTIE: Vectorul de initializare pentru AES este: 285c02831e028bff.


Exemplu de functii in php care realizeaza incriptarile AES si RSA:

 private function AESEnc()
 {
 require_once('Crypt/AES_Encryption.php');
 require_once('Crypt/padCrypt.php');

 $this->aes_key = md5(uniqid());
 $this->iv = '285c02831e028bff';
 $aes = new AES_Encryption($this->aes_key, $this->iv, "PKCS7", "cbc");
 $this->f_request = bin2hex(base64_encode($aes->encrypt($this->f_request)));
 }

 //criptez cheia AES cu RSA
 private function RSAEnc()
 {
 require_once('Crypt/RSA.php');
 $rsa = new Crypt_RSA();
 $rsa->loadKey($this->rsa_key);
 $rsa->setPublicKey();
 $rsa->setEncryptionMode(CRYPT_RSA_ENCRYPTION_PKCS1);
 $this->f_secure = base64_encode($rsa->encrypt($this->aes_key));
 }

Campul f_secure reprezinta cheia AES generata random incriptata cu algoritmul RSA si transformata in base64.

Printarea AWB-ului

Urmarirea AWB-ului

Interogare referinta AWB

Anularea AWB-ului