Sunteți pe pagina 1din 63

Doraly Marketplace –

API VENDORS
Versions

Version Date Changes

1.0.0 01.04.2021

1.0.1 13.07.2022 Adaugare


Contents
1. Overview.............................................................................................................................................7
1.1. Request-uri..................................................................................................................................7
1.2. Paginatia......................................................................................................................................8
1.3. Raspunsul.....................................................................................................................................8
2. Autentificare........................................................................................................................................8
Mediu de test......................................................................................................................................8
Mediul de live......................................................................................................................................9
Metoda................................................................................................................................................9
URL......................................................................................................................................................9
3. Gestionare produse si oferte.............................................................................................................10
3.1. GET products.............................................................................................................................10
Metoda..............................................................................................................................................10
URL....................................................................................................................................................10
3.2. GET product by ID......................................................................................................................10
Metoda..............................................................................................................................................10
URL....................................................................................................................................................10
3.3. GET categories...........................................................................................................................10
Metoda..............................................................................................................................................10
URL....................................................................................................................................................10
Raspuns.............................................................................................................................................11
3.4. GET Offer stoc status.................................................................................................................13
Metoda..............................................................................................................................................13
URL....................................................................................................................................................13
Raspuns.............................................................................................................................................13
3.5. POST products...........................................................................................................................14
Metoda..............................................................................................................................................14
URL....................................................................................................................................................14
Campuri.............................................................................................................................................14
Exemplu.............................................................................................................................................18
3.6. PUT products.............................................................................................................................18
Metoda..............................................................................................................................................19
URL....................................................................................................................................................19
Campuri.............................................................................................................................................19
Exemplu request................................................................................................................................21
3.7. DELETE products........................................................................................................................21
Metoda..............................................................................................................................................21
URL....................................................................................................................................................21
Campuri.............................................................................................................................................21
Exemplu request................................................................................................................................21
3.8. PUT Offers..................................................................................................................................22
Metoda..............................................................................................................................................22
URL....................................................................................................................................................22
Campuri.............................................................................................................................................22
Exemplu Request...............................................................................................................................23
3.9. PUT Offers Stock........................................................................................................................23
Metoda..............................................................................................................................................23
URL....................................................................................................................................................23
Campuri.............................................................................................................................................24
Exemplu request................................................................................................................................24
4. Gestionare comenzi...........................................................................................................................24
4.1. GET orders.................................................................................................................................24
Metoda..............................................................................................................................................24
URL....................................................................................................................................................24
Filtre..................................................................................................................................................24
Model................................................................................................................................................25
4.2. GET available status by order ID................................................................................................30
Diagrama stari...................................................................................................................................30
Metoda..............................................................................................................................................30
URL....................................................................................................................................................30
Exemplu reqest..................................................................................................................................30
Model................................................................................................................................................30
Exemplu raspuns...............................................................................................................................30
4.3. PUT status..................................................................................................................................32
Metoda..............................................................................................................................................32
URL....................................................................................................................................................32
Exemplu request................................................................................................................................32
Exemplu raspuns...............................................................................................................................32
4.4. PUT vendor quantity..................................................................................................................34
METODA............................................................................................................................................35
URL....................................................................................................................................................35
Exemplu request................................................................................................................................35
Exemplu raspuns...............................................................................................................................35
4.5. Get invoicing details...................................................................................................................38
Metoda..............................................................................................................................................38
URL....................................................................................................................................................38
Exemplu request................................................................................................................................38
Exemplu raspuns...............................................................................................................................38
4.6. POST invoices.............................................................................................................................42
Metoda..............................................................................................................................................42
URL....................................................................................................................................................42
Exemplu request................................................................................................................................42
4.7. PUT cancel generated invoices..................................................................................................46
Metoda..............................................................................................................................................46
URL....................................................................................................................................................46
Exemplu request................................................................................................................................46
Exemplu raspuns...............................................................................................................................47
4.8. Delete attached invoice.............................................................................................................47
Metoda..............................................................................................................................................47
URL....................................................................................................................................................47
Exemplu request................................................................................................................................47
Exemplu raspuns...............................................................................................................................47
4.9. GET details for AWB...................................................................................................................48
Metoda..............................................................................................................................................48
URL....................................................................................................................................................48
Exemplu request................................................................................................................................48
Exemplu raspuns...............................................................................................................................48
4.10. GET available couriers and cost estimation...........................................................................49
Metoda..............................................................................................................................................49
URL....................................................................................................................................................49
Exemplu request................................................................................................................................49
Exemplu raspuns...............................................................................................................................49
4.11. Generate AWB for order........................................................................................................50
Metoda..............................................................................................................................................50
URL....................................................................................................................................................50
Exemplu request................................................................................................................................50
Exemplu raspuns...............................................................................................................................51
4.12. Print AWB..............................................................................................................................52
Metoda..............................................................................................................................................52
URL....................................................................................................................................................52
Exemplu request................................................................................................................................52
Exemplu raspuns...............................................................................................................................52
1. Overview

Modulul API al Doraly Marketplace este destinat tuturor comerciantilor ce doresc integrarea cu
platforma Doraly Marketplace.

Conditii de integrare:

- Comerciantul trebuie sa aiba cont creat pe platforma Doraly Marketplace


- Comerciantul trebuie sa de adreseze Doraly marketplace pentru generarea parolei pentru API

1.1. Request-uri

Metoda URL Descriere

POST /users/login Autentificare in API-ul Doraly.ro

GET /products Returneaza produsele comerciantului

GET /categories Returneaza categoriile atribuite comerciantului

GET /products/stockStatus Returneaza status-urile disponibile pentru oferta

POST /products Adauga produse noi in contul comerciantului

PUT /products Editeaza produsele din contul comerciantului

POST /offers Adauga oferte noi in contul comerciantului pentru


produse existente in contul sau sau in contul altui
comerciant

PUT /offers Editeaza ofertele existente in contul de comerciant

PUT offers/stock Updateaza stocul produselor

GET /orders Returneaza toate comenzile comerciantului

GET /orders/statuses/{id} Returneaza status-urile disponibile pentru o anumita


comanda

PUT /orders/statuses/{id}/{status} Updateaza status-ul comenzii

PUT /orders/quantities/{id} Updateaza cantitatea disponibila pentru un produs pe


comanda

GET /invoice-details Returneaza metoda aleasa pentru generarea sau


atasarea facturii pe comanda

POST /invoice Genereaza sau ataseaza factura in functie de metoda


aleasa de comerciant

PUT /invoice Anuleaza factura

GET /orders/awb/ Afiseaza toate adresele de ridicare ale comerciantului


pickUpAddresses autentificat

GET /lockers Afiseaza lockerele Sameday disponibile

GET /order/details-for-awb Returneaza detaliile pentru generarea AWB-ului

POST /orders/awb/available- Returneaza curierii disponibili si preturile estimate


couriers/

POST /orders/awb/{{orderId}} Genereaza AWB

GET /orders/printAwb/ Returneaza documentul pdf al AWB-ului

1.2. Paginatia

Key Descriere Default Value Exemplu

perPage Seteaza numarul de obiercte din 25 perPage=100


raspuns

page Seteaza numarul paginii ce este 1 page=1


ceruta catre server

1.3. Raspunsul

Cand se face un raspuns catre server, acesta intoarce un raspuns. Raspunsul este in toate cazurile un
JSON.
Headerul raspunsului va contine application/json; charset=utf-8.

