SaaS ve BaaS ne demek? Yazılımı ürün olarak sunmanın iki yolu

SaaS, yazılımı kurulum yerine abonelikle kullandırmaktır; BaaS ise bankacılık altyapısını API olarak başka şirketlere açmaktır. İkisi de "yazılım satmak" yerine "hizmet işletmek" demektir. Farkları, ekonomisi ve bir yazılım ekibi için ne değiştirdiği.

Bir yazılımı satmanın en eski yolu, onu müşterinin sunucusuna kurmak ve lisans faturası kesmektir. Son on beş yılda iki kısaltma bu modeli kökten değiştirdi: SaaS ve BaaS. İkisi de çok kullanılan ama sınırları çoğu zaman bulanık kalan kavramlar; bir yatırımcı sunumunda SaaS, bir fintech haberinde BaaS geçer ve ikisinin nerede ayrıldığı nadiren açıklanır. Bu yazı ikisini yan yana koyuyor: ne anlama geliyorlar, ekonomileri nasıl işliyor ve bir yazılım ekibinin çalışma biçimini nasıl değiştiriyorlar.

SaaS: yazılım bir hizmet olarak

Software as a Service, yazılımın satıcının altyapısında çalışması ve müşterinin ona tarayıcı ya da mobil uygulama üzerinden, abonelikle erişmesidir. Kurulum yoktur, sürüm yükseltme yoktur, sunucu bakımı yoktur; hepsi satıcının işidir. Gmail, Slack, Salesforce ve Trello bu modelin en bilinen örnekleri; Türkiye’de Paraşüt ve Logo’nun bulut ürünleri de öyle.

Müşteri için anlamı basit: sermaye harcaması yerine işletme gideri, aylarca süren kurulum yerine dakikalar içinde başlangıç, her zaman en güncel sürüm. Satıcı için ise anlam daha derindir: tek bir kod tabanı yüzlerce müşteriye aynı anda hizmet verir, gelir tek seferlik değil tekrarlayandır ve ürün canlıdayken ölçülür.

SaaS’ı tanımlayan üç teknik özellik vardır:

  • Çok kiracılık (multi-tenancy): aynı uygulama örneği birden fazla müşteriye hizmet verir; verileri birbirinden kiracı kimliğiyle ayrılır. Bir müşterinin verisini diğerinin görmesi, SaaS’ta ölümcül hatadır; bu yüzden her sorgu, her dosya yolu, her önbellek anahtarı kiracıya bağlıdır.
  • Sürekli teslimat: yılda bir “büyük sürüm” yerine haftada birkaç küçük yayın. Müşteri güncelleme yapmaz, güncelleme ona gelir.
  • Kullanım ölçümü: kim hangi özelliği ne kadar kullanıyor, hangi ekran terk ediliyor, hangi müşteri aboneliği yenilemeyecek. SaaS ürünü veriyle yönetilir.

BaaS: bankacılık bir hizmet olarak

Banking as a Service, lisanslı bir bankanın altyapısını, hesap açma, para transferi, kart çıkarma, kredi gibi işlevleri, API’ler aracılığıyla başka şirketlere sunmasıdır. Banka olmayan bir şirket, kendi markasıyla bir finans ürünü çıkarır; düzenleme, lisans ve çekirdek sistem arkadaki bankadadır.

Bir e-ticaret sitesinin müşterisine “şimdi al, sonra öde” seçeneği sunması, bir muhasebe uygulamasının içinden banka hesabı açılabilmesi, bir perakende zincirinin kendi markalı kartını çıkarması: bunların hiçbirinde şirket banka değildir; arkada bir BaaS sağlayıcı vardır. Bu yaklaşıma “gömülü finans” (embedded finance) da denir; finansal hizmet, kullanıcının zaten olduğu uygulamanın içine gömülür.

BaaS’ın teknik yükü SaaS’tan ağırdır çünkü işin doğası farklıdır:

  • Düzenleme: her işlem denetime tabidir; müşteri tanıma (KYC), kara para aklamayı önleme (AML), limitler ve raporlama yükümlülükleri API’nin tasarımına gömülüdür.
  • Çok kiracılık, bir kat daha: platform hem birden fazla bankaya hem de o bankaların müşterisi olan şirketlere hizmet verir. Kiracı hiyerarşisi iki seviyelidir.
  • Uzun ömürlü kayıt: bir kredi on yıl yaşar; bir hesap kapansa bile kayıtları yasal süre boyunca saklanır. Şema değişiklikleri geçmişi bozmadan yapılmalıdır.

