Logo TCMB Kur Dokümantasyon

Kuran ve işleten kişi için

Kurulum ve bakım

Uygulama müşterinin Logo veritabanına erişebilen bir Windows makinesine kurulur ve orada Windows servisi olarak çalışır. Kurulum tek betikle yapılır; ardından yönetim paneli açılır ve 6 adımlı sihirbaz tamamlanır.

1. Gereksinimler

  • İşletim sistemi: Windows 10/11 veya Windows Server 2016 ve üzeri, x64, yönetici hakkı.
  • .NET: kurulmasına gerek yoktur. Paket kendi çalışma zamanını taşır (self-contained, win-x64).
  • SQL Server: erişilebilir bir örnek. Uygulama kendi TcmbKur veritabanını oluşturur.
  • Logo: Logo veritabanı ve firma numaraları; kur yazılacak firmalar bilinmeli.
  • İnternet: 443 portu üzerinden https://www.tcmb.gov.tr (bülten) ve https://lisans.erp.tr (lisans, güncelleme).

Uygulama Logo veritabanına yazar. Servis LocalSystem kimliğiyle çalıştığı için NT AUTHORITY\SYSTEM hesabının Logo veritabanında yazma yetkisi olmalıdır. Yetki eksikse kur çekilir ama yazma adımı hata verir — karşılığı S.S.S. bölümündedir.

2. Kurulum (5 dakika)

  1. 1

    Paketi çıkarın

    TcmbKur-Logo-<sürüm>-win-x64.zip dosyasını makineye kopyalayın ve açın.

  2. 2

    Sürümü doğrulayın

    Klasördeki manifest.json içindeki sürüm, indirdiğiniz paketin sürümüyle aynı olmalı.

  3. 3

    Betiği çalıştırın

    Klasöre sağ tıklayıp yönetici PowerShell açın ve kurulum komutunu verin.

powershell -ExecutionPolicy Bypass -File .\install.ps1

Logo veritabanının adı varsayılandan farklıysa parametre olarak verin:

powershell -ExecutionPolicy Bypass -File .\install.ps1 -LogoDb TIGER3

Betik ne yapar

  1. Dosyaları C:\ERP\TcmbKur altına kopyalar.
  2. 5230–5299 aralığından boş ilk portu seçer ve listen-url.txt dosyasına yazar.
  3. TcmbKur veritabanını oluşturur, NT AUTHORITY\SYSTEM hesabına db_owner verir.
  4. ERP TcmbKur Windows servisini kurar ve başlatır.
  5. /healthz sağlık kapısından geçmesini bekler; geçemezse kurulum hata verir.
  6. Tarayıcıda kurulum sihirbazını açar.
  7. Otomatik güncelleyiciyi kurar (5. bölüm).

İlk giriş bilgisi admin / admin'dir; ilk oturumda parola değiştirilir.

3. Kurulum sihirbazı

Panel açıldığında /kurulum (aynı ekran /ayarlar adresinden de açılır) altı adımda ayarları toplar. Adımlar arasında ileri geri gezinebilir, son adımda kaydedebilirsiniz.

3.1 Windows servisi

Servisin kurulu ve çalışır olduğu doğrulanır. Buradan durdurup başlatabilirsiniz; servis zaten kuruluysa "Kur" düğmesi kapalı gelir.

Sihirbazın Windows servisi adımı: servis durumu ve başlat/durdur denetimleri
Adım 1 — servis durumu ve denetimleri.

3.2 Logo bağlantısı

SQL Server sunucusu, veritabanı ve kimlik doğrulama biçimi girilir; bağlantı yerinde test edilir. Ardından kur yazılacak firmalar seçilir. Bağlantı dizesi elle yazılmaz, alanlardan oluşturulur; parola tarayıcıya geri gönderilmez.

Sihirbazın Logo bağlantısı adımı: sunucu, veritabanı ve firma seçimi
Adım 2 — Logo bağlantısı ve firma seçimi.

3.3 Kur çekme