1.4. Suport integrare


Pentru suport va rugam sa ne contactati la support@doraly.ro

2. Autentificare

Mediu de test
https://ylarod.ro/api/vendors

email: extern@extern.ro

password: $2a$08$OhB8ZPJumLWOBqyVMYetuOeH3aLga76vLb21FElr7k0MpzUbgknQi

Mediul de live
https://doraly.ro/api/vendors

Autentificarea in API se face folosind User si parola:

User: adresa de email a contului de comerciant de pe platforma Doraly.ro

Parola: Se regaseste in contul de comerciant din https://doraly.ro/marketplace , sectiunea profil

Trebuie sa cereti responsabilului din partea Doraly sa va genereze o cheie de API.

Metoda
POST

URL
/users/login

Body:

{
  "email": "{{email}}",
  "password": "{{password}}"
}

Exemplu raspuns
Raspunsul acestui request este un token de autentificare

Ex:

{
    "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiby5tdXJhcml1QHRvb2xzd29
ybGQucm8iLCJlbWFpbCI6Im8ubXVyYXJpdUB0b29sc3dvcmxkLnJvIiwiaWF0IjoxNjE3MDExMTUyLCJleHAiO
jE2MTcwMzI3NTJ9.NSPw3DUGrD705Iu7jEUyO5r60-kDBULc21ZiIunaT_g"
}

Acest token trebuie folosit in header pentru toate request-urile ulterioare ca si cheie de autorizare.

Authorization cu cheia:

Bearer
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiby5tdXJhcml1QHRvb2xzd29ybGQucm8iLCJlbWFpbCI
6Im8ubXVyYXJpdUB0b29sc3dvcmxkLnJvIiwiaWF0IjoxNjE3MDExMTUyLCJleHAiOjE2MTcwMzI3NTJ9.NSP
w3DUGrD705Iu7jEUyO5r60-kDBULc21ZiIunaT_g
3. Gestionare produse si oferte

3.1. GET products

Metoda
GET

URL
/api/vendors/products

3.2. GET product by ID

Metoda
GET

URL
/api/vendors/products/id

3.3. GET categories

Pentru a putea adauga produse noi in platforma Doraly trebuie sa aveti categorii atribuite.

Pentru a putea vedea categoriile atribuite trebuie facut request-ul de mai jos:

Metoda
GET

URL
/categories

Raspuns
[
    {
        "id": "da5733781dcd656f90000189",
        "displayName": "Electronice si Electrocasnice \\ Electronice \\ Automatizari c
asnice si sisteme de securitate \\ Microfoane sisteme",
        "nameCategory": "Microfoane sisteme",
        "allowProducts": true,
        "groups": [
            {
                "name": "CARACTERISTICI GENERALE",
                "specifications": [
                    {
                        "name": "Tip produs",
                        "filter": false,
                        "priority": 1,
                    },
                    {
                        "name": "Utilizare",
                        "filter": false,
                        "priority": 2,
                    },
                    {
                        "name": "Material",
                        "filter": false,
                        "priority": 3,
                    },
                    {
                        "name": "Culoare",
                        "filter": false,
                        "priority": 4,
                    },
                    {
                        "name": "Raza de actiune",
                        "filter": false,
                        "priority": 5,
                    }
                ],
                "priority": 1
            }
        ]
    }
]

Acesta returneaza:
Camp Camp Camp Tip Exemplu Descriere

id string da5733781dcd656f90003378 Id-ul


categoriei ce
trebuie folosit
la adaugarea
sau editarea
produselor

displayName string Auto Velo \\ Auto \\ Baze Breadcrumbul


magnetice categoriei

nameCategory string Baze magnetice Numele


categoriei

Groups Array Grupul de


specificatii

name CARACTERISTICI GENERALE Numele


grupului de
specificatii

specifications Array Specificatiile


ce poti fi
adaugate pe
produs

name String Tip Numele


specificatiei

filter boolean True Daca este


filtru acesta
este
obligatorie la
crearea sau
editarea de
produs

Exemplu:
{
"id": "da5733781dcd656f90003363",
"displayName": "Auto Velo \\ Auto \\ Anvelope",
"nameCategory": "Anvelope",
"groups": [
{
"name": "DIMENSIUNI",
"specifications": [
{
"name": "Latime",
"filter": true,
},
{
"name": "Inaltime",
"filter": true,
},
{
"name": "Diametru",
"filter": true,
}
]
},
{
"name": "CARACTERISTICI TEHNICE",
"specifications": [
{
"name": "Brand",
"filter": true,
},
{
"name": "Sezon",
"filter": true,
},
{
"name": "Indice sarcina",
"filter": true,
},
{
"name": "Indice viteza",
"filter": true,
},
{
"name": "Clasa eficienta consum",
"filter": true,
},
{
"name": "Clasa aderenta pe suprafete umede",
"filter": true,
},
{
"name": "Nivel de zgomot (dB)",
"filter": true,
}
]
}
]
}c

3.4. GET Offer stock status

Metoda
GET

URL
/products/stockStatus

Raspuns
[
    {
        "_id": "da5733781dcd656f90000020",
        "isDeleted": false,
        "availablestock": "In stoc magazin"
    },
    {
        "_id": "da5733781dcd656f90000024",
        "isDeleted": false,
        "availablestock": "Stoc epuizat"
    }
]
3.5. POST products

Metoda de adaugare produse pe platforma Doraly

Metoda
POST

URL
/products

Campuri
Camp Camp Camp Tip Exemplu Obligatoriu Descriere

productName string Blender Philips Avance Da Numele produsului


Collection HR3664/90, 1400
W, 2.2 L tritan, viteza
variabila, 1 recipient 2go,
progam smoohie, ProBlend
6, Gri

brand string Philips Da Brandul produsului

productCode string D13JNLBBM Da Codul produsului din


gestionea comerciantului.
Trebuie sa fie unic la nivel de
comerciant

weight number 5 Da Greutatea produsului

categoryId da5733781dcd656f9000022 Da Id-ul categoriei in care va fi


0 produsul. Acesta se gaseste
in call-ul GET Categories

greenTax number 2 Nu Taxa de timbru verde


aplicata produsului

shortDescription string Blender Philips Avance Nu O scurta descriere a


Collection HR3664/90, 1400 produsului
W, 2.2 L tritan, viteza
variabila, 1 recipient 2go,
progam smoohie, ProBlend
6, Gri

longDescription string Nu, Descrierea produsului


recomanda
t

images String, https://doraly.ro/scale/ Nu, Link spre imaginea


array resize/99999? recomanda produsului
progressive=true&quality=1 t
00&url=/doraly-assets-
images/images/2021-02-
11T10-06:28.684Z-
imageFromUrl-2-0.jpeg

productSpecifications Array

name string CARACTERISTICI GENERALE In functie Numele grupului de


de specificatii, se ia din call-ul
categoria GET categories
produsului

specificatio name String Putere In functie Numele specificatiei, se ia


ns de valoarea din call-ul GET categories
filter de pe
categorie,
daca
aceasta are
valoarea
true, name
este
obligatoriu

specificatio value string 120 In functie Valoarea pentru specificatie


ns de valoarea "name". Pot fi 0 sau mai
filter de pe multe valori.
categorie,
daca
aceasta are
valoarea
true,
valueeste
obligatoriu

