İçeriğe geç
ETEmir Tonkal

Perakende & Restoran

Çok şubeli perakendede gün sonunu aynı gün kapatmak

Her şubenin kendi kasası, kendi fiyat listesi ve kendi gün sonu tablosu varsa, merkez hiçbir zaman güncel rakama bakmıyordur.

Müşteri
SeezSoft ürünü, Kasa Sistemi
Sektör
Perakende & Restoran
Yıl
2022–2026
Rolüm
Ürün sahibi ve teknik lider

Problem

Çok şubeli perakende ve restoran işletmelerinde tekrar eden bir tablo var: her şube kendi başına çalışır.

Fiyat değişikliği merkezden telefonla duyurulur, bir şube uygular biri unutur. Kampanya farklı şubelerde farklı yorumlanır. Gün sonu raporları akşam kapanışta ayrı ayrı alınır, merkeze ertesi gün ulaşır. Ay sonunda ciro rakamı üç farklı yerde üç farklı çıkar ve hangisinin doğru olduğu tartışılır.

Bu bir yazılım eksikliği gibi görünür ama aslında tek doğru kaynak eksikliğidir. Hangi verinin sahibi hangi sistem, bu tanım yapılmadan kurulan hiçbir kasa yazılımı sorunu çözmez.

Yaklaşım

Önce sahiplik tanımı

Kod yazmadan önce her veri için sahip belirledik: ürün ve fiyatın sahibi merkez, satış hareketinin sahibi şube, stok düşümünün sahibi satış işlemi. Bu tanım netleşince mimari kendiliğinden ortaya çıktı, fiyat merkezden şubeye, satış şubeden merkeze akar; ters yön yok.

Bu adım atlandığında iki sistemin birbirinin verisini ezmesiyle sonuçlanan klasik hataya düşülür.

Kasa çevrimdışı da satmalı

Kasa, internetin kesildiği anda satışı durduramaz. Şube tarafı yerel olarak çalışır ve merkeze eşitlenir. Bağlantı yokken satış devam eder, geldiğinde hareketler merkeze aktarılır. Perakende için bu bir özellik değil, asgari şarttır.

Kasiyerin ekranı sade kalmalı

Kasada geçen her fazladan saniye, sıradaki müşteriye yansır. Kasiyer ekranı yalnızca satış akışını içerir; ürün tanımı, kampanya kurgusu ve raporlar arka ofis tarafındadır. Yetkilendirme de buradan gelir: kasiyerin göremeyeceği ekran, kasiyerin bozamayacağı veri demektir.

Merkezi raporlama

Şube bazında ciro, ürün bazında hareket, saatlik yoğunluk ve gün sonu konsolidasyonu merkezde tek ekranda toplanır. Muhasebe tarafına aktarım entegrasyon katmanı üzerinden yürür; başarısız aktarım kuyruğa alınır ve tekrar denenir.

Teknik kurgu

  • Arka ofis paneli: Vue.js + TypeScript
  • Sunucu: Node.js servisleri, Docker ile dağıtım
  • Veri: MySQL, finansal hareket kaydında ilişkisel tutarlılık
  • Önbellek ve kuyruk: Redis, fiyat dağıtımı ve eşitleme kuyruğu
  • Dağıtım: şube başına yerel çalışma, merkeze eşitleme

Öğrenilenler

Fiyat yönetimi asıl işin kendisi. Kasa yazılımı denince akla satış ekranı gelir; işletmeyi asıl yoran taraf fiyat, kampanya ve şubeye dağıtım kurallarıdır.

Gün sonu raporu güven meselesidir. Merkez ve şube rakamı bir kere tutmazsa, sisteme olan güven uzun süre geri gelmez. Mutabakat mantığı en baştan doğru kurulmalı.

Kademeli geçiş şart. Tüm şubeleri aynı gün geçirmek yerine tek şubede başlayıp, rakamlar tuttuktan sonra yaymak; hem riski hem eğitim yükünü belirgin şekilde azalttı.


Bu vaka analizi, sistemin kurgusunu ve alınan teknik kararları anlatır. Proje bazlı ölçülmüş sonuçlar ve müşteri referansları için doğrudan iletişime geçebilirsiniz.

Kullanılan teknolojiler

  • Vue.js
  • Node.js
  • MySQL
  • Redis
  • Docker

Projenizi 30 dakikada netleştirelim

Ön görüşme ücretsizdir ve satış görüşmesi değildir. Sürecinizi dinler, size en dürüst cevabı veririm — bazen bu cevap “şu an yaptırmayın” olur.