Aynı kısaltmanın ikinci bir anlamı da var: Backend as a Service, yani Firebase ve Supabase gibi, mobil ve web uygulamalarına hazır kimlik doğrulama, veritabanı ve dosya depolama sunan platformlar. Bağlamdan hangisinin kastedildiği bellidir; finans konuşuluyorsa bankacılık, uygulama altyapısı konuşuluyorsa arka uç.

Yan yana

SaaS BaaS
Ne sunar Kullanıma hazır uygulama API üzerinden bankacılık işlevleri
Kim kullanır Son kullanıcı ve ekipler Ürün geliştiren şirketler
Gelir modeli Kullanıcı veya kiracı başına abonelik İşlem başına ücret, hacim paylaşımı, platform lisansı
Kritik risk Kiracı verisi sızıntısı, kesinti Düzenleyici uyumsuzluk, yanlış işlem
Değişim hızı Haftalık yayın Kontrollü sürüm, geriye dönük uyumluluk şart
Örnek Slack, Paraşüt, Tedarik Yönetimi Bir bankanın açık API platformu, gömülü kart ve kredi

Bir yazılım ekibi için ne değişir?

İki modelde de asıl değişim şudur: yazılım teslim edilen bir şey olmaktan çıkar, işletilen bir şey olur. Bunun günlük karşılıkları:

  1. Kesinti bir hata değil, gelir kaybıdır. İzleme, uyarı ve nöbet düzeni ürünün parçasıdır; “canlıda ne oluyor” sorusunun cevabı bir panoda görünmelidir.
  2. Her değişiklik geriye dönük uyumlu olmalıdır. Müşteri sürüm seçemez; bugünkü yayın dünkü veriyle çalışmak zorundadır. Veritabanı geçişleri iki adımda yapılır: önce eklenir, sonra eskisi kaldırılır.
  3. Kiracı sınırı her yerdedir. Kimlik doğrulamadan raporlamaya, dosya depolamadan arka plan işlerine kadar her katman “hangi kiracı” sorusunu sorar. Bu sınır baştan çizilmezse sonradan çizilemez.
  4. Ürün ölçülür. Özellik kullanım oranları, aktivasyon ve abonelik yenileme; bunlar geliştirme önceliğini belirler, sezgi değil.
  5. Destek, mühendisliğin parçasıdır. Bir müşterinin sorunu çoğu zaman diğer yüz müşterinin görmediği bir hatadır; destek kaydı, iyi bir hata raporu gibi ele alınır.

Küçük bir ekip hangisini seçmeli?

SaaS, küçük bir ekibin taşıyabileceği bir modeldir; Tedarik Yönetimi’ni tam da bu yüzden hem bulutta abonelikle hem de isteyen kurum için kendi sunucusunda Docker ile sunuyoruz. Aynı kod tabanı, iki dağıtım biçimi; kiracı ayrımı ve yapılandırma tabanlı davranış bunu mümkün kılıyor.

BaaS ise bir ekip değil, bir kurum işidir: lisans, sermaye ve düzenleyici ilişki gerektirir. Küçük ekiplerin bu alandaki yeri, BaaS platformlarının üzerine ürün yapmak ya da o platformları geliştiren ekiplerde çalışmaktır. Bankacılık yazılımı geliştirme deneyimimizin büyük kısmı bu ikinci türden geliyor: çok kiracılı, düzenlemeye tabi, uzun ömürlü sistemlerde modül geliştirmek. O sistemlerden öğrendiğimiz disiplin, kendi SaaS ürünümüzü tasarlarken en çok işe yarayan şey oldu.

Özet

SaaS, yazılımı kurulum yerine abonelikle kullandırmaktır; BaaS, bankacılık altyapısını API ile başkalarına açmaktır. İkisinin ortak noktası, yazılımı bir kez teslim etmek yerine sürekli işletmektir. Bu geçişi yapan ekipler için mesele teknolojiden çok alışkanlıktır: kiracıyı her katmanda düşünmek, her değişikliği uyumlu tutmak ve ürünü canlıdayken ölçmek.

Tuncay AydınKurucu · Yazılım mühendisi · Aydinfo

10+ yıldır bankacılık yazılımı geliştiriyor; .NET, React, Flutter ve yapay zekâ destekli geliştirme üzerine yazıyor.

Tüm yazılar

Bu konuyu projenizde konuşalım

30 dakikalık ücretsiz ön analiz görüşmesinde ihtiyacınızı dinleyip yol haritası önerelim.

Görüşme planla