offers array Da

stock Number 100 Da

stockStatus String In stoc magazin/Fara stoc Da Se completeaza cu una din


valorile availablestock

Din call-ul
http://ylarod.ro/api/vendors
/products/stockStatus

deliveryTim Number 1 Nu Minimul de timp, in zile in


e care produsul ajunge la
client

maximumD Number 1 Nu Maximul de zile in care


eliveryTime produsul ajunge la client,
extra timpul de la
deliveryTime

guarantee Number 24 Nu Garantia oferita produsului,


in luni

offerType Boolean Da Tipul de oferta 1= Standard,


2 = Promotie

price1 Double Da Pretul pe o bucata pentru o


cantitate din intervalul
quantity1 – quantity2

quantity1 Number Da Cantitatea minima la care se


vinde produsulul

promoPrice Double Doar Pretul promotional la bucata


1 pentru pentru intervalul quantity1 –
offerType= quantity2.
2
Trebuie sa fie mai mic decat
price 1

price2 Double Da Pretul pe o bucata pentru o


cantitate din intervalul
quantity2 – quantity3

Trebuie sa fie mai mic decat


price 1

quantity2 Number Da Cantitatea de la care se


aplica price2

promoPrice Double Doar Pretul promotional la bucata


2 pentru pentru intervalul quantity2 –
offerType= quantity3.
2
Trebuie sa fie mai mic decat
price 2 si mai mic decat
promoPrice1

price3 Double Da Cantitatea de la care se


aplica price3

quantity3 Number Da Pretul pe o bucata pentru o


cantitate din intervalul
quantity3 – .

Trebuie sa fie mai mic decat


price 2

promoPrice Double Doar Pretul promotional la bucata


3 pentru pentru intervalul quantity3
offerType= -.
2
Trebuie sa fie mai mic decat
price 3 si mai mic decat
promoPrice2

