Siz Sayarken Bir Sipariş Geldi. Uyguladığınızda Ne Olur?
Sayım sırasındaki satışlar kendi başının çaresine bakar — anlık görüntü bunu sağlar. Gelen mal bakmaz. Uygulama gerçekte ne yazar?
Çoğu mağaza sahibini ilk sayımından önce durduran bir soru var ve yerinde bir soru: bir rafı sabah 10’da sayarsam ve o ürünlerden üçü saat 11’de satılırsa, sayımı uyguladığımda ne olur?
Korku çok net. 40 saydınız. Üç tanesi satıldı. WooCommerce artık 37 diyor. Elinizdeki 40 ile Uygula‘ya basıyorsunuz ve yazılım 40 yazıyor — üç gerçek satışı sessizce geri alıp binadan çoktan çıkmış malı rafa geri koyuyor.
Sayım gerçekten böyle işleseydi hiç kimse kapatmadan sayamazdı ve mağazayı kapatmadan sayım yapmak bir yöntem değil bir pazarlama cümlesi olurdu. Neden öyle olmadığını net anlatmak gerekiyor, çünkü cevap neyi planlamanız gerektiğini değiştiriyor. Sayım sırasındaki satışlar kendi başlarının çaresine bakar. Sayım sırasında gelen mal bakmaz — asıl dikkat etmeniz gereken kesim (cut-off) sorunu budur.
Korkuyu tam olarak tarif edelim#
Size “mesai dışında sayın” diyen her rehber, bu soruyu cevaplamak yerine atlıyor. O yüzden düzgünce ortaya koyalım; çünkü sorunun biçimi çözümün biçimini belirliyor.
Bir stok sayımı her satır için tek bir rakam üretir: fiziksel olarak orada ne varsa. WooCommerce ise başka bir rakam tutar: orada olduğuna inandığı rakam. Aradaki boşluk farktır ve saymanın bütün amacı o farktır.
Sorun şu ki iki rakam da hareket ediyor. Siz rafta ilerledikçe fiziksel sayımınız hareket ediyor. Biri bir şey satın aldıkça WooCommerce’in rakamı hareket ediyor. Yazılım sayımınızı Uygula‘ya bastığınız andaki canlı rakamla karşılaştırsaydı, fark kısmen rafın gerçeği kısmen de zamanlama kazası olurdu — dahası uygulamak satışların üzerine yazardı.
Yani mekanizmanın bu ikisini ayırması gerekiyor. Ayırıyor da.
“Beklenen” aslında ne demek: anlık görüntü#
Bir sayım oturumu açtığınızda beklenen miktarlar o anda dondurulur. Dondurulan bu küme anlık görüntüdür ve oturumun geri kalanında saydığınız rakamlar buna karşı karşılaştırılır — hareket etmeye devam eden canlı stok rakamına karşı değil.
Ürün bunu oturum oluşturma ekranında, kapsam seçicinin altındaki notta kendisi söylüyor:
Mevcut stok şimdi anlık olarak kaydedilir, böylece devam eden satışlar farkı bozmaz.

O tek cümle, salı öğleden sonra yapabileceğiniz bir sayımla kepenk indirmeyi gerektiren bir sayım arasındaki farktır. Eklentinin ücretsiz sürümleri bunu mağaza satmaya devam ederken sayım (anlık görüntü farkı) diye listeliyor; aynı taahhüdün öbür yönden yazılmış hâli.

