Yüksek performanslı, çok kiracılı (multi-tenant) restoran otomasyon ve satış noktası (POS) sistemi. Flutter frontend, Node.js backend ve MariaDB veritabanı ile inşa edilmiş kurumsal mimari.
Velotab, modern yazılım prensipleriyle inşa edilmiş, ölçeklenebilir bir POS ve ERP sistemidir.
Desktop POS Uygulaması
Express REST API
Queue Engine
22 Tablo • ACID Uyumlu
Masaüstü POS uygulaması. Bloc pattern ile state yönetimi, Dio ile HTTP iletişimi, responsive dashboard layout, erişilebilirlik desteği.
Express.js ile modüler REST API. Queue Engine ile yüksek eşzamanlılık. Tenant auth middleware ile çoklu işletme desteği.
Her modülün ana sayfası, alt sayfaları, dialog pencereleri, widget'ları ve işlevleriyle eksiksiz detay.
analytics_panel.dart
📌 Sayfanın Amacı: Ana dashboard. İşletmenin genel durumunu anlık olarak gösteren metrik kartları, grafikler ve hızlı erişim widget'ları.
finance_dashboard_page.dart (5559 satır) + cashier_dashboard_page.dart (2708 satır) + split_bill_dialog.dart
📌 Sayfanın Amacı: Tam ekran POS modülü. En kritik modül. Masa haritası, canlı sipariş, parçalı ödeme, yazıcı, dış kaynak sipariş, kasa aç/kapa/Z raporu.
fiscal_audit_hub_page.dart
📌 Sayfanın Amacı: Tüm mali fişlerin durum takibi ve yönetimi. Yazarkasa uyumluluk denetim merkezi.
ingredients_page.dart
📌 Sayfanın Amacı: Restoran malzeme/stok yönetimi. Satın alma, tüketim, fire kaydı ve stok hareketlerinin tam takibi.
products_page.dart
📌 Sayfanın Amacı: Ürün tanımlama, reçete yönetimi, maliyet hesaplama ve kategori atama.
catalog_page.dart
📌 Sayfanın Amacı: Katalog yönetimi. Ürün kategorileri, indirim kuralları, stok kontrol yapılandırması.
restaurant_layout_page.dart + layout_designer_canvas.dart + layout_models.dart
📌 Sayfanın Amacı: Restoranın masa/duvar/sandalye düzenini görsel olarak tasarlama ve kaydetme.
revenue_sources_page.dart
📌 Sayfanın Amacı: Dış platform entegrasyonlarının yönetimi. Getir, Yemeksepeti gibi platformların API bağlantı ayarları.
finance_hub_page.dart
📌 Sayfanın Amacı: Finansal işlemlerin merkezi. Kasa hareketleri, nakit akışı, personel ödemeleri ve muhasebe raporları.
insights_page.dart
📌 Sayfanın Amacı: İş zekası ve raporlama merkezi. Satış trendleri, ürün performansı ve dönemsel analizler.
staff_page.dart
📌 Sayfanın Amacı: Personel bilgilerinin tam yönetimi. Kimlik, maaş, izin, vardiya ve yetkilendirme.
shift_management_page.dart
📌 Sayfanın Amacı: Personel vardiya planlaması ve çalışma saatleri takibi.
printer_settings_page.dart (1557 satır) + printer_router_engine.dart
📌 Sayfanın Amacı: Tüm sistem ayarları. Yazıcı yönetimi, işletme profili, şifreler, Hugin yazarkasa entegrasyonu.
İlişkisel veritabanı yapısı, ACID uyumlu, foreign key constraint'ler ile veri bütünlüğü sağlanmıştır.
businesses — İşletme kaydı. Kod, vergi, şifreler, Hugin ayarları, tasarım JSON.
businesses_tables — Masa tanımları. İşletme bazlı masa adı, sandalye sayısı.
businesses_tables_logs — Masa logları. Ekleme/silme/güncelleme denetim kaydı.
employees — Personel kaydı. TC, telefon, rol, PIN, maaş, sigorta, izin.
employee_shifts — Vardiya giriş/çıkış kayıtları.
employee_leaves — İzin kayıtları. Ücretli/ücretsiz/hastalık/yıllık.
employee_payments — Personel ödemeleri. Maaş/sigorta/ek ödeme.
shift_schedules — Vardiya şablonları. Ad, saat, süre, tolerans.
products — Ürünler. Ad, fiyat, tür, KDV, stok.
product_categories — Ürün kategorileri.
product_category_mappings — Ürün-kategori çoka-çok ilişkisi.
product_action_logs — Ürün işlem logları.
ingredients — Malzemeler. Birim, stok, kritik eşik, fiyat.
ingredients_category — Malzeme kategorileri.
ingredients_consumption — Stok hareketleri. Tüm tipler, eski/yeni stok.
ingredients_waste — Fire kayıtları. Neden, miktar, personel.
orders — Siparişler. Masa, durum, tutar, fiscal durum.
order_items — Sipariş kalemleri. Ürün, miktar, fiyat.
order_payments — Parçalı ödeme kayıtları. Bölme türü, yöntem, tutar.
order_item_actions — İptal/zayi/ikram/iade işlemleri.
cash_register — Kasa kayıtları. Açılış/kapanış, bakiye, Z raporu.
cash_movements — Kasa hareketleri. Kaynak, giren/çıkan, kategori.
revenue_sources — Gelir kaynakları. Platform, API key, kimlik.
revenue_source_orders — Dış kaynak siparişleri. Müşteri, adres, ödeme, fiscal.
discounts — İndirim kuralları. Ad, yüzde, aktif/pasif.
discount_targets — İndirim hedefleri. Ürün/kategori bazlı.
printers — Yazıcı tanımları. Bağlantı, grup, boyut.
printer_product_categories — Yazıcı-kategori eşlemesi.
system_logs — Sistem logları. Aksiyon, IP.
product_recipes — Ürün reçeteleri. Malzeme ve miktar.
Express.js ile modüler yapıda, tenant auth middleware ile korunan REST API.
| Route Grubu | Endpoint Sayısı | Açıklama |
|---|---|---|
| /api/businesses | 1 | İşletme girişi (login) |
| /api/ingredients | ~6 | Malzeme CRUD, stok, fire |
| /api/products | ~10 | Ürün CRUD, reçete, kategori |
| /api/employees | ~8 | Personel CRUD, vardiya, izin, PIN |
| /api/orders | ~8 | Sipariş, ödeme, yazıcı |
| /api/tables | ~4 | Masa CRUD, layout |
| /api/revenue-sources | ~6 | Gelir kaynağı, senkron |
| /api/finance-hub | ~6 | Kasa, nakit akışı, ödemeler |
| /api/insights | ~4 | Satış istatistikleri, raporlar |
| /api/catalog | ~5 | Kategori, ürün, stok, indirim |
| /api/settings | ~6 | Profil, şifre, yazıcı, Hugin |
| /api/pos | ~12 | POS işlemleri, kasa, dış sipariş |
| /api/hugin-pc-link | ~4 | Yazarkasa sağlık, eşleştirme |
Her istekte X-Business-Id ve X-Employee-Id header'larını doğrular. Tenant bazlı veri izolasyonu.
Yüksek eşzamanlılık için kuyruk mekanizması. Maksimum 100 işlem chunk. 250+ eşzamanlı yazma.
Bloc pattern, responsive layout, erişilebilirlik ve animasyonlu arayüz.
flutter_bloc kullanılır. İki ana Bloc: AuthBloc (işletme girişi) ve EmployeeAuthBloc (PIN girişi).
13 navigasyon öğeli yan menü. Genişletilebilir/dar mod. Tam ekran POS. Erişilebilirlik.
3 fazlı animasyon: mavi arka plan kayar, beyaz panel yükselir, login kartı ölçeklenir. Hatalı girişte shake.
Merkezi HTTP istemcisi. Dinamik tenant injector'lar ile otomatik header ekleme.
Velotab'ı diğer POS sistemlerinden ayıran güçlü özellikler.
3 bölme türü: Ürün Bazlı, Eşit Bölme, Özel Tutar. Nakit/Kart/Diğer ödeme yöntemleri.
15sn otomatik senkron, API key yönetimi, müşteri bilgisi, fiscal takip.
Reçete bazlı otomatik stok düşümü, kritik eşik uyarısı, satış engelleme.
Ürün/kategori bazlı kurallar, en iyi indirim otomatik seçimi.
Kategori bazlı yönlendirme, 30dk sağlık kontrolü, yedek yazıcı.
Otomatik fiş, durum takibi, bypass, sağlık kontrolü.
Açılış/kapanış, Z raporu, kasa açığı/fazlası tespiti.
4 haneli PIN, rol bazlı yetki, çift faktörlü giriş.
Sürükle-bırak masa/duvar/sandalye tasarımı, canlı önizleme.
Yüksek kontrast, metin büyütme, sidebar daraltma, renk körü dostu.
Velotab'ın temel iş süreçleri adım adım.
Velotab'ın dünyayla bağlantı noktaları.
TCP/IP termal yazıcılar. Kategori bazlı yönlendirme. Failover.
Mali yazarkasa. IP: 192.168.1.150:4443. Otomatik fiş.
Getir, Yemeksepeti. API key ile kimlik. 15sn senkron.
Dart ile desktop POS
Express + Queue Engine
22 tablo, ACID
HTTP & State
Grafikler
PDF & Yazdırma
Pencere Yönetimi
Bloc State