Hangi para birimlerinin çekileceği, Logo'daki hangi kur alanına yazılacağı ve çalışma saatinin ne olacağı burada belirlenir. Ayrıntılı anlatım Günlük kullanım sayfasındadır; özet olarak:

  • TCMB bülteni her iş günü 15:30'da yayımlanır ve ertesi iş günü için geçerlidir.
  • Bu yüzden hedef gün D için D-1 bülteni kullanılır; bülten yoksa geriye doğru varsayılan 10 gün taranır.
  • Erken çekim koruması varsayılan olarak açıktır: bülten saatinden önce eksik veri yazılmasını engeller.
  • Yazma biçimi yalnız-ekle veya güncelle-ekle olabilir; L_DAILYEXCHANGES yazımı ve APPROVE=1 işaretlemesi isteğe bağlıdır.
  • "Birime böl" seçeneği, 100 birim üzerinden kote edilen kurları (örneğin JPY) Logo'nun beklediği biçime çevirir.
Sihirbazın kur çekme adımı: para birimleri, kur alanı eşleştirmesi ve çalışma saati
Adım 3 — para birimleri, kur alanı eşleştirmesi ve zamanlama.

3.4 E-posta ve kontrol raporu

SMTP bilgileri girilir ve günlük kontrol raporunun kime, saat kaçta gideceği seçilir. Rapor "bugün için kur yazıldı mı, kaç satır, hata var mı" sorusunu cevaplar; kurulumdan sonra sisteme kimse bakmasa bile eksik çalışma fark edilir.

Sihirbazın e-posta adımı: SMTP ayarları ve kontrol raporu alıcıları
Adım 4 — SMTP ve günlük kontrol raporu.

3.5 Lisans ve kurulum eşleştirmesi

Uygulama açılışta kendini lisans merkezine bekleyen kurulum olarak kaydeder; müşteriden API anahtarı istenmez. Ekranda kısa bir kurulum kodu ve karekod görünür; ERP tarafındaki yönetici bu kaydı görüp müşteriye ve ürüne uygun lisansı bağlar. Atama yapılana kadar ekranda "Lisans ataması bekleniyor" yazar.

Sihirbazın lisans adımı: kurulum kodu, karekod ve lisans durumu
Adım 5 — kurulum kodu ve lisans durumu.

Lisans neyi kapatır: yalnız Logo'ya yazma adımı. Kur çekme, panel, loglar ve güncelleme lisanstan bağımsız çalışır — güvenlik yaması lisans tahsilat aracı değildir. Lisans sunucusuna geçici olarak ulaşılamaması uygulamayı kilitlemez.

3.6 Özet ve bitir

Son adım tüm seçimleri tek ekranda gösterir. Kaydettiğinizde ayarlar veritabanındaki dbo.Config tablosuna yazılır ve zamanlanmış çalışma devreye girer.

Sihirbazın özet adımı: yapılan tüm seçimlerin listesi
Adım 6 — özet ve kaydetme.

4. Servis, sağlık ve loglar

KonuYer
Servis adıERP TcmbKur (LocalSystem kimliği)
Kurulum klasörüC:\ERP\TcmbKur
Dinlenen adresC:\ERP\TcmbKur\listen-url.txt
Sağlık kapısıhttp://127.0.0.1:<port>/healthz → 200 + {status, version, db}
GünlüklerC:\ERP\TcmbKur\logs\tcmbkur-<tarih>.log (14 dosya saklanır)
AyarlarTcmbKur veritabanı, dbo.Config tablosu
SırlarC:\ERP\TcmbKur\keys

Servisi komut satırından yönetmek için:

sc.exe query "ERP TcmbKur"
sc.exe stop  "ERP TcmbKur"
sc.exe start "ERP TcmbKur"

Panelde aynı bilgiler /service ve /logs ekranlarında görünür — Günlük kullanım sayfasına bakın.

Yedekleme

İki şey birlikte yedeklenir: TcmbKur veritabanı ve C:\ERP\TcmbKur\keys klasörü. Ayarların bir kısmı bu klasördeki anahtarla şifrelenmiştir; yalnız veritabanı geri yüklenirse şifreli alanlar açılamaz.