Ortadaki şeridi ve üstteki şeridi birbirinden bağımsız iki şey olarak okuyun, bütün endişe dağılır. 09:00’da oturum açılır ve beklenen 100’de sabitlenir. 10:20’de dört tanesi satılır, canlı stok 96’ya düşerken beklenen 100’de kalır. 11:05’te 96 sayarsınız ve fark sıfırdır — doğru olarak, çünkü çıkan dört adedi hesaba kattığınızda raf sistemle uyuşuyordur.
Mağaza satış yaparken fark neden dürüst kalır#
Burada üzerinde durmaya değer bir incelik var; çünkü anlık görüntüyü anladıktan sonra bile insanları tedirgin eden kısım burası.
Fark, “sayım eksi anlık görüntü” değildir. Öyle olsaydı oturum sırasındaki her satış bir eksik olarak görünürdü ve yoğun bir öğleden sonra hırsızlık sorunuyla birebir aynı görünürdü. Farkın cevaplamasını istediğiniz soru daha dardır: sistemin zaten bildiği her şeyi hesaba kattıktan sonra raf hâlâ yanlış mı?
Satışlar sistemin zaten bildiği şeylerdir. Canlı stoğu WooCommerce’in kendi mekanizması üzerinden hareket ettirdiler, siparişlere kaydedildiler ve sizden hiçbir yardıma ihtiyaçları yok. Sayımın işi, hiç kimsenin kaydetmediği hareketleri bulmaktır — kırılan, yanlış toplanan, hiç işlenmemiş iadeler, kapıdan yürüyüp çıkan iki adet. Bir kayıp (fire) rakamına dönüşen hareketler, yeterince sayım yapıp örüntüyü gördüğünüzde bunlardır.
Yukarıdaki diyagramda aritmetiğin sıfır çıkmasının nedeni ve çıkması gerektiğinin nedeni budur. Orada “−4” raporlayan bir sayım, mağazanın sıradan salı gününü zarar olarak raporluyor olurdu.
Uygulama aslında ne yazar#
İnsanların gözünde ters gitmesi muhtemel adım bu, o yüzden açıkça anlatılmayı hak ediyor.
Bir oturumu uygulamak, saydığınız rakamları kataloğun üzerine boca etmez. Satır satır çalışır ve her satır için, sayımın sistemin zaten hesaba katmadığı bir şey bulup bulmadığını sorar. Saymadığınız satırlara hiç dokunulmaz — rapor bu konuda açıktır ve ekranda şunu yazar:
Sayılmayan ürünler mevcut stoklarını korur.

Bu son nokta üzerinde durmaya değer, çünkü kısmi bir sayımla bir felaket arasındaki fark budur. Sıfır tabanlı ya da tam sayımda bulamadığınız her şey gerçekten sıfırdır ve her yeri taradığınızda seçtiğiniz mod budur. Kısmi ya da nokta sayımda sessizlik “yok” değil “bakmadım” demektir. Yanlış olanı seçmek bu ekrandaki en yıkıcı tek hatadır ve sayım ortasında gelen siparişlerle hiçbir ilgisi yoktur.
Bu modu, kör sayım seçeneğiyle birlikte oturumu oluştururken seçersiniz. Oturum başına bir karar olmasının nedeni tam olarak budur: açtığınızı unutacağınız küresel bir ayara dönüşemesin diye — beklenen miktarı sayan kişiden gizlemenin ardındaki mantığın aynısı.
Asıl kesim sorunu siparişler değil — gelen maldır#
Dürüst cevabın rahatlatıcı olmaktan çıktığı yer burası.
Satışlar güvenlidir çünkü WooCommerce’in içinden akarlar. Bir mal kabul öyle değildir; çünkü aracın gelmesiyle birinin malı sisteme girmesi arasındaki pencerede o adetler sizin zemininizde vardır ve hiçbir sistemde yoktur. O rafı saymadan önce rafa ulaşırlarsa onları sayarsınız ve sayımınız, onlardan hiç haberi olmayan bir anlık görüntüyü haklı olarak aşar. Eklenti burada size yardım edemez, çünkü bilebileceği bir şey yoktur.

