İçgörülerÜrün verisi

Ajanın doğrulayabildiği stok ve teslimat sözü: her yerde aynı söyleyen stok durumu ve kargo süresi

Ajanlar stoğa göre süzüyor, teslim süresini öneriden önce kontrol ediyor. Stok durumu, hazırlık ve kargo süresi sayfada, işaretlemede ve feed'de aynı olmalı.

Bir alışverişçi asistanına şunu yazıyor: "43 numara koşu ayakkabısı lazım, cumartesiden önce elimde olsun." Fiyat sorulardan yalnızca biri. Ajan o numaranın stokta olup olmadığını ve siparişin kaç günde geleceğini de bilmek zorunda. Sayfanızda "hızlı teslimat" yazıyor, feed'iniz bu konuda hiçbir şey söylemiyorsa ajanın elinde doğrulayamadığı bir söz kalıyor.

Bu yazıda ajanların stok ve teslimata nasıl baktığını, schema.org'un, Google Merchant Center'ın ve OpenAI ürün feed'inin bunlar için kullandığı alanları ve üçünü aynı şeyi söyler hâlde tutmanın yolunu anlatıyoruz. Katalog rehberimiz bu konuya kısaca değinmişti; bu, ayrıntılı sürümü.

Bu yazı bilgilendirme amaçlıdır, hukuki danışmanlık değildir.

Ajanlar stok ve teslimatı neden tartıyor

Ajanlara verilen talimatlar ikisini de açıkça söylüyor. Shopify'ın Shop MCP sunucusunu kullanan ajanlar için yayımladığı skill dosyasına göre arama varsayılan olarak stok durumuna göre süzülüyor, teslimat adresi için ayrı bir ships_to süzgeci var ve ajan bir öneri yapmadan ya da sepet oluşturmadan önce seçilen seçeneğin stoğunu ve fiyatını doğrulamalı. Süre konusunda da aynı ölçüde temkinli: kargoya uygun olmak, ürünün belli bir tarihe kadar ulaşacağını kanıtlamıyor. Alışverişçi bir tarih verdiğinde ajana, aramanın bunu doğrulayamadığını söylemesi ve satıcının ödeme adımını göstermesi söyleniyor.

Yani ajan, ürününüzün zamanında geleceğini varsaymıyor; ödeme adımından önce okuyabileceği bir sayıya ihtiyaç duyuyor. Google'ın Merchant Center yardım sayfası aynı şeyi alışverişçi tarafından söylüyor: kargo hızı ve ücreti, alışverişçilerin bir üründen vazgeçmesinin en yaygın iki nedeni arasında.

Stok durumu: her teklif için tek değer, kısa bir listeden

Yapısal veri. Schema.org'da bir Offer, değerlerini ItemAvailability listesinden alan availability alanını taşıyor. Google bunlardan, aralarında InStock, OutOfStock, PreOrder, BackOrder ve SoldOut olan on tanesini destekliyor ve ekliyor: birden fazla değer yazmayın.

Merchant Center. availability özelliği tüm ürünler için zorunlu; olağan perakende için dört değer var: in_stock, out_of_stock, preorder ve backorder. Google schema.org karşılıklarını da yayımlıyor; örneğin SoldOut da Discontinued da out_of_stock sayılıyor.

OpenAI ürün feed'i. availability zorunlu bir alan ve beş değeri var: in_stock, out_of_stock, pre_order, backorder ve unknown. Boş, eksik ya da tanınmayan bir değer satırın reddedilmesine yol açıyor. Bilmiyorsanız açıkça unknown yazın; bu değer ürünün stokta olduğunu iddia etmiyor.

Aynı fikir, üç ayrı yazım. Üçünü de tek bir stok alanından üretin.