Model request:
[

"productName":"string",

"brand":"string",

"productCode":"string",

"weight":0,

"categoryId":"string",

"greenTax":0,

"shortDescription":"string",

"longDescription":"string",

"images":[

"string"

],

"productSpecifications":[

"name":"string",

"specifications":[

"name":"string",

"value":"string"

],

"offers":[

"stock":0,

"stockStatus":"string",
"deliveryTime":0,

"maximumDeliveryTime":0,

"guarantee":0,

"offerType":0,

"price1":0,

"quantity1":0,

"promoPrice1":0,

"price2":0,

"quantity2":0,

"promoPrice2":0,

"price3":0,

"quantity3":0,

"promoPrice3":0 }

Exemplu
3.6. PUT products

Este metoda de editare produse pe baza id-ului de produs din aplicatia Doraly.

Se pot edita unul, mai multe sau toate campurile unui produs.

ATENTIE!!!

Odata cu editarea unui produs, statusul acestuia se midifica in Cerere Validare si nu mai este disponibil
pentru client pana la validarea acestuia de catre category managerul assignat.

Metoda
PUT

URL
/products

Campuri
Camp Camp Camp Tip Exemplu Obligatoriu Descriere

productId Da Se preia din GET products

productName string Blender Philips Avance Nu Numele produsului


Collection HR3664/90, 1400
W, 2.2 L tritan, viteza
variabila, 1 recipient 2go,
progam smoohie, ProBlend
6, Gri

brand string Philips Nu Brandul produsului

productCode string D13JNLBBM Nu Codul produsului din


gestionea comerciantului.
Trebuie sa fie unic la nivel de
comerciant

weight number 5 Nu Greutatea produsului

categoryId da5733781dcd656f9000022 Nu Id-ul categoriei in care va fi


0 produsul. Acesta se gaseste
in call-ul GET Categories

greenTax number 2 Nu Taxa de timbru verde


aplicata produsului

shortDescription string Blender Philips Avance Nu O scurta descriere a


Collection HR3664/90, 1400
W, 2.2 L tritan, viteza produsului
variabila, 1 recipient 2go,
progam smoohie, ProBlend
6, Gri

longDescription string Nu Descrierea produsului

images String, https://doraly.ro/scale/ Nu Link spre imaginea


array resize/99999? produsului
progressive=true&quality=1
00&url=/doraly-assets-
images/images/2021-02-
11T10-06:28.684Z-
imageFromUrl-2-0.jpeg

productSpecifications Array

name string CARACTERISTICI GENERALE Nu Numele grupului de


specificatii, se ia din call-ul
GET categories

specificatio name String Putere Nu Numele specificatiei, se ia


ns din call-ul GET categories

specificatio value string 120 Nu Valoarea pentru specificatie


ns "name". Pot fi 0 sau mai
multe valori.

offers array Daca se completeaza un


camp, toate campurile din
obiectul offers, marcat cu Da
in coloana Obligatoriu,
trebuie completate

stock Number 100 Nu Reprezinta stocul numeric


din gestiune la momentul
editarii produsului

stockStatus String In stoc magazin/Fara stoc Nu Se completeaza cu una din


valorile availablestock

Din call-ul
http://ylarod.ro/api/vendors
/products/stockStatus

deliveryTim Number 1 Nu Minimul de timp, in zile in


e care produsul ajunge la
client

maximumD Number 1 Nu Maximul de zile in care


eliveryTime produsul ajunge la client,
extra timpul de la
deliveryTime

guarantee Number 24 Nu Garantia oferita produsului,


in luni
offerType Boolean Nu Tipul de oferta 1= Standard,
2 = Promotie

price1 Double Nu Pretul pe o bucata pentru o


cantitate din intervalul
quantity1 – quantity2

quantity1 Number Nu Cantitatea minima la care se


vinde produsulul

promoPrice Double Nu Pretul promotional la bucata


1 pentru intervalul quantity1 –
quantity2.

Trebuie sa fie mai mic decat


price 1

price2 Double Nu Pretul pe o bucata pentru o


cantitate din intervalul
quantity2 – quantity3

Trebuie sa fie mai mic decat


price 1

quantity2 Number Nu Cantitatea de la care se


aplica price2

promoPrice Double Nu Pretul promotional la bucata


2 pentru intervalul quantity2 –
quantity3.

Trebuie sa fie mai mic decat


price 2 si mai mic decat
promoPrice1

price3 Double Nu Cantitatea de la care se


aplica price3

quantity3 Number Nu Pretul pe o bucata pentru o


cantitate din intervalul
quantity3 – quantity4

Trebuie sa fie mai mic decat


price 2

promoPrice Double Nu Pretul promotional la bucata


3 pentru intervalul quantity3 –
quantity4.

Trebuie sa fie mai mic decat


price 3 si mai mic decat
promoPrice2
Exemplu request
3.7. DELETE products

Motoda prin care se pot sterge produsele adaugate in contul de comerciant de pe Doraly.ro.

Metoda
DELETE

URL
/products

Campuri
Camp Tip Exemplu Obligatoriu Descriere

productId array 606f1c4160034b000c1687be Da Se preia din GET products

Exemplu request
3.8. PUT Offers
Metoda de editare a ofertelor produselor. Se pot edita una sau mai multe oferte intr-un request.

Editarea se face pe baza id-ului de oferta

Metoda
PUT

URL
/offers

Campuri
Camp Tip Exemplu Obligatoriu Descriere

offerId string 607076185679fd0 Da Este id-ul ofertei produsului – se


00d9959f9 obtine din request-ul GET
products

stock Number 100 Da Reprezinta stocul numeric din


gestiune la momentul editarii
ofertei

stockStatus String In stoc Da Se completeaza cu una din


magazin/Fara stoc valorile availablestock

Din call-ul
http://ylarod.ro/api/vendors/pr
oducts/stockStatus

deliveryTime Number 1 Nu Minimul de timp, in zile in care


produsul ajunge la client

maximumDeliveryTime Number 1 Nu Maximul de zile in care produsul


ajunge la client, extra timpul de
la deliveryTime

guarantee Number 24 Nu Garantia oferita produsului, in


luni

offerType Boolean Da Tipul de oferta 1= Standard, 2 =


Promotie

price1 Double Da Pretul pe o bucata pentru o


cantitate din intervalul
quantity1 – quantity2

quantity1 Number Da Cantitatea minima la care se


vinde produsulul

promoPrice1 Double Da Pretul promotional la bucata


pentru intervalul quantity1 –
quantity2.
Trebuie sa fie mai mic decat
price 1

price2 Double Da Pretul pe o bucata pentru o


cantitate din intervalul
quantity2 – quantity3

Trebuie sa fie mai mic decat


price 1

quantity2 Number Da Cantitatea de la care se aplica


price2

promoPrice2 Double Da Pretul promotional la bucata


pentru intervalul quantity2 –
quantity3.

Trebuie sa fie mai mic decat


price 2 si mai mic decat
promoPrice1

price3 Double Nu Cantitatea de la care se aplica


price3

quantity3 Number Nu Pretul pe o bucata pentru o


cantitate din intervalul
quantity3 – quantity4

Trebuie sa fie mai mic decat


price 2

promoPrice3 Double Nu Pretul promotional la bucata


pentru intervalul quantity3 –
quantity4.

Trebuie sa fie mai mic decat


price 3 si mai mic decat
promoPrice2

Exemplu Request
3.9. PUT Offers Stock

Metoda de update stoc pe baza id-ului de oferta.

Folosind aceata metoda pentru update-ul stocului, produsle vor ramane publicate, nu vor intra in status-
ul cerere validare.

Metoda
PUT

URL
/offers/stock

Campuri
Camp Tip Exemplu Obligatoriu Descriere

offerId string 607076185679fd0 Da Este id-ul ofertei produsului – se


00d9959f9 obtine din request-ul GET
products

stock Number 100 Da Reprezinta stocul numeric din


gestiunea la momentul editarii
stocului

Exemplu request

3.10. PUT offers stock by product code

Metoda de update stoc pe baza codului de produs.

Folosind aceata metoda pentru update-ul stocului, produsle vor ramane publicate, nu vor intra in status-
ul cerere validare.

Metoda
PUT
URL
/offers/stockByproductCode

Campuri
Camp Tip Exemplu Obligatoriu Descriere

productCode string D13JNLqBB111 Da Este id-ul ofertei produsului – se


obtine din request-ul GET
products

stock Number 100 Da Reprezinta stocul numeric din


gestiunea la momentul editarii
stocului

Model Request
[
{
"productCode": "string",
"stock": 0
}
]

Exemplu request

4. Gestionare comenzi

Orice comeerciant cu access la API isi poate gestiona comenzile de pe Doraly Marketplace prin API.

4.1. GET orders


Este metoda prin care vedeti toate comenzile cu toate detaliile acestora de pe Doraly Marketplace

Metoda
GET

URL
/orders
Filtre
- Numar comanda
ex: {"no": "40652"}
- Status comanda

ex: {"status":"In curs de livrare"}

- Metoda de plata

ex: {"paymentMethod": "Numerar la curier (Ramburs)"}

Model
[
{
"_id": "string",
"orderId": "string",
"email": "string",
"client": "string",
"oldID": "string",
"no": "string",
"placingDate": "2021-04-10T09:58:41.029Z",
"status": "string",
"opensParcel": true,
"paymentMethod": "string",
"reasonCancelOrder": "string",
"totalClient": 0,
"totalVendor": 0,
"difference": 0,
"totalTransport": 0,
"total": 0,
"createdAt": "2021-04-10T09:58:41.029Z",
"updatedAt": "2021-04-10T09:58:41.029Z",
"orderClient": {
"fullName": "string",
"email": "string",
"phoneNumber": "string",
"deliveryAddress": {
"address": "string",
"city": "string",
"county": "string",
"phoneNumber": "string",
"contactPerson": "string",
"deliveryMethod": "string",
"fiscalCode": "string",
"regCom": "string",
"bank": "string",
"iBan": "string"
},
"billingAddress": {
"address": "string",
"city": "string",
"county": "string",
"phoneNumber": "string",
"contactPerson": "string",
"deliveryMethod": "string",
"fiscalCode": "string",
"regCom": "string",
"bank": "string",
"iBan": "string"
}
},
"products": [
{
"name": "string",
"id": "string",
"productId": "string",
"productName": "string",
"productSlug": "string",
"productImage": "string",
"productCode": "string",
"doralyCode": "string",
"productCategory": "string",
"productWeight": 0,
"measuringUnit": "string",
"measuringUnitVendor": "string",
"clientQuantity": 0,
"vendorQuantity": 0,
"categoryTva": 0,
"clientTotalNoTVA": 0,
"vendorTotalNoTVA": 0,
"clientTVA": 0,
"vendorTVA": 0,
"totalClient": 0,
"totalVendor": 0,
"comission": 0
}
],
"voucher": {
"name": "string",
"typeVoucher": 0,
"valueCustomer": 0,
"valueVendor": 0,
"valueTransport": 0,
"valueTransportTva": 0,
"valueTransportWithOutTva": 0,
"valueCustomerTva": 0,
"valueVendorTva": 0,
"valueCustomerWithoutTva": 0,
"valueVendorWithoutTva": 0
},
"transport": [
{
"weightBrut": 0,
"weightNet": 0,
"totalNoTva": 0,
"totalWithTva": 0,
"tva": 0
}
],
"refundsIds": [
"string"
],
"refunds": [
{
"id": "string",
"nrRefund": 0,
"status": "string",
"city": "string",
"county": "string",
"contactPerson": "string",
"email": "string",
"phoneNumber": "string",
"refundProducts": [
{
"cod": "string",
"name": "string",
"orderId": "string",
"orderQuantity": 0,
"orderSum": 0,
"refundQunatity": 0,
"refundQuantity": 0,
"refundSum": 0,
"productWeight": 0,
"refundReason": "string",
"mainRefundReason": "string"
}
],
"invoicesIds": [
"string"
],
"invoices": [
{
"id": "string",
"file": "string",
"file_p": {
"id": "string",
"name": "string",
"contentType": "string",
"selfLink": "string",
"link": "string",
"fileType": "string",
"createdAt": "2021-04-10T09:58:41.030Z",
"updatedAt": "2021-04-10T09:58:41.030Z"
},
"invoiceId": "string",
"type": 0,
"category": 0,
"state": 0,
"fromRefund": true,
"isDeleted": true,
"invoiceDate": "2021-04-10T09:58:41.030Z",
"orderId": "string"
}
],
"images": [
"string"
]
}
],
"invoicesIds": [
"string"
],
"invoices": [
{
"id": "string",
"file": "string",
"file_p": {
"id": "string",
"name": "string",
"contentType": "string",
"selfLink": "string",
"link": "string",
"fileType": "string",
"createdAt": "2021-04-10T09:58:41.030Z",
"updatedAt": "2021-04-10T09:58:41.030Z"
},
"invoiceId": "string",
"type": 0,
"category": 0,
"state": 0,
"fromRefund": true,
"isDeleted": true,
"invoiceDate": "2021-04-10T09:58:41.030Z",
"orderId": "string"
}
],
"awbsIds": [
"string"
],
"awbs": [
{
"id": "string",
"orderId": "string",
"responseAwb": {},
"courier": "string",
"number": "string",
"ramburs": 0,
"isRequested": true,
"historyAwb": [
{
"dateTime": "string",
"operationCode": "string",
"description": "string"
}
],
"createdAt": "2021-04-10T09:58:41.030Z",
"updatedAt": "2021-04-10T09:58:41.030Z"
}
],
"documentsIds": [
"string"
],
"documents": [
{
"id": "string",
"name": "string",
"contentType": "string",
"selfLink": "string",
"link": "string",
"fileType": "string",
"createdAt": "2021-04-10T09:58:41.030Z",
"updatedAt": "2021-04-10T09:58:41.030Z"
}
],
"vendor": {
"id": "string",
"email": "string",
"phoneContactPerson": "string",
"companyName": "string",
"password": "string",
"oldID": "string",
"doralyInvoices": true,
"uploadOneInvoice": true,
"vendorType": 0,
"startTaxInvoices": 0,
"stopTaxInvoices": 0,
"statTransportBills": 0,
"stopTransportBills": 0,
"categories": [
{
"id": "string",
"displayName": "string",
"nameCategory": "string",
"allowProducts": true,
"groups": [
{
"name": "string",
"specifications": [
{
"name": "string",
"filter": true,
"value": [
"string"
],
"priority": 0,
"filterType": "string",
"filterH1": "string",
"filterMetaTitle": "string",
"filterMetaDescription": "string",
"filterDescription": "string",
"parentId": "string"
}
],
"priority": 0
}
]
}
]
},
"parentOrder": "string",
"history": [
{
"id": "string",
"entityId": "string",
"action": "string",
"diff": "string",
"createdBy": {
"username": "string",
"fullName": "string"
},
"createdAt": "2021-04-10T09:58:41.030Z",
"updatedAt": "2021-04-10T09:58:41.030Z"
}
]
}
]
4.2. GET available status by order ID
Este metoda prin care gasiti urmatorul status disponibil pentru o comanda anume.

Diagrama stari
Ambalata In curs de livrare Livrata
[Scanare curier] [Scanare curier]

[Prin API [PUT order/statuses]]

[Prin API
[PUT
order/statuses]] Nereceptionata

Nepreluata [Prin API [PUT Preluata [Prin API [PUT Confirmata


order/statuses]] order/statuses]]

[Prin API [PUT Vendor Quantity]]

[Doraly Customer care]

Comanda cu probleme

[Doraly Customer care]

Anulata

Metoda
GET

URL
/orders/statuses/{id}

Exemplu reqest
/orders/statuses/6071779516ff12000ced4bdb

Model
{
"name": "string",
"isAvailable": true
}

Exemplu raspuns
[
    {
        "name": "Nepreluata",
        "isAvailable": false
    },
    {
        "name": "Preluata",
        "isAvailable": true
    },
    {
        "name": "Confirmata",
        "isAvailable": false
    },
    {
        "name": "Ambalata",
        "isAvailable": false
    },
    {
        "name": "In curs de livrare",
        "isAvailable": false
    },
    {
        "name": "Livrata",
        "isAvailable": false
    },
    {
        "name": "Anulata",
        "isAvailable": false
    },
    {
        "name": "Nereceptionat",
        "isAvailable": false
    },
    {
        "name": "Comanda cu probleme",
        "isAvailable": false
    },
    {
        "name": "Asteptare confirmare plata",
        "isAvailable": false
    }
]
4.3. PUT status
Metoda prin care se updateaza status-ul unei comenzi

Singurul status cu care se poate updata o comanda este cel care are in raspunsul de la request-ul
/orders/statuses/{id}, isAvailable: true

ATENTIE:

Nu se poate trece de status-ul Confirmata fara a Genera/atasa factura

Metoda
PUT

URL
/orders/statuses/{id}/{status}

Exemplu request
/orders/statuses/6071779516ff12000ced4bdb/Preluata

Exemplu raspuns
{
    "orderId": "6071779516ff12000ced4bdb",
    "no": "40652",
    "placingDate": "2021-04-10T10:01:57.668Z",
    "status": "Preluata",
    "opensParcel": false,
    "paymentMethod": "Numerar la curier (Ramburs)",
    "totalClient": 246.22,
    "totalVendor": 246.22,
    "difference": 0,
    "totalTransport": 15.05,
    "total": 261.27,
    "createdAt": "2021-04-10T10:01:57.730Z",
    "updatedAt": "2021-04-10T11:26:01.829Z",
    "orderClient": {
        "fullName": "test",
        "email": "test@gmail.com",
        "phoneNumber": "0786470434",
        "deliveryAddress": {
            "address": "test nr 4",
            "city": "CUSUIUS",
            "county": "BIHOR",
            "phoneNumber": "0788000000",
            "contactPerson": "Test
            "deliveryMethod": "Livrare prin curier"
        },
        "billingAddress": {
            "address": "test nr 4",
            "city": "CUSUIUS",
            "county": "BIHOR",
            "phoneNumber": "0786470434",
            "contactPerson": "test",
            "deliveryMethod": "Livrare prin curier",
            "fiscalCode": null,
            "regCom": null,
            "bank": null,
            "iBan": null
        }
    },
    "products": [
        {
            "productId": "60716c0b73ecf6000e37ff83",
            "productName": "Blender Philips Avance Collection HR3664/90, 1400 W, 2.2 L 
tritan, viteza variabila, 1 recipient 2go, progam smoohie, ProBlend 6, Gri",
            "productSlug": "blender-philips-avance-collection-hr3664-90-1400-w-2-2-l-
tritan-viteza-variabila-1-recipient-2go-progam-smoohie-problend-6-gri-
d13jnlbbm111.html",
            "productImage": "https://storage.googleapis.com:443/doraly-assets-images/
images/2021-04-10T09-12-43.963Z-imageFromUrl-1.jpeg",
            "productCode": "D13JNLBBM111",
            "doralyCode": "02-03-01-01-00213",
            "productCategory": "da5733781dcd656f90000220",
            "productWeight": 5.5,
            "measuringUnit": "[ Interval 1 ] 1 x 246.22 = 246.22",
            "measuringUnitVendor": "[ Interval 1 ] 1 x 246.22 = 246.22",
            "clientQuantity": 1,
            "vendorQuantity": 1,
            "categoryTva": 19,
            "clientTotalNoTVA": 246.22,
            "vendorTotalNoTVA": 246.22,
            "clientTVA": 0,
            "vendorTVA": 0,
            "totalClient": 246.22,
            "totalVendor": 246.22,
            "comission": 29.36
        }
    ],
    "transport": [
        {
            "weightBrut": 6.05,
            "weightNet": 5.5,
            "totalNoTva": 15.05,
            "totalWithTva": 15.05,
            "tva": 0
        }
    ],
    "refunds": [],
    "invoices": [],
    "awbs": [],
    "documents": [],
    "history": [
        {
            "action": "Create",
            "diff": "Creare",
            "createdBy": {
                "username": "Sistem"
            },
            "createdAt": "2021-04-10T10:01:57.812Z",
            "updatedAt": "2021-04-10T10:01:57.812Z"
        },
        {
            "action": "Update",
            "diff": "Nepreluata - Preluata",
            "createdBy": {
                "username": "extern@extern.ro",
                "fullName": "Comerciant extern test"
            },
            "createdAt": "2021-04-10T11:26:01.845Z",
            "updatedAt": "2021-04-10T11:26:01.845Z"
        }
    ]
}
4.4. PUT vendor quantity
Metoda prin care se poate updata cantitatea disponibila in stoc din produsele comandate de client.

Se foloseste in momentul in care stocul fizic din deposit este mai mic decat cantitatea comandata de un
client pe un produs.

ATENTIE:

Pentru a schimba cantiteatea disponibila pentru un produs, comanda trebuie sa fie in status-ul PReluata
sau Comanda cu probleme

In momentul in care o comanda este in status-ul comanda cu probleme, doar reprezentantii Doraly ii
mai pot schimba status-ul, dup ace i-au comunicat clientului noua cantitate disponibila.

METODA
PUT

URL
/orders/quantities/{{orderId}}

Exemplu request
[
  {
    "productId": "60716c0b73ecf6000e37ff83",
    "quantity": 2
  }
]

Exemplu raspuns
{
    "orderId": "60740516e8762600130cbd3c",
    "no": "40661",
    "placingDate": "2021-04-12T08:30:14.696Z",
    "status": "Comanda cu probleme",
    "opensParcel": false,
    "paymentMethod": "Numerar la curier (Ramburs)",
    "totalClient": 1211.28,
    "totalVendor": 440.92,
    "difference": 0,
    "totalTransport": 21.1,
    "total": 1211.28,
    "createdAt": "2021-04-12T08:30:14.721Z",
    "updatedAt": "2021-04-12T08:32:03.983Z",
    "orderClient": {
        "fullName": "TEST",
        "email": "TEst@gmail.com",
        "phoneNumber": "0786888888",
        "deliveryAddress": {
            "address": "TEST",
            "city": "HALALIS",
            "county": "ARAD",
            "phoneNumber": "0786888888",
            "contactPerson": "TEST",
            "deliveryMethod": "Livrare prin curier"
        },
        "billingAddress": {
            "address": "TEST",
            "city": "HALALIS",
            "county": "ARAD",
            "phoneNumber": "0786888888",
            "contactPerson": "TEST",
            "deliveryMethod": "Livrare prin curier",
            "fiscalCode": null,
            "regCom": null,
            "bank": null,
            "iBan": null
        }
    },
    "products": [
        {
            "productId": "60716c0b73ecf6000e37ff83",
            "productName": "Blender Philips Avance Collection HR3664/90, 1400 W, 2.2 L 
tritan, viteza variabila, 1 recipient 2go, progam smoohie, ProBlend 6, Gri",
            "productSlug": "blender-philips-avance-collection-hr3664-90-1400-w-2-2-l-
tritan-viteza-variabila-1-recipient-2go-progam-smoohie-problend-6-gri-
d13jnlbbm111.html",
            "productImage": "https://storage.googleapis.com:443/doraly-assets-images/
images/2021-04-10T09-12-43.963Z-imageFromUrl-1.jpeg",
            "productCode": "D13JNLBBM111",
            "doralyCode": "02-03-01-01-00213",
            "productCategory": "da5733781dcd656f90000220",
            "productWeight": 5.5,
            "measuringUnit": "[ Interval 2 ] 6 x 201.88 = 1211.28",
            "measuringUnitVendor": "[ Interval 2 ] 2 x 220.46 = 440.92",
            "clientQuantity": 6,
            "vendorQuantity": 2,
            "categoryTva": 19,
            "clientTotalNoTVA": 1211.28,
            "vendorTotalNoTVA": 440.92,
            "clientTVA": 0,
            "vendorTVA": 0,
            "totalClient": 1211.28,
            "totalVendor": 440.92,
            "comission": 113.9
        }
    ],
    "transport": [
        {
            "weightBrut": 12.1,
            "weightNet": 11,
            "totalNoTva": 21.1,
            "totalWithTva": 21.1,
            "tva": 0
        }
    ],
    "refunds": [],
    "invoices": [],
    "awbs": [],
    "documents": [],
    "history": [
        {
            "action": "Create",
            "diff": "Creare",
            "createdBy": {
                "username": "Sistem"
            },
            "createdAt": "2021-04-12T08:30:14.824Z",
            "updatedAt": "2021-04-12T08:30:14.824Z"
        },
        {
            "action": "Update",
            "diff": "Nepreluata - Preluata",
            "createdBy": {
                "username": "extern@extern.ro",
                "fullName": "Comerciant extern test"
            },
            "createdAt": "2021-04-12T08:31:59.143Z",
            "updatedAt": "2021-04-12T08:31:59.143Z"
        },
        {
            "action": "Update",
            "diff": "Blender Philips Avance Collection HR3664/90, 1400 W, 2.2 L tritan
, viteza variabila, 1 recipient 2go, progam smoohie, ProBlend 6, Gri 6 - 2",
            "createdBy": {
                "username": "extern@extern.ro",
                "fullName": "Comerciant extern test"
            },
            "createdAt": "2021-04-12T08:32:03.926Z",
            "updatedAt": "2021-04-12T08:32:03.926Z"
        }
    ]
}

4.5. Get invoicing details

Metoda prin care aflati ce facturi trebuie sa atasati/ generati

Metoda
GET

URL
/orders/invoicing-details/{orderId}

Exemplu request
/orders/invoicing-details/{{orderId}}

Exemplu raspuns

1. Daca la crearea contului ati ales sa atasati facturile pe comanda – cate o factura pentru
produsule din comanda si alta pentru transport, raspunsul va fi:

"creationMethod": "Attach",

"type": 1,

"category": 1,

"available": true

},

"creationMethod": "Attach",

"type": 1,

"category": 2,

"available": true

},