Üç kural neredeyse bütün durumları kapsıyor:
- Mal kabul: bitirmediğiniz bir bölgeye mal yerleştirmeyin. Paleti bekletin, bölgeyi sayın, sonra malı yerine koyun. Zemininizde bu mümkün değilse, mal kabulü saymaya başlamadan önce sisteme girin ki anlık görüntü onu içersin, sonra normal sayın.
- İadeler ve para iadeleri: işleyin, sonra devam edin — ama stoğa geri ekle kutusunu kontrol edin. WooCommerce, iade edilen bir adedi stoğa yalnızca iade penceresinde İade edilen ürünleri stoğa geri ekle işaretliyse geri koyar. İşaretliyse iade tersine bir satıştır ve sizden hiçbir şey istemez. İşaretli değilse adet sizin rafınızdadır ve hiç kimsenin kaydında yoktur; bu da onu kılık değiştirmiş, sisteme girilmemiş bir mal kabulü yapar — ona mal kabul kuralını uygulayın. İade kutusunda bekleyen ve kimsenin işlemediği fiziksel bir iade de yine aynı şeydir.
- Gel-al siparişleri: rafı sayın, teslim noktasını değil. Toplanmış ama teslim edilmemiş bir sipariş canlı stoktan çoktan çıkmıştır. Kutu tezgâhın arkasında duruyorsa ve onu raf stoğu olarak sayarsanız, var olmayan bir fazla uydurursunuz.
Bunların hiçbiri yazılım istemez. Sayım başlamadan önce birinin bunları yüksek sesle söylemesini ister; sayımların herhangi bir teknik mekanizmadan çok daha sık ters gitmesinin asıl nedeni de budur.
Aynanın öbür yüzü: sistemden çıkmış ama raftan çıkmamış stok#
İkinci bir kesim durumu var ve bu, deposu olan mağazaları değil çevrim içi mağazaları yakalıyor. Mal kabulün tam tersi yönde işliyor. Kaydedilmeden gelen mal değil — çıkmadan düşülen maldır.
WooCommerce sipariş verildiğinde stoğu düşürmez. Stoğu, sipariş satışın gerçek olduğu anlamına gelen bir duruma ulaştığında düşürür: ödeme tamamlandı, işleniyor, beklemede ya da tamamlandı. Bundan önce, ödeme adımında oturan bir müşteri için adetler düşülmez, ayrı bir tabloda rezerve edilir — ürünün stok rakamı hiç kımıldamamıştır ve sepet terk edilirse hiç kımıldamayacaktır. Bir siparişi iptal edin ya da ödenmemiş birinin süresi dolsun, adetler aynı yoldan geri gelir.
Yani ödenmiş ama henüz toplanmamış bir sipariş rakamlardan çoktan çıkmıştır ve hâlâ sizin gözünüzde durur. Oturumunuz açılmadan önce ödendiyse anlık görüntü de onu bırakmıştır ve o gözü saydığınızda başkasına ait bir adedi saymış olursunuz. Fark bir adetlik fazla gösterir. Adet fiziksel olarak orada olduğu için bu fazla gerçektir. Yalnızca satmak sizin hakkınız değildir.
O fazlayı uygularsanız bir müşterinin malını yeniden satışa açmış olursunuz. Biri satın alır ve arkasından gelen sipariş, karşılayamayacağınız sipariş olur — düzeltmeye çalıştığınız yanlış sayımdan daha kötü bir sonuç.
Kural tek satır: hâlâ satabildiğinizi sayın. Bir müşteriye tahsis edilmiş her şey — toplanmış, paketlenmiş, kuryeyi bekleyen, tezgâhın arkasında bekleyen — fiziksel olarak her sayım bölgesinin dışında duran bir tezgâha aittir. Bu bir yazılım ayarı değil bir yerleşim kararıdır ve çevrim içi bir mağazayı mesai saatlerinde sayılabilir kılan tek değişikliktir. Siparişler geldikçe doğrudan raftan toplayan bir mağaza bu belirsizlikle her sayımda karşılaşır; ayrı bir tezgâha çeken bir mağaza bir daha hiç karşılaşmaz.
Aynı mantık, kulağa en zor gelen durumu da çözer: ödenmiş ama adetleri hâlâ koridorda duran bir sipariş. Oturum sırasında ödendiyse aritmetik kendi başının çaresine bakar: satış canlı stoğu hareket ettirdi, anlık görüntü adedi tuttu, siz adedi saydınız, fark sıfır. Oturum açılmadan önce ödendiyse anlık görüntü onu çoktan bırakmıştır ve onu saymak stok uydurur. Doğru davranışın raftan göremeyeceğiniz bir zaman damgasına bağlı olduğuna dikkat edin — cevabın kuralı hatırlamak değil malı taşımak olmasının nedeni tam olarak budur.
Sayım ortasında olabilecek her olay ve etkisi#
Bu, özet tablodur. Canlı stok, WooCommerce’in satış yaptığı rakamdır; anlık görüntü ise sayımınızın karşısına konduğu dondurulmuş beklenen rakamdır.
| Oturum sırasında ne oluyor | Canlı stok | Anlık görüntü | Ne yapmalısınız |
|---|---|---|---|
| Bir satış, çevrim içi ya da kasada | Düşer | Değişmez | Hiçbir şey |
| Bir sipariş iptal edilir ya da ödenmemiş birinin süresi dolar | Yükselir | Değişmez | Hiçbir şey |
| Müşteri ödeme adımında ama henüz ödemedi | Değişmez — rezerve edilir, düşülmez | Değişmez | Hiçbir şey |
| İade edilen ürünleri stoğa geri ekle işaretli bir para iadesi | Yükselir | Değişmez | Hiçbir şey — ama o gözü saymadan önce adedi rafa geri koyun |
| Kutusu işaretlenmemiş bir para iadesi | Değişmez | Değişmez | Adet raftadır ve hiçbir kayıtta yoktur: sisteme girilmemiş bir mal kabul gibi davranın |
| Oturum ortasında sisteme girilen bir mal kabul | Yükselir | Değişmez | O adetleri saymayın ya da mal kabulü oturumu açmadan önce girin |
| Rafa yerleştirilmiş ama sisteme girilmemiş bir mal kabul | Değişmez | Değişmez | Asıl kesim sorunu. Bölge bitene kadar paleti bekletin |
| Paketleme tezgâhında bekleyen toplanmış bir sipariş | Zaten düştü | Zaten dışarıda bırakıyor | Tezgâhı saymayın |
| Biri bir stok alanını elle düzenliyor | Hareket eder | Değişmez | Durdurun — aşağıya bakın |
Orada yalnızca iki satır sizden bir şey ister ve ikisi de satış değildir. Sonuncusu yüksek sesle söylenmeyi hak ediyor, çünkü mekanizmanın kusursuz çalıştığı ve sonucun yine de yanlış olduğu tek durum odur. Elle yapılan bir düzenleme WooCommerce’in kaydettiği bir harekettir, dolayısıyla tıpkı bir satış gibi işlenir ve uygulamadan sağ çıkar — doğru davranış, kötü sonuç; çünkü elle düzenlemeyi yapan neredeyse her zaman sizin saydığınız rafı düzelten kişidir. Raf o zaman iki kez düzeltilmiş olur: bir kez onlar, bir kez siz. Bir bölgede oturum açıksa o bölgede kimse stok düzenlemez — ve bu elle düzenlemelerden biri kaydedilmemiş gibi görünüyorsa, onun da kendi nedenleri var. Bu kural açıklanmayı değil uygulatılmayı ister ve sahada üç kişiyle yapılan bir sayımın, sahada üç kişi artı yönetim ekranında bir kişiyle yapılan sayımdan güvenli olmasının nedeni de budur.
Toplama yapılan bir bölgeyi saymak#
Gerçekten yoğun bir mağazanın bir püf noktası daha vardır: personelin tam da saydığınız gözden mal çekmesi.
Cevap siparişlerle ilgili bir kural değildir. Sıra ile ilgili bir kuraldır: bir gözü, başkası ona dokunmadan bitirin. Pratikte bunu ayarlamak kolaydır, çünkü bir gözü saymak saatler değil dakikalar alır — bölge bölge saymanın, mesai saatlerinde sayımı uygulanabilir kılan teknik olmasının nedeni tam olarak budur.