Veritabanı için mevcut SQL Server yedekleme düzeninize TcmbKur veritabanını eklemek yeterlidir. keys klasörü küçüktür; dosya yedeklemesine dahil edin.

5. Güncelleme

5.1 Otomatik güncelleme (varsayılan)

Kurulum, uygulamanın dışında yaşayan bir güncelleyici bırakır: %ProgramData%\ErpUpdate\TCMBKUR klasörü ve her gün 03:20'de SYSTEM olarak çalışan ERP Update TCMBKUR zamanlanmış görevi. Güncelleyicinin uygulamanın dışında olması bilinçlidir: kendini güncellemeye çalışan bir süreç kendi dosyasını kilitler.

Akış şöyledir:

  1. Güncelleyici lisans merkezine ürün, sürüm ve cihaz kimliğiyle sorar.
  2. Cevap imzalıdır — "güncelleme yok" cevabı da imzalıdır, çıplak bir hata kodu kabul edilmez.
  3. Paket indirilir; SHA-256, boyut ve sürüm eşleşmesi doğrulanır.
  4. Servis durdurulur, dosyalar takas edilir; veritabanı, keys, logs, listen-url.txt ve appsettings.Production.json korunur.
  5. Servis başlatılır; /healthz 200 dönmeli ve bildirdiği sürüm hedef sürüm olmalıdır.
  6. Kapıdan geçilemezse önceki sürüme otomatik dönülür, bozuk paket karantinaya alınır ve merkeze bildirilir.

Güncelleme lisanstan bağımsızdır: lisansı süresi dolmuş bir kurulum da yamayı alır.

5.2 Elle güncelleme

Otomatik güncelleme kapatılmışsa veya bir sürümü elle yükseltmek gerekiyorsa yeni paket indirilip aynı kurulum betiği çalıştırılır. Betik mevcut kurulumu tanır ve yükseltme yapar.

powershell -ExecutionPolicy Bypass -File .\install.ps1

5.3 Neyin korunduğu

Dosya / klasörGüncellemede
TcmbKur veritabanıKorunur
keys\Korunur
logs\Korunur
listen-url.txtKorunur
appsettings.Production.jsonKorunur
appsettings.jsonÜzerine yazılır
Lisans ve cihaz kimliğiKorunur (%ProgramData%\ERP\Lisans\TCMBKUR)

Kalıcı ayarlarınızı appsettings.json içine yazmayın; o dosya her güncellemede paketten gelen sürümle değişir. Makineye özgü ayar appsettings.Production.json dosyasına, işleyişe ait ayar ise panele (yani dbo.Config tablosuna) girilir.

-noupdate ekiyle üretilmiş paketler güncelleyici taşımaz; bu paketler güncellemenin dışarıdan yönetildiği ortamlar içindir.

6. "Teklif al" adresi

Lisans atanmamış kurulumda panel bir "Teklif al" bağlantısı gösterir. Varsayılan adres https://tcmbkur.erp.tr'dir ve ayarlardan değiştirilebilir; bayi kendi adresini verebilir.

7. Yönetici parolasının sıfırlanması

Panel parolası unutulursa makinede yönetici komut isteminden sıfırlanır. Parola verilmezse betik yeni bir parola üretir ve ekrana yazar.

cd C:\ERP\TcmbKur
.\TcmbKur.App.exe reset-admin admin
.\TcmbKur.App.exe reset-admin admin --password YeniParola

8. Kaldırma

powershell -ExecutionPolicy Bypass -File .\uninstall.ps1

Betik servisi ve zamanlanmış güncelleme görevini kaldırır. Lisans ve cihaz kimliği koşulsuz korunur — aynı makineye yeniden kurulduğunda lisans yeniden atanmak zorunda kalmaz. Veritabanı otomatik silinmez; gerçekten kaldırmak istiyorsanız TcmbKur veritabanını elle silin.