API
English

API referansı · Ürünler

Ürün stoğunu güncelle (ürün kodu ile)

Code ve ProductSourceId ile bulunan ürünün ve isteğe bağlı olarak varyantlarının stok miktarını günceller.

POST https://out.stockmount.com/api/Product/UpdateProductQuantityByCode
Veri değiştirir Ürün Paketi gerekir

Her çağrı tek bir ürünü günceller; birden fazla ürünü aynı çağrıda gönderemezsiniz. Bir ürünün birden fazla varyantını Variants ile aynı çağrıda güncelleyebilirsiniz.

Ürün Code + ProductSourceId ile bulunur; gönderdiğiniz ProductId yok sayılır. Code boşsa dönen ErrorMessage alanında ProductId yazar; bu, kodun eksik olduğu anlamına gelir.

Gönderdiğiniz miktar ürünün satılabilir stoğunun yerine geçer; StockMount'un o ana kadar saydığı satılan adet sıfırlanır. Yeni ürün stoğu 1'den küçükse ürünün Status değeri 3, aksi halde 2 olur.

Ürün düzeyindeki Quantity her çağrıda yazılır. Quantity göndermeden yalnızca varyant stoklarını gönderirseniz ve SetProductQuantityFromVariants alanını true yapmazsanız ürün stoğu 0 olur. Varyantlı ürünlerde SetProductQuantityFromVariants: true göndermeniz önerilir.

Variants içindeki her öğe ProductVariantId ile, bu yoksa varyant Code ile ürünün varyantlarıyla eşleştirilir. Eşleşen varyantın stoğu Quantity ile değiştirilir (gönderilmezse 0). Listede olmayan varyantlara dokunulmaz.

Miktarlar doğrulanmaz; negatif değerler reddedilmez.

Bu uç nokta fiyatları değiştirmez; fiyat alanları yok sayılır. Tek istisna CurrencyId: 0'dan büyük gönderirseniz ürünün para birimi de değişir. Bu alanı göndermeyin.

Stok önce StockMount'taki ürüne yazılır. Stok değiştiyse, ürünün pazaryerlerindeki aktif ilanları için stok güncellemesi kuyruğa alınır. Pazaryerleri bu çağrı sırasında değil, arka plandaki işlerle güncellenir. Aynı tür bekleyen bir güncelleme varsa yenisi eklenmez.

Ürün bulunamazsa veya hesabınıza ait değilse yanıt Result: false, ErrorCode: "70005" ve ErrorMessage: "ProductNotFound" olur. Veritabanı hatalarında ErrorCode 99999 olur.

Aktif Ürün Paketi olmayan hesaplar 70018 hatası alır; paket bilgisi doğrulanamazsa 99999 döner.

İstek alanları

Alan Tip Açıklama
ApiCode zorunlu string User/DoLogin ile aldığınız API anahtarı.
Code zorunlu string Ürün kodu (stok kodu), en fazla 50 karakter. Ürün, Code ve ProductSourceId birlikte kullanılarak bulunur. Bu uç noktada ProductId yok sayılır.
ProductSourceId zorunlu integer Ürünün bağlı olduğu ürün kaynağının kimliği (GetProductSources). Code bu kaynak içinde aranır.
Quantity integer Ürünün yeni stok miktarı. Gönderilmezse 0 yazılır. SetProductQuantityFromVariants true ise ve Variants en az bir öğe içeriyorsa yok sayılır. Negatif değer reddedilmez.
SetProductQuantityFromVariants boolean true ise ürün stoğu aktif varyantların toplamı olarak hesaplanır: listede gönderdiğiniz varyantlar için yeni miktar, diğer varyantlar için mevcut satılabilir stok kullanılır. Variants boşsa etkisizdir. Varsayılan false.
Variants object[] Güncellenecek varyantlar. Yalnızca listedeki varyantlar değişir; eşleşmeyen öğeler hata vermeden atlanır.
Variants[]. ProductVariantId integer Varyant kimliği. Gönderilmezse veya 0 ise varyant Code ile bulunur.
Variants[]. Code string Varyant kodu. ProductVariantId yoksa eşleştirme için kullanılır.
Variants[]. Quantity integer Varyantın yeni stok miktarı. Gönderilmezse 0 yazılır. Negatif değer reddedilmez.

Yanıt alanları (Response)

Alan Tip Açıklama
ProductId integer Güncellenen ürünün kimliği.
Variants object[] Bu çağrıda güncellenen varyantlar. Varyant göndermediyseniz boş dizi döner.
Variants[]. Code string Varyant kodu.
Variants[]. ProductVariantId integer Varyant kimliği.

Bu servisin hata kodları

KodNe zaman
70005 Ürün bulunamadı veya hesabınıza ait değil (ErrorMessage: ProductNotFound).
00003 Code boş (ErrorMessage: "ProductId") veya ProductSourceId 1'den küçük (ErrorMessage: "ProductSourceId").
70018 Hesabınızda aktif Ürün Paketi yok.
99999 Beklenmeyen bir sunucu hatası oluştu.

Oturum hataları (00001, 00006) ve tüm kodlar için hata kodları.

İlgili servisler

Örnek istek

{
  "ApiCode": "API_CODE",
  "Code": "TSHIRT-RED",
  "ProductSourceId": 3051,
  "SetProductQuantityFromVariants": true,
  "Variants": [
    {
      "ProductVariantId": 9120344,
      "Quantity": 15
    },
    {
      "Code": "TSHIRT-RED-L",
      "Quantity": 0
    }
  ]
}

Örnek yanıt

{
  "Result": true,
  "Response": {
    "ProductId": 184522,
    "Variants": [
      {
        "Code": "TSHIRT-RED-M",
        "ProductVariantId": 9120344
      },
      {
        "Code": "TSHIRT-RED-L",
        "ProductVariantId": 9120345
      }
    ]
  }
}

Deneyin

İstek tarayıcınızdan doğrudan out.stockmount.com adresine gider. ApiCode bu sitede saklanmaz; yalnızca bu sekme açıkken tutulur.

İstek göndermek için önce ApiCode alın.

Bu servis hesabınızdaki gerçek verileri değiştirir.

↑ ↓ ile gezinin, Enter ile açın, Esc ile kapatın.

Out API'ye bağlan

DoLogin çağrılır ve dönen ApiCode bu sekmede tutulur. API şifreniz bu siteye gönderilmez.