Bu aynı zamanda “ne kadar büyük bir mağaza bunu yapabilir?” sorusunun dürüst cevabıdır. 1,200 satırlık bir katalogu tek kahramanca oturum olarak saymak, satış yapıyor olun ya da olmayın kötü bir fikirdir. Kırk ila seksen satırlık yirmi oturum olarak sayıldığında ve her biri bittikçe uygulandığında sıradan bir haftadır — ve ters giden herhangi bir bölge size bütün mağazaya değil tek bir göze mal olur. Bu son özellik hızdan daha önemlidir.
Ne zaman kapatmalısınız#
Yalnızca “evet, yapabilirsiniz” diyen bir sayfa size bir şey satıyordur. İki durum kapıları kapatmayı gerçekten haklı çıkarır ve ikisi de aynı kökten gelir: sayımın, fiziksel olarak hiçbir şeyin hareket etmediği bir ana ihtiyacı vardır.
- Beyan edilen bir rakamla tutması gereken yıl sonu sayımı. Aritmetik bozulduğu için değil — bozulmuyor — bir mali müşavirin kapanış rakamının ait olduğu tek bir anı istemesi makul olduğu için; ve “dört gün boyunca satış yaparken saydık”, “ayın 31’inde saydık”tan daha zor onaylanır. Bu teknik değil raporlama gereğidir.
- Stoğun bir gözü sayabileceğinizden hızlı hareket ettiği bir saha. Yoğun bir sezonda meşgul bir depo toplama alanı gerçekten hareketli bir hedeftir ve çözüm yazılımla tartışmak değil onu sabah 6’da saymaktır.
Geri kalan her şey — sıradan mağaza, sıradan salı — sorunsuzdur.
Mesai saatleriyle hiç ilgisi olmayan bir uyarı: stoğunuz bu sabahtan beri değil haftalardır yanlışsa, sayım size hasarı gösterir ama nedeni göstermez. WooCommerce stok seviyelerini sessizce bozan sekiz şey bu sayfanın tamamlayıcısıdır ve sorunun sayımın kendisi olduğu sonucuna varmadan önce okumaya değer.
Güvenmeden önce kendinize kanıtlayın#
Bunu, eklentiyi yapan kişilerin yazdığı bir sayfadan inanarak kabul etmemelisiniz. Provası şöyle ve yaklaşık on dakika sürüyor:
- Fiziksel olarak görebildiğiniz beş ürünle sınırlı kısmi bir oturum oluşturun.
- Oturumun bunlardan biri için gösterdiği beklenen miktarı not edin.
- O ürün için kendiniz bir test siparişi verin ve stoğu düşürmesine izin verin.
- Oturuma geri dönün. Beklenen rakam hâlâ siparişinizden önceki rakam olacak — anlık görüntünün tuttuğu yer burasıdır.
- Rafı dürüstçe sayın ve raporu açın. Fark, test siparişinizi değil rafı yansıtmalı.
- Uygulayın, sonra ürünün stok alanına ve geri dönüş noktaları listesine bakın.