"creationMethod": "Attach",
"type": 2,

"category": 1,

"available": false

},

"creationMethod": "Attach",

"type": 2,

"category": 2,

"available": false

Explicatii:

creationMethod: Attach pentru ca trebuie sa atasati facturile

type:

1- Factura vanzare
2- Factura storno

category:

1 – Factura produse

2 – Factura transport

Available:

- True – aveti voie sa o atasati in status-ul actual al comenzii


- False – nu se poate atasa in status-ul actual al comenzii

Pentru a atasa factura, comanda trebuie sa fie in starea Confirmata, sau daca ati sers-o, o mai puteti
adauga in starea Ambalata

2. Daca la crearea contului ati ales sa atasati o singura factura pe comanda, aceeasi si pentru taxa
de transport si pentru produse, raspunsul va fi:

{
"creationMethod": "Attach",

"type": 1,

"category": 3,

"available": true

},

"creationMethod": "Attach",

"type": 2,

"category": 3,

"available": false

Explicatii:

creationMethod: Attach pentru ca trebuie sa atasati facturile

type:

3- Factura vanzare
4- Factura storno

category:

3 – Factura produse + transport

Available:

- True – aveti voie sa o atasati in status-ul actual al comenzii


- False – nu se poate atasa in status-ul actual al comenzii

3. Daca la crearea contului ati ales sa generate facturile din aplicatia Doraly, atunci raspunsi va
arata:

"creationMethod": "Generate",

"type": 1,
"category": 1,

"available": true

},

"creationMethod": "Generate",

"type": 1,

"category": 2,

"available": true

},

"creationMethod": "Generate",

"type": 2,

"category": 1,

"available": false

},

"creationMethod": "Generate",

"type": 2,

"category": 2,

"available": false

Explicatii:

creationMethod: generate - pentru ca trebuie sa generati facturile

type:

1- Factura vanzare
2- Factura storno

category:
1 – Factura produse

2 – Factura transport

Available:

- True – aveti voie sa o atasati in status-ul actual al comenzii


- False – nu se poate atasa in status-ul actual al comenzii
4.6. POST invoices

Este metoda prin care se ataseaza sau se genereaza facturile pe comenzi.

Metoda
POST

URL
/orders/invoices/{{orderId}}

Exemplu request

1. Atasare doua facturi pe comanda , una pentru produse, una pentru transport
a. Atasare vanzare produse

Daca raspunsul in Get invoicing details este

"creationMethod": "Attach",

"type": 1,

"category": 1,

"available": true

Inseamna ca trebuie sa atasezi factura de produse.

Request-ul tau va fi:

