API Stocuri

Acesta este sectiunea de help pentru versiunea Legacy a panoului de control. Daca utilizati panoul de control Flex, puteti gasi aici sectiunea de help relevanta.

Foloseste API-ul de stocuri pentru a extrage informatiile de pret si stoc aferente produselor (sau variantelor), sau pentru a actualiza datele (stoc, pret actual sau pret vechi) unor produse (sau variante) existente.

Campuri disponibile

Lista de mai jos indica toate campurile disponibile pt acest API, care sunt returnate cand extragi o lista sau resursa individuala, care pot fi modificate, care sunt obligatorii in cazul crearii unei resurse noi sau actualizarii unei resurse existente.

Camp Tip Descriere Lista Alterabil
id int Id-ul produsului
sku string Codul SKU al produsului
ean string Codul EAN al produsului
inventory_enabled string Activarea functiei de inventar produs (valoare implicita off)
stock int Cantitatea in stoc
warehouses array Repartizare stocuri pe depozite (aplicatia Gestiuni multiple instalata)  
price_net float Pretul net
price_gross float Pretul cu taxe incluse
old_price_net float Pretul vechi neredus al produsului
old_price_gross float Pretul vechi neredus al produsului (taxe incluse)

TIP
Orice camp returnat si care nu este documentat poate fi ignorat deoarece nu este inca disponibil.

Extragere date produs (sau varianta)

Afiseaza datele unei singure inregistrari pe baza de ID, cod SKU sau cod EAN.

Tip: Resursa individuala
Verb: GET
Url: /api/v2/inventory/{type}/{identifier}

Codul http de raspuns este 200 in caz de succes, raspunsul va avea forma unei resurse individuale aferente id-ului solicitat. In cazul identificatorilor de tip SKU, valoarea acestora trebuie sa fie encodata in URL.

Format request

Exemplu de request CURL care returneaza o inregistrare individuala:

curl --request GET \
--url 'https://shop.demo.ro/api/v2/inventory/id/10001' \
--header 'Accept: application/json' \
--header 'Content-type: application/json' \
--header 'Authorization: Basic {base64-encoded-credentials}'

Extragere date pe baza de ID

Exemplu request

GET /api/v2/inventory/id/10001
Exemplu raspuns
{
  "id": 10001,
  "sku": "WMY71443LB2",
  "ean": "8690842009112",
  "inventory_enabled": "on",
  "stock": 10,
  "price_net": 1428.57,
  "price_gross": 1700.00
}

Extragere date pe baza de cod SKU

Exemplu request

GET /api/v2/inventory/sku/TShirt.Blk.XL
Exemplu raspuns
{
  "id": 10002,
  "sku": "TShirt.Blk.XL",
  "ean": null,
  "inventory_enabled": "off",
  "price_net": 75.63,
  "price_gross": 90.00
}

Extragere date pe baza de cod EAN (aplicatia Gestiuni multiple instalata)

Exemplu request

GET /api/v2/inventory/ean/7332543402632
Exemplu raspuns
{
  "id": 10003,
  "sku": "ZCG212H1WA",
  "ean": "7332543402632",
  "inventory_enabled": "on",
  "stock": 20,
  "warehouses": [
    {
      "id": 1,
      "name": "Depozit central",
      "stock": 5
    },
    {
      "id": 2,
      "name": "Depozit furnizor (Nod)",
      "stock": 15
    }
  ],
  "price_net": 756.30,
  "price_gross": 900.00
}

Modificare informatie produs (sau varianta)

Permite actualizarea unei inregistrari existente pe baza de ID, cod SKU sau cod EAN.

Tip: Actualizare resursa
Verb: PATCH
Url: /api/v2/inventory/{type}/{identifier}

Codul http de raspuns este 200 in caz de succes, raspunsul va avea forma unei resurse individuale reprezentand inregistrarea care tocmai a fost actualizata. In cazul identificatorilor de tip SKU, valoarea acestora trebuie sa fie encodata in URL.

Format request

Exemplu de request CURL care actualizeaza o inregistrare existenta:

curl --request PATCH \
--url 'https://shop.demo.ro/api/v2/inventory/id/10001' \
--header 'Accept: application/json' \
--header 'Content-type: application/json' \
--header 'Authorization: Basic {base64-encoded-credentials}' \
--data-raw '{
  "stock": 20,
  "price_net": 1344.54
}'

Actualizare cantitate si pret net pe baza de ID

Exemplu request

PATCH /api/v2/inventory/id/10001
{
  "stock": 20,
  "price_net": 1344.54
}
Exemplu raspuns
{
  "id": 10001,
  "sku": "WMY71443LB2",
  "ean": "8690842009112",
  "inventory_enabled": "on",
  "stock": 20,
  "price_net": 1344.54,
  "price_gross": 1600.00
}

Activare functie stoc pe baza de ID

Exemplu request

PATCH /api/v2/inventory/id/10002
{
  "inventory_enabled": "on",
  "stock": 5
}
Exemplu raspuns
{
  "id": 10002,
  "sku": "TShirt.Blk.XL",
  "ean": null,
  "inventory_enabled": "on",
  "stock": 5,
  "price_net": 67.23,
  "price_gross": 80.00
}

Actualizare pret cu taxe incluse pe baza de cod SKU

Exemplu request

PATCH /api/v2/inventory/sku/TShirt.Blk.XL
{
  "price_gross": 80.00
}
Exemplu raspuns
{
  "id": 10002,
  "sku": "TShirt.Blk.XL",
  "ean": null,
  "inventory_enabled": "off",
  "price_net": 67.23,
  "price_gross": 80.00
}

Incrementare stoc pe baza de cod SKU

Exemplu request

PATCH /api/v2/inventory/sku/TShirt.Blk.XL
{
  "inventory_enabled": "on",
  "stock": {
    "adjust_by": 3
  }
}
Exemplu raspuns
{
  "id": 10002,
  "sku": "TShirt.Blk.XL",
  "ean": null,
  "inventory_enabled": "on",
  "stock": 8,
  "price_net": 67.23,
  "price_gross": 80.00
}

Actualizare cantitate stoc depozit pe baza de cod EAN (aplicatia Gestiuni multiple instalata)

Exemplu request

PATCH /api/v2/inventory/ean/7332543402632
{
  "warehouses": [
    {
      "name": "Depozit central",
      "stock": 10
    },
    {
      "name": "Depozit furnizor (Nod)",
      "stock": 15
    }
  ]
}
Exemplu raspuns
{
  "id": 10003,
  "sku": "ZCG212H1WA",
  "ean": "7332543402632",
  "inventory_enabled": "on",
  "stock": 25,
  "warehouses": [
    {
      "id": 1,
      "stock": 10,
      "name": "Depozit central"
    },
    {
      "id": 2,
      "stock": 15,
      "name": "Depozit furnizor (Nod)"
    }
  ],
  "price_net": 756.30,
  "price_gross": 900.00
}

TIP
In cazul in care aplicatia Gestiuni multiple este instalata alterarea stocului nu se poate face in mod direct folosind campul stock ci doar folosind campul warehouses.

Ultima modificare: 20 Dec 2023
Te-a ajutat acest articol?
Mai ai nevoie si de alte informatii?
Confidentialitate
Utilizam cookie-uri pentru a-ti oferi serviciile si pentru a-ti optimiza experienta. Navigand in continuare, iti exprimi acordul cu privire la Politica de Cookies.