O provayı canlı bir mağazada yapmayı iki şey güvenli kılıyor. Kapsam beş ürün, dolayısıyla etki alanı beş ürün. Ve uygulamanın arkasında otomatik bir geri dönüş noktası var, dolayısıyla geri almak tek tıka mal oluyor. Canlı stoğa hiç dokunmak istemiyorsanız, önce bilinen bir miktara ayarladığınız beş ürün üzerinde çalıştırın.
Döngüsel sayım, bu kararı hiç gerektirmeyen sürümdür#
Yukarıdaki her şey, tek bir büyük sayımın bir satış gününe dayanmasını sağlamakla ilgili. Soruyu tamamen atlamanın bir yolu var: büyük sayımlar yapmayı bırakmak.
Haftada bir bölge saymak, her oturumun satış sorusunun gerçekten ortaya çıkmayacağı kadar kısa olması, farkın nedeni hâlâ bulunabilirken gelmesi ve tek bir uygulamanın fazla hasar verememesi demektir. “Bütün katalogum ne zaman sayılmış olacak?” sorusuna daha yavaş, “rakamlarımın yanlış olduğunu bir dahaki sefere ne zaman öğreneceğim?” sorusuna çok daha iyi bir cevaptır.
Henüz bir araca karar vermediyseniz, burada anlatılan anlık görüntü davranışı evrensel değil — hangilerinin canlı stoğa değil dondurulmuş bir rakama karşı mutabakat yaptığını kontrol etmeye değer. Ve bu işin iki günlük sürümü hiç yapmamış olmanızın nedeniyse, sırada gerçekten sürdürebileceğiniz bir döngüsel sayım takvimi var.
Sık sorulan sorular#
WooCommerce'te mağaza açıkken stok sayabilir miyim?
Evet. Bir sayım oturumu açmak beklenen miktarları anlık görüntü olarak dondurur ve oturum sırasındaki satışlar canlı stoğu hareket ettirirken o anlık görüntüyü değiştirmez. İncelediğiniz fark, günün satışlarının değil rafın ölçüsüdür. Kural gerektiren şey, sayım ortasında gelen maldır.
Ben sayarken üç ürün satılırsa, sayımı uygulamak onları stoğa geri koyar mı?
Hayır. Sayım, oturum açıldığında alınan anlık görüntüye karşı mutabakat edilir ve uygulama, sistemin zaten bilmediği şeyi düzeltir. Satışlar WooCommerce’in kendisinin kaydettiği hareketlerdir, bu yüzden sayım hatası olarak işlenmezler.
Saymadığım ürünlere ne olur?
Kısmi (nokta) sayımda sayılmayan satırlar mevcut stoklarını korur ve onlara dokunulmaz — rapor bunu ekranda yazar. Tam ya da sıfır tabanlı sayımda sayılmayan her şey sıfır kabul edilir; bu, eksiksiz bir tarama için doğru, kısmi bir sayım için yıkıcı davranıştır. Modu oturumu oluştururken seçersiniz.
Sayım ortasında mal gelirse ne yapmalıyım?
Saymayı bitirmediğiniz bir bölgeye yerleştirmeyin. Bekletin, bölgeyi bitirin, sonra yerine koyun. Bu pratik değilse, mal kabulü başlamadan önce sisteme girin ki anlık görüntü onu zaten içersin.
Yıl sonu sayımı için mağazayı kapatmam gerekir mi?
Teknik nedenlerle değil. Kapatmanın olağan nedeni, hesaplarla birlikte beyan edilen bir kapanış stoğu rakamının tek bir belirtilmiş ana ait olduğunda daha kolay onaylanmasıdır. Sayımınız beyan için değil operasyonel doğruluk içinse, satış yaparak sürdürmek sorun değildir.
Ters giden bir uygulamayı nasıl geri alırım?
Her uygulamadan önce otomatik olarak bir geri dönüş noktası kaydedilir, böylece sonuncusu tek tıkla geri alınabilir. Ücretsiz sürüm en son uygulamayı geri almayı kapsar; geri dönüş noktalarının tam geçmişi bir Pro özelliğidir.
WooCommerce stoğu sipariş verildiğinde mi yoksa ödendiğinde mi düşürür?
Ödendiğinde — daha doğrusu sipariş işleniyor, beklemede ya da tamamlandı durumuna geçtiğinde. Hâlâ ödeme adımındaki bir müşteri için adetler düşülmez, ayrı bir tabloda rezerve edilir ve terk edilmiş bir sepet stok rakamına hiç dokunmaz. Yoğun bir ödeme trafiğinin sayımı bozmamasının nedeni budur.
Toplanmış ama henüz gönderilmemiş siparişleri saymalı mıyım?
Hayır. O adetler hem canlı stoktan hem anlık görüntüden çoktan çıkmıştır, dolayısıyla onları saymak bir fazla uydurur — ve bunu uygulamak bir müşterinin malını yeniden satışa açar. Toplanmış siparişleri, fiziksel olarak her sayım bölgesinin dışında duran bir tezgâhta tutun.
Bir oturum açıkken personel ürün ekranından stok düzenleyebilir mi?
Düzenleyebilirler ve düzenlememeliler. Elle yapılan bir düzenleme WooCommerce’in kaydettiği bir harekettir, bu yüzden tıpkı bir satış gibi uygulamadan sağ çıkar. Sorun şu ki elle düzenlemeyi yapan genellikle sizin saydığınız rafı düzelten kişidir, dolayısıyla raf iki kez düzeltilmiş olur.