/orders/invoices/{{orderId}}?type=1&category=1

Iar in body vei pune parametrul:

- file si fisierul in format .pdf, .png, .jpeg, .jpg – daca ai un fisier cu factura stocat local

sau

- fileUrl si link-ul fisierului in format .pdf, .png, .jpeg, .jpg – daca ai un fisier cu factura stocat pe
internet

b. Atasare factura vanzare transport


Daca raspunsul in Get invoicing details este

"creationMethod": "Attach",

"type": 1,

"category": 2,

"available": true

Ceea ce inseamna ca trebuie sa atasezi factura de vanzare transport

Request-ul tau va fi:

/orders/invoices/{{orderId}}?type=1&category=2

Iar in body vei pune parametrul:

- file si fisierul in format .pdf, .png, .jpeg, .jpg – daca ai un fisier cu factura stocat local

sau

- fileUrl si link-ul fisierului in format .pdf, .png, .jpeg, .jpg – daca ai un fisier cu factura stocat pe
internet

c. Atasare factura storno produse

Daca raspunsul in Get invoicing details este

"creationMethod": "Attach",

"type": 2,

"category": 1,

"available": true

Inseamna ca trebuie sa atasezi factura storno de produse, se poate atasa numai cand comanda este in
status-ul Nereceptionata

Request-ul tau va fi:


/orders/invoices/{{orderId}}?type=2&category=1

Iar in body vei pune parametrul:

- file si fisierul in format .pdf, .png, .jpeg, .jpg – daca ai un fisier cu factura stocat local

sau

- fileUrl si link-ul fisierului in format .pdf, .png, .jpeg, .jpg – daca ai un fisier cu factura stocat pe
internet

d. Atasare factura storno transport

Daca raspunsul in Get invoicing details este

"creationMethod": "Attach",

"type": 2,

"category": 2,

"available": true

Inseamna ca trebuie sa atasezi factura storno de produse, se poate atasa numai cand comanda este in
status-ul Nereceptionata

Request-ul tau va fi:

/orders/invoices/{{orderId}}?type=2&category=2

Iar in body vei pune parametrul:

- file si fisierul in format .pdf, .png, .jpeg, .jpg – daca ai un fisier cu factura stocat local

sau

- fileUrl si link-ul fisierului in format .pdf, .png, .jpeg, .jpg – daca ai un fisier cu factura stocat pe
internet

2. Atasare o singura factura pentru transport si produse


a. Atasare factura vanzare produse + transport

Daca raspunsul in Get invoicing details este

{
"creationMethod": "Attach",

"type": 1,

"category": 3,

"available": true

Ceea ce inseamna ca trebuie sa atasezi factura de vanzare

Request-ul tau va fi:

/orders/invoices/{{orderId}}?type=1&category=3

Iar in body vei pune parametrul:

- file si fisierul in format .pdf, .png, .jpeg, .jpg – daca ai un fisier cu factura stocat local

sau

- fileUrl si link-ul fisierului in format .pdf, .png, .jpeg, .jpg – daca ai un fisier cu factura stocat pe
internet

b. Atasare factura storno produse + transport

Daca raspunsul in Get invoicing details este

"creationMethod": "Attach",

"type": 2,

"category": 3,

"available": true

Ceea ce inseamna ca trebuie sa atasezi factura storno

Request-ul tau va fi

/orders/invoices/{{orderId}}?type=1&category=3

Iar in body vei pune parametrul:


- file si fisierul in format .pdf, .png, .jpeg, .jpg – daca ai un fisier cu factura stocat local

sau

- fileUrl si link-ul fisierului in format .pdf, .png, .jpeg, .jpg – daca ai un fisier cu factura stocat pe
internet

3. Generare facturi
a. Generare factura produse

Daca raspunsul in Get invoicing details este

"creationMethod": "Generate",

"type": 1,

"category": 1,

"available": true

Request-ul tau va fi:

/orders/invoices/{{orderId}}?type=1&category=1

b. Generare factura vanzare transport

Daca raspunsul in Get invoicing details este

"creationMethod": "Generate",

"type": 1,

"category": 2,

"available": true

Request-ul tau va fi:


/orders/invoices/{{orderId}}?type=1&category=2

4.7. PUT cancel generated invoices


Metoda prin care se anuleaza facturi generate prin sistemul doraly.

ATENTIE! Nu se foloseste pentru stergerea facturilor atasate pe comanda

Metoda
PUT

URL
/orders/invoices/cancel/{orderId}/{invoiceId}

Exemplu request
/orders/invoices/cancel/60741b434f75f8000d3fecbe/60745354b82ab6000d51da98

Exemplu raspuns
{
    "id": "60745354b82ab6000d51da98",
    "file": "https://storage.googleapis.com:443/doraly-assets-invoices/commands/
60741b434f75f8000d3fecbe/invoice_cancelled_2021-04-12T14%3A05%3A29.108Z.pdf?
GoogleAccessId=GOOGRC5HNY4ORVWAWKOHD46U&Expires=1618236630&Signature=tD5lChfsOcY70C45J
hYkxiATYn4%3D",
    "invoiceId": "AA 1",
    "type": 1,
    "category": 1,
    "state": 2,
    "fromRefund": false,
    "isDeleted": false,
    "invoiceDate": "2021-04-12T14:04:04.476Z"
}

State:

1- Generata
2- Anulata
invoiceId:

Seria si numarul facturii

4.8. Delete attached invoice

Metoda prin care se sterge o factura atasata pe comanda

Metoda
PUT

URL
/orders/invoices/delete/{{orderId}}/{{invoiceId}}

Exemplu request
/orders/invoices/delete/607435c5d2717d000da00e42/60745b5c1f53f0000c4553df

Exemplu raspuns
Invoice deleted.

4.9. GET pickUp Addresses

Metoda prin care sunt listate toate adresele de ridicare setate de un comerciant in platforma Doraly
Marketplace.

Metoda:

GET

URL:

/orders/awb/pickUpAddresses

Exemplu raspuns:


{
        "_id": "61f3e89ab18dc2342c24ec44",
        "logisticsAddress": "Str. Caragiale, nr. 12",
        "logisticsCity": "PLOIESTI",
        "logisticsCounty": "PRAHOVA",
        "default": true
    }
]

4.10. GET Lockers

Metoda prin care sunt listate toate lockerele disponibile din sistemul Sameday.

Metoda:

GET

URL:

/lockers

Exemplu raspuns:

[
    {
        "id": "62cec60bf261f00389fa9979",
        "name": "easybox Petrom Brancoveanu",
        "country": "Romania",
        "countryId": 187,
        "county": "Bucuresti",
        "countyId": 1,
        "city": "Sectorul 4",
        "cityId": 4,
        "address": "Bd. Constantin Brancoveanu Nr. 97A",
        "postalCode": "041441",
        "lat": "44.383502",
        "lng": "26.110221",
        "lockerId": 49,
        "supportedPayment": true,
        "clientVisible": true,
        "schedule": [
            {
                "day": 1,
                "openingHour": "00:00",
                "closingHour": "23:59"
            },
            {
                "day": 2,
                "openingHour": "00:00",
                "closingHour": "23:59"
            },
            {
                "day": 3,
                "openingHour": "00:00",
                "closingHour": "23:59"
            },
            {
                "day": 4,
                "openingHour": "00:00",
                "closingHour": "23:59"
            },
            {
                "day": 5,
                "openingHour": "00:00",
                "closingHour": "23:59"
            },
            {
                "day": 6,
                "openingHour": "00:00",
                "closingHour": "23:59"
            },
            {
                "day": 7,
                "openingHour": "00:00",
                "closingHour": "23:59"
            }
        ]
    }
]

4.11. GET details for AWB

Metoda prin care primestidetaliile comenzii structurate pentru generarea AWB-ului


Aceasta metoda se foloseste doar in status-ul Ambalata al comenzii

Metoda
GET

URL
/orders/details-for-awb/{{orderId}}

Exemplu request
/orders/details-for-awb/607435c5d2717d000da00e42

Exemplu raspuns
{
    "recipient": "Test",
    "contactPerson": "Test",
    "phone": "0788888888",
    "mail": "test@gmail.com",
    "county": "ARGES",
    "city": "CRUCISOARA",
    "address": "test nr 5",
    "streetNumber": "",
    "buildingNumber": "",
    "stairNumber": "",
    "floor": "",
    "apartment": "",
    "postalCode": "",
    "senderPhone": "0788888888",
    "senderEmail": "extern@extern.ro",
    "bank": "",
    "account": "",
    "contains": "Order Comerciant extern test srl - Comanda 40873",
    "cashOnDelivery": 688.53,
    "weight": 18.15,
    "noParcels": 1,
    "opensParcel": false,
    "clientComment": "-",
"pickUpAddress": "61f3e89ab18dc2342c24ec21"

Pick-up address este setata automat adresa default a comerciantului.


Daca se doreste schimbarea acesteia, se face request-ul /orders/awb/pickUpAddresses
4.12. GET available couriers and cost estimation

Este metoda prin care gasiti curierii disponibili si costurile estimate pentru livrarea cu acestia.

Metoda
POST

URL
/orders/awb/available-couriers/{{orderId}}

Exemplu request
/orders/awb/available-couriers/607435c5d2717d000da00e42

Iar in body se de la punctul 4.9. Get details for AWB si se completeaza capul "streetNumber":

{
    "recipient": "Test",
    "contactPerson": "Test",
    "phone": "0788888888",
    "mail": "test@gmail.com",
    "county": "ARGES",
    "city": "CRUCISOARA",
    "address": "test nr 5",
    "streetNumber": "",
    "buildingNumber": "",
    "stairNumber": "",
    "floor": "",
    "apartment": "",
    "postalCode": "",
    "senderPhone": "0788888888",
    "senderEmail": "extern@extern.ro",
    "bank": "",
    "account": "",
    "contains": "Order Comerciant extern test srl - Comanda 40873",
    "cashOnDelivery": 688.53,
    "weight": 18.15,
    "noParcels": 1,
    "opensParcel": false,
    "clientComment": "-",
"pickUpAddress": "61f3e89ab18dc2342c24ec21"
}

Pick-up address este setata automat adresa default a comerciantului.


Daca se doreste schimbarea acesteia, se face request-ul /orders/awb/pickUpAddresses

Exemplu raspuns
[
    {
        "courierName": "Fan Courier - 49.40 lei",
        "estimatedPrice": 49.4,
        "value": "fan"
    },
    {
        "courierName": "Sameday Courier - 51.17 lei",
        "estimatedPrice": 51.17,
        "value": "sameday"
    }
]

4.13. Generate AWB for order

Aceasta petoda genereaza awb-ul pentru comanda data

Metoda
POST

URL
/orders/awb/{{orderId}}?courier={{value_from_available_couriers_response}}

Exemplu request
/orders/awb/607435c5d2717d000da00e42courier=fan

In body se pune raspunsul de le punctul 4.9. Get details for AWB si se completeaza campul
"streetNumber":

{
    "recipient": "Test",
    "contactPerson": "Test",
    "phone": "0788888888",
    "mail": "test@gmail.com",
    "county": "ARGES",
    "city": "CRUCISOARA",
    "address": "test nr 5",
    "streetNumber": "4",
    "buildingNumber": "",
    "stairNumber": "",
    "floor": "",
    "apartment": "",
    "postalCode": "",
    "senderPhone": "0788888888",
    "senderEmail": "extern@extern.ro",
    "bank": "",
    "account": "",
    "contains": "Order Comerciant extern test srl - Comanda 40873",
    "cashOnDelivery": 688.53,
    "weight": 18.15,
    "noParcels": 1,
    "opensParcel": false,
    "clientComment": "-",
"pickUpAddress": "61f3e89ab18dc2342c24ec21"
}

Pick-up address este setata automat adresa default a comerciantului.


Daca se doreste schimbarea acesteia, se face request-ul /orders/awb/pickUpAddresses

Exemplu raspuns
Sistemul raspunde cu acelasi continut, plus numarul AWB-ului

{
    "recipient": "Test",
    "contactPerson": "Test",
    "phone": "0788888888",
    "mail": "test@gmail.com",
    "county": "ARGES",
    "city": "CRUCISOARA",
    "address": "test nr 5",
    "streetNumber": "4",
    "buildingNumber": "",
    "stairNumber": "",
    "floor": "",
    "apartment": "",
    "postalCode": "",
    "senderPhone": "0788888888",
    "senderEmail": "extern@extern.ro",
    "bank": "",
    "account": "",
    "contains": "Order Comerciant extern test srl - Comanda 40873",
    "cashOnDelivery": 688.53,
    "weight": 18.15,
    "noParcels": 1,
    "opensParcel": false,
    "clientComment": "-",
    "orderId": "607435c5d2717d000da00e42",
    "courier": "fan",
    "awb": "2103100120177"
}
4.14. Print AWB

Metoda prin care se preia AWB-ul ca document

Metoda
GET

URL
/orders/printAwb/{{orderId}}/{{awb_number}}

Exemplu request
/orders/printAwb/607435c5d2717d000da00e422103100120177

Exemplu raspuns
Raspunsul este un blob de fisier pdf. Ce trebuie salvat pentru a putea fi vizualizat.

S-ar putea să vă placă și