Altyapı ve dış sistemler
API’nin konuştuğu dünya
Haljet API kendi başına siparişi yönetir; para, fatura, arama ve bildirim için dış servislere bağlanır. Bu sayfa kodda yapılandırılmış bağlantıları listeler. Kullanılmayan veya yorum satırına alınmış yollar ayrıca belirtilir.
Veri ve çalışma zamanı
| Sistem | Haljet’teki işi |
|---|---|
| MySQL + Prisma | Kullanıcı, ürün, depo tanımı, sepet, cari bakiye, adres, CRM. |
| MongoDB + Mongoose | Sipariş, ödeme, stok hareketi, transfer, fatura, sohbet, rapor. |
| Redis | Bull kuyrukları ve MurLock dağıtık kilit. |
| MeiliSearch | Ürün arama indeksi. Saatlik tam yenileme (üretimde). |
| BigQuery | Sipariş, arama, kayıt gibi analitik olaylar. |
Verinin hangi tarafta durduğu: Nerede ne tutulur.
Kimlik ve bildirim
| Sistem | İş |
|---|---|
| Firebase Auth | Google / Firebase kimlik doğrulama, firebaseUUID. |
| Firebase Cloud Messaging | Cihaz jetonu UserDevice tablosunda; sağlayıcı enum’u yalnız FCM. |
| Firebase Firestore | Alıcı kaydı buyer.firestore-sync olayıyla senkronlanır. |
| Firebase Realtime Database | Mesaj ve konum gibi anlık kanallar (mesaj dinleyicileri). |
| Netgsm | SMS (telefon doğrulama). |
| Resend | E-posta (doğrulama ve yönetici sipariş maili). |
| Telegram (Telegraf) | Operasyon uyarıları. Bot launchOptions: false ile başlar; API mesaj gönderir, webhook dinlemez. |
Ödeme
Aktif kart yolu kodda PayTR, başarısız olursa Paywall şeklindedir. MagicPay servisi vardır; iframe üretim zincirinde yorum satırına alınmıştır.
| Sağlayıcı | Koddaki platform değeri | Kullanım |
|---|---|---|
| PayTR | PAYTR | Kart iframe, kayıtlı kart (paytrUtoken), EFT iframe |
| Paywall | PAYWALL | PayTR başarısız olunca kart; webhook |
| MagicPay | MAGICPAY | Modül mevcut, aktif fallback zincirinde değil |
| Manuel | MANUAL | Havale onayı gibi operasyonel tahsilat |
Ödeme durumu PENDING, SUCCESS, FAIL. Akış: Ödeme.
Fatura ve yasal bildirim
| Sistem | İş |
|---|---|
| İzibiz | E-fatura ve e-arşiv. Giden fatura invoices koleksiyonuna, gelen tedarikçi faturası platformInvoices koleksiyonuna yazılır. Web kancası izibiz yolunda herkese açıktır. |
| HKS | Hal Kayıt Sistemi. Ürün kodları Prisma ProductHks; stok çıkış bildirimi sipariş faturası öncesinde denenir. Künye arama takibi HksInvoiceTracker. |
Akış: Fatura ve HKS.
Harita ve yapay zeka
| Sistem | İş |
|---|---|
| Google Maps | Adres ve mesafe. |
| Google Gemini (Genkit) | Genel AI soruları, mesaj kuyruğu, sipariş notu çıkarımı, bildirim metni. |
| Google uygulama kimliği | BigQuery veri kümesi. |
Kuyruklar
Hepsi Redis üzerindeki Bull kuyruklarıdır.
| Kuyruk | İş |
|---|---|
haljet-ai | Sohbet mesajını yapay zekaya işleme |
transfer-operations | Transfer sevk, araç faturası üretimi |
report | Ürün satış raporu toplama |
warehouse-report | Depo istatistik toplama |
warehouse-coverage-recompute | Teslimat kapsama alanı yeniden hesap |
warehouse-product-stock | Kuyruk kayıtlı; işleyici yok |
Zamanlanmış işler
Saatler, ilgili servislerin cron tanımından gelir (sunucu saatine bağlı; fatura işi İstanbul günü 07:00 olarak yazılmıştır).
| Sıklık | Örnek işler |
|---|---|
| Her 10 dakika | Depo stok bakımı |
| Saatlik | MeiliSearch ürün indeksi, fatura cron, iade/transfer cron, fiyat mumu |
| 06:00 | Depo stok |
| 07:00 | Teslim edilmiş siparişler için fatura üretimi |
| 08:00 | Alıcı cron |
| 21:30 | HKS stok ön bildirimi |
| Gece yarısı | Alıcı grup değerlendirme, heatmap, birçok rapor |
| 02:00 | Alıcı yaşam döngüsü raporu (ikinci tur) |
Bildirim cron’u kodda yorum satırına alınmıştır (0 10 ve 0 17).