Ön sipariş, gecikmeli sipariş ve tükendi

  • Ön sipariş (preorder) henüz piyasaya çıkmamış ürün için. Google, stoğu bitmiş ve geri gelecek mevcut ürünlerin bunun yerine backorder kullanması gerektiğini söylüyor.
  • Gecikmeli sipariş (backorder) ürünün şu an elde olmadığı ama sipariş aldığınız ve stok gelince gönderdiğiniz durum.
  • Stokta yok (out of stock) sipariş almadığınız durum. Google sayfada "tükendi" gibi açık bir metni ya da pasif bir satın al düğmesini kabul ediyor.

Ön sipariş ve gecikmeli siparişte Merchant Center availability_date istiyor: ürünün gönderilebilir hâle geleceği gün, en fazla bir yıl ilerisi. Bu tarih açılış sayfasında da görünmeli; Google onu yapısal verideki Offer.availabilityStarts ile eşleştiriyor.

OpenAI'ın belirtimi bir uyarı ekliyor: stok değerleri ve tarihler ileriye dönük bir değişiklik zamanlamıyor. Ürün geldiğinde ya da tükendiğinde feed'i siz güncelliyorsunuz.

Google'dan bir kural daha: bakım ya da tatil için ürünü durdurmak amacıyla out_of_stock kullanmayın; bunun için excluded_destination var.

Teslim süresi: hazırlık artı kargo

Schema.org teslimat sözünü parçalara ayırıyor. deliveryTime, siparişin alınmasıyla ürünün müşteriye ulaşması arasındaki toplam süre. İçindeki ShippingDeliveryTime iki alan taşıyor:

  • handlingTime: siparişin alınmasından ürünün depodan çıkmasına kadar geçen süre.
  • transitTime: ürünün kargoya teslim edilmesinden müşteriye ulaşmasına kadar geçen süre.

Ürün sayfasında bu yapı, shippingRate ve shippingDestination ile birlikte shippingDetails (bir OfferShippingDetails) içinde duruyor. Google her süreyi minValue, maxValue ve DAY değerli unitCode taşıyan bir QuantitativeValue olarak bekliyor. Kendi örneği: hazırlık 0 ile 1 gün, kargo 1 ile 5 gün.

Google, mağaza geneli kargo politikasını Organization altında hasShippingService ile bir kez tanımlamayı, shippingDetails'ı yalnızca farklı koşulları olan ürünlerde kullanmayı öneriyor. Bu sürüm cutoffTime ve businessDays de taşıyabiliyor; 0 günlük hazırlık süresi, son sipariş saatinden önce verilen siparişin aynı gün işlendiği anlamına geliyor.

Merchant Center da aynı ayrımı kullanıyor: shipping özelliği min_handling_time, max_handling_time, min_transit_time ve max_transit_time alt özelliklerini alıyor. Hazırlık süresi iş günüyle sayılıyor: salı verilen ve en geç cuma depodan çıkan siparişin en uzun hazırlık süresi 3.

OpenAI'ın feed'i farklı. shipping_price bir ücreti tarif ediyor ve belirtime göre ödeme toplamı ya da teslim tarihi vaat etmiyor. Boş değer "ücretsiz kargo" değil, "bilinmiyor" demek. Yalnızca feed'e özel kurulumla açılan isteğe bağlı shipping alanı country:region:service_class:price biçiminde ve belirtim, hazırlık ve kargo günü eklerinin bu biçimin parçası olmadığını açıkça yazıyor. Yani bu kanalda teslim süresi sayfanızda ve işaretlemenizde yaşıyor.

Sayfayı, işaretlemeyi ve feed'i eşit tutmak

Google'ın kuralı net: stok durumu açılış sayfasında, yapısal veride, ödeme adımında ve veri kaynağınızda aynı olmalı; birindeki uyumsuzluk ürünün reddedilmesine yol açıyor. Google ayrıca Product işaretlemesini ilk HTML'e koymayı öneriyor, çünkü JavaScript ile üretilen işaretleme stok ve fiyat gibi hızlı değişen bilgilerde Shopping taramalarını seyrekleştirip güvenilirliğini düşürebiliyor.

Kargoda hangi kaynağın kazandığını bilin. Google'ın sırası, en güçlüden başlayarak: Content API hesap ayarları, Merchant Center ya da Search Console ayarları, ürün işaretlemesi, kuruluş işaretlemesi. Panelde 2 ile 4 gün, sayfada "ertesi gün" yazıyorsa Google'ın gösterdiği bilgi sayfanızla çelişir.

Fiyat tarafındaki çelişkinin neden pahalıya patladığını Feed, sayfa ve yapısal veri aynı fiyatı söylemeli yazımızda anlatmıştık. Stok ve teslimat da aynı mantıkla işliyor.

Türkiye: teslim süresi aynı zamanda hukuki bir söz

Mesafeli Sözleşmeler Yönetmeliği'nin güncel metnine göre ön bilgilendirme, ticari reklam ve tanıtımlarda taahhüt edilen süreyle uyumlu teslim süresini içermek zorunda. Satıcı taahhüt ettiği süre içinde teslim etmekle yükümlü; tüketicinin isteğine göre hazırlanan mallar dışında bu süre siparişten itibaren otuz günü geçemiyor.

Dolayısıyla ürün sayfanızdaki "kargoya veriliş: 1 iş günü" satırı zaten bir taahhüt. Onu handlingTime olarak işaretleyin, aynı sayıyı Merchant Center'a girin; ajan zaten verdiğiniz sözü okuyabilsin.

Yaygın hatalar

  • Sayı yerine söz. "Hızlı kargo" ya da "kısa sürede gönderilir" ajana karşılaştıracak bir şey vermiyor.
  • Tüm varyantlara tek stok durumu. Tükenmiş bir beden, stokta görünen grubun arkasında kayboluyor. Her varyantın kendi Offer'ı olmalı; ayrıntısı Ajanın okuyabildiği varyant sayfaları yazımızda.
  • Teslim süresinin yalnızca ödeme adımında görünmesi. Ajan ürünün ne zaman geleceğini öğrenmek için satın almaya başlamak zorunda kalıyor.
  • Günde bir kez yenilenen feed. Ürün öğlen tükeniyor, feed ertesi sabaha kadar in_stock diyor.

Uygulamalı kontrol listesi

  1. 20 ürün seçin: en çok satanlar, bir tükenmiş ürün, bir ön sipariş ya da gecikmeli sipariş ürünü.
  2. Sayfa kaynağında her Offer'ın tek bir availability değeri taşıdığını ve bunun görünen sayfa ve ödeme adımıyla aynı olduğunu kontrol edin.
  3. Ön sipariş ve gecikmeli sipariş ürünlerinin sayfada beklenen tarihi gösterdiğini ve feed'de availability_date taşıdığını doğrulayın.
  4. Hazırlık ve kargo süresini gün aralığı olarak işaretlemeye, Merchant Center'a ve sayfaya düz metin olarak yazın. Üçünde de aynı sayılar olsun.
  5. Merchant Center kargo ayarlarını işaretlemenizle karşılaştırın; hesap ayarları kazanır.
  6. OpenAI feed'inizde her satırın açık bir availability taşıdığından emin olun; shipping_price'ı yalnızca ücret gerçekten bilinmiyorsa boş bırakın.
  7. Feed güncellemesini günde bir kez değil, stok her değiştiğinde tetikleyin.

Sonuç

Ajanlar "stokta" ya da "hızlı teslimat" sözüne güvenip geçmiyor. Bir stok durumu ve bir gün aralığı okuyor, sayfanın, işaretlemenin ve feed'in aynı şeyi söyleyip söylemediğine bakıyor. Her teklif için tek bir stok değeri ve dürüst bir hazırlık artı kargo aralığı yazan mağaza, ajana alışverişçiye aktarabileceği bir söz veriyor.

Specoria, tekliflerinizin fiyat, para birimi ve stok durumu taşıyıp taşımadığını, kargo bilginizin makine tarafından okunup okunamadığını, kargo ücreti ve süresinin sayfada görünüp görünmediğini ve stoğun kataloğunuzla sayfalarınız arasında tutup tutmadığını kontrol ediyor. Ücretsiz hazırlık testiyle başlayabilirsiniz.


Kaynaklar