SaaS Development

Abonelik ürününü
platform olarak kuruyoruz.

Multi-tenant mimari, faturalama ve paneller.

Birden fazla organizasyonun aynı ürünü güvenle kullanması; tenant izolasyonu, planlar, koltuklar ve kullanım ölçümü ister. SaaS’ı tek müşteri yazılımı gibi değil, ürün platformu olarak tasarlıyoruz.

Tenancy · Billing · Roles · Dashboards · Usage · Subscriptions

PRODUCT / WORKSPACE LAYER

TEVQON Product Console
tenant · demo ui

Acme Ops

org/acme · Aylık dönem

TeamBilling

Plan

Team

Dönem

Aylık

Durum

Aktif

Seats12/20
WorkspaceAktif
BillingAktif
MembersAktif
Usageİzleniyor
Multi-tenant
Subscription
Metered usage
Isolated data
Plan entitlements
Product loop

Product platform

SaaS, bir web paneli değil. Tekrar satılabilen bir ürün omurgasıdır.

01

B2B SaaS platformları

Birden fazla şirketin aynı ürünü kendi workspace’inde kullanması. Kimlik, roller, faturalama ve veri sınırları ürünün omurgasıdır — sonradan eklenen bir katman değil.

02

Dikey SaaS

Tek bir sektörün iş akışına göre şekillenen abonelik ürünleri.

03

İç platformlar

Holding, bayi ağı veya grup şirketleri için paylaşılan ürün katmanı.

04

Self-serve ürünler

Kayıt, deneme, plan seçimi ve self-serve onboarding hattı.

05

Operatör panelleri

Sizin ekibinizin tenant, fatura ve destek süreçlerini yönettiği admin katmanı.

06

API’li ürünler

Müşterinin kendi sistemine bağladığı webhook, public API ve entegrasyon yüzeyi.

Multi-tenant

Aynı ürün. Ayrı organizasyonlar. Karışmayan veri.

Tenant modeli, “müşteri ID’si eklemek” değildir. Her organizasyonun kullanıcıları, kayıtları ve ayarları kendi sınırında durur; paylaşılan katman yalnızca kimlik, plan ve faturalama gibi ürün omurgasıdır.

  • Workspace başına izolasyon
  • Rol ve yetki org sınırında
  • Paylaşılan çekirdek, ayrı veri
  • Operatör paneli tenant’ları görür; tenant diğerini görmez

DIAG / KERNEL → ORG BOUNDARIES

Platform kernel

KimlikTenancyFaturalamaPlan kapıları

Org A

tenant A
  • Kullanıcılar
  • Veri alanı
  • Ayarlar

Org B

tenant B
  • Kullanıcılar
  • Veri alanı
  • Ayarlar

Org C

tenant C
  • Kullanıcılar
  • Veri alanı
  • Ayarlar

Billing

Plan, koltuk ve fatura aynı ürün dilinde konuşur.

Abonelik; fiyat listesi koymak değildir. Dönem, koltuk, deneme, yükseltme ve ödeme sağlayıcı aynı veri modelinde durur. Aşağıdaki konsol örnek bir faturalama arayüzüdür — fiyat veya gelir iddiası değildir.

  • Aylık / yıllık dönem
  • Koltuk ve kota
  • Deneme ve kupon
  • Fatura ve dunning
Billing console
SUB · LEDGER
Starter

5 koltuk

Tek workspace

Team

20 koltuk

Roller + davet

Scale

Kota modeli

Kullanım + SSO

Team · seats12/20

Invoices

status

INV-1042

Acme Ops · Nisan

Ödendi

INV-1041

Northwind · Nisan

Dönem açık

INV-1040

Atlas Studio · Mart

Hatırlatıldı

Subscription lifecycle

Abonelik bir ödeme değil, bir durum makinesidir.

  1. 01

    Trial

    Workspace açılır, plan henüz tahsil edilmez.

  2. 02

    Active

    Dönem başlar; koltuk ve özellikler açılır.

  3. 03

    Past due

    Ödeme gecikirse erişim kuralları devreye girer.

  4. 04

    Canceled

    Veri saklama ve çıkış süreci tanımlanır.

Tenant dashboard

Müşteri kendi ürününü yönetebilmeli.

SaaS paneli sizin operasyon ekranınız değildir. Tenant; üyelerini, planını ve kullanımını kendi workspace’inden görür. Aşağıdaki arayüz örnek üründür — metrik iddiası değildir.

workspace · acme-ops

demo ui
OverviewMembersBillingUsageSettings

Workspace overview

Aktif workspace

Koltuk kullanımı

Dönem durumu

Aktif

Son fatura

Usage shape

Product events

  • 09:14member.invited role=editor
  • 09:02plan.changed starter → team
  • 08:41invoice.issued period=current
  • 08:18usage.snapshot seats=12

Usage metering

Kullanım görünür olmazsa plan da çalışmaz.

Kota, koltuk ve dönemsel kullanım; faturalama ve özellik kapılarıyla aynı kaynaktan okunur. Çubuklar örnek bir ölçüm düzenidir — gerçek tüketim veya kapasite vaadi değildir.

period · current

Koltuklar · seat12/20
Depolama · quota34/50
API çağrısı · period61/100
Workspace · org2/3

Onboarding

İlk workspace, ürünün ilk satış anıdır.

Self-serve SaaS’ta kayıt ile değer arasındaki yol kısa ve net olmalı. Satış destekli modellerde aynı omurga, operatörün tenant açması için de kullanılır.

01

Hesap

E-posta ile kayıt veya davet kabulü.

02

Workspace

Organizasyon adı, bölge ve ilk ayarlar.

03

Plan

Deneme veya ücretli plan seçimi.

04

Ekip

Üye daveti ve rol ataması.

Entitlements

Özellik, koda gömülmez. Plana bağlanır.

Plan kapıları, “if plan === pro” dağılmaları yerine tek bir yetki katmanından okunur. Matris örnek bir ürün dilimlemesidir; paket fiyatı veya popülerlik iddiası değildir.

ÖzellikStarterTeamScale
Workspace
Üye daveti
Roller
Kullanım kotası
SSO
Audit log
Public API

Identity

Kullanıcı ürüne girer. Yetki workspace’te kalır.

Aynı kişi birden fazla organizasyonda farklı roller taşıyabilir. Kimlik paylaşılan, yetki tenant’a bağlıdır. SSO ve davet akışı ihtiyaç olduğunda bu modele eklenir.

Owner

Plan, fatura, silme

Admin

Üye, rol, ayar

Member

Ürün kullanımı

Billing

Fatura ve koltuk

Product API

SaaS, kendi sınırında kapanmaz. Dışarıya da konuşur.

Webhook ve public API, ürünün entegrasyon yüzeyi. Müşteri kendi sistemine olay bağlar; sizin ekibiniz de fatura ve üye olaylarını aynı sözleşmeden okur.

POST /webhooks · event contract

  • workspace.createdYeni org açıldığında
  • member.invitedDavet gönderildiğinde
  • subscription.updatedPlan veya dönem değişince
  • invoice.paidTahsilat tamamlanınca
  • usage.thresholdKota eşiği aşılınca

Abonelik ürününü adım adım platforma çeviriyoruz.

  1. 01

    Ürün modeli

    Kim kullanır, nasıl öder, ne izole edilir.

  2. 02

    Tenancy

    Workspace, veri sınırı ve kimlik.

  3. 03

    Plan & billing

    Dönem, koltuk, kota ve tahsilat yüzeyi.

  4. 04

    UX / paneller

    Müşteri ve operatör arayüzleri.

  5. 05

    Geliştirme

    Ürün omurgası ve ilk dikey.

  6. 06

    Onboarding

    Kayıt, davet, deneme hattı.

  7. 07

    Yayın

    Kontrollü ilk tenant’lar.

  8. 08

    İterasyon

    Plan, kota ve ürün döngüsü.

Teslimatlar

Proje sonunda ne teslim ediyoruz?

Çalışan bir ürün omurgası: tenant, plan, panel ve entegrasyon yüzeyi. Kapsam, ürün tipine göre keşifte netleşir.

Teslimat paketi

SAAS-HANDOVER.md

  • 01tenant & workspace modeli
  • 02abonelik ve plan yapısı
  • 03koltuk / kota ölçümü
  • 04müşteri paneli
  • 05operatör (admin) paneli
  • 06rol ve davet akışı
  • 07fatura entegrasyon yüzeyi
  • 08webhook / API sözleşmesi
  • 09onboarding hattı
  • 10teknik dokümantasyon

Hangi ürünlerde?

B2B SaaSDikey sektör ürünüİç platform / holdingSelf-serve abonelikBayi ağı paneliKullanım bazlı faturalamaWhite-label workspaceAPI-first ürün

Stack

Ürün omurgası için sade bir ekosistem.

Product

  • Next.js
  • TypeScript
  • React

Data

  • PostgreSQL
  • Redis

Billing

  • Stripe
  • iyzico

Identity

  • Auth.js
  • SSO / SAML

Delivery

  • Docker
  • CI/CD

SaaS’ı özel yazılımdan ayırıyoruz.

01

Ürün olarak düşünülür

Tek müşteri yazılımını SaaS diye paketlemiyoruz. Tenant ve plan baştan vardır.

02

Faturalama omurgada

Abonelik, koltuk ve kota sonradan yapıştırılmaz; veri modelinin parçasıdır.

03

İzolasyon varsayılan

Workspace sınırları özellik eklenirken değil, mimari kurulurken çizilir.

04

İki panel, iki dil

Müşteri paneli ve operatör paneli ayrı amaçlara hizmet eder.

05

Self-serve veya satış destekli

Onboarding hattı ürün modeline göre kurulur; tek şablon dayatılmaz.

06

Entegrasyon yüzeyi

Webhook ve API, ürünün dışarıya açılan sözleşmesidir.

07

Dürüst kapsam

Hazır bir “SaaS kiti” satmıyoruz. İhtiyaç olan omurga inşa edilir.

08

Yayın sonrası ürün döngüsü

Plan, kota ve panel; ilk yayından sonra da iterasyon ister.

SaaS geliştirme hakkında merak edilenler.

Yazılımın birden fazla müşteriye abonelikle sunulduğu ürün modelidir. Her müşteri kendi workspace’inde çalışır; siz tek bir ürünü işletirsiniz.

Özel yazılım bir organizasyonun sürecine göre yazılır. SaaS ise birçok organizasyonun aynı ürünü kullanması için tenant, plan ve panel omurgası ister. İkisi ayrı mühendislik problemleridir.

Aynı uygulama örneğinin birden fazla organizasyonu barındırmasıdır. Veri, kullanıcı ve ayarlar workspace sınırında kalır; paylaşılan katman kimlik, plan ve faturalama gibi ürün çekirdeğidir.

Tenant kimliği veri modelinin parçasıdır. Sorgular, dosyalar ve ayarlar org sınırına bağlanır. İzolasyon yöntemi (paylaşılan şema, şema başına tenant vb.) ürün ölçeğine göre seçilir.

Evet, ürün modelinin parçası olarak kurulur. Plan, dönem, koltuk ve fatura kayıtları uygulamada durur; tahsilat bir ödeme sağlayıcısı üzerinden bağlanır.

İhtiyaca ve pazara göre uygun sağlayıcı entegre edilir. Sağlayıcı seçimi resmi partnerlik iddiası değil, ürün ve bölge uygunluğudur.

Evet. Trial, kupon ve yıllık/aylık dönem abonelik durum makinesine bağlanır. Kurallar keşifte netleşir.

Plan, kaç üyenin workspace’e girebileceğini tanımlar. Davet, rol ve kota aynı kaynaktan okunur. Kullanım bazlı faturalama ayrı bir ölçüm katmanı ister.

Evet. API çağrısı, depolama veya işlem sayısı gibi birimler ölçülüp döneme yazılabilir. Model, ürünün gerçek tüketimine göre tasarlanır.

Evet. Tenant kendi üyelerini ve planını yönetir. Operatör paneli tenant’ları, faturaları ve destek süreçlerini görür. İkisi aynı yetkiyle açılmaz.

Çoğu senaryoda evet. Önce tek-müşteri varsayımları, veri modeli ve kimlik incelenir. Bazen kademeli geçiş, bazen omurganın yeniden kurulması gerekir.

Evet, ürün modeline göre workspace veya marka katmanı eklenebilir. Her SaaS white-label olmak zorunda değildir.

Evet. SAML / OIDC gibi kurumsal giriş, genelde üst plan yetkisi olarak bağlanır. Kurulum kimlik sağlayıcısına bağlıdır.

Teslim edilen kaynak kod ve proje varlıklarının sahipliği size aittir. Üçüncü taraf servislerin lisansları kendi koşullarına tabidir.

Evet. İlk sürüm tek bir dikey ve net bir tenant modeli ile çıkar. Plan ve faturalama omurgası, sonradan yamalanmasın diye erken kurulur.

Kapsam, entegrasyon ve panel derinliğine göre değişir. Keşif sonrası gerçekçi bir takvim paylaşırız; tek bir standart süre vermeyiz.

Plan, kota, hata düzeltme ve yeni özellik iterasyonu için bakım süreci tanımlanabilir. Kapsam proje kapanışında netleşir.

Hayır. Ürününüzün tenant, plan ve panel ihtiyacına göre omurga inşa ederiz. Kutu ürün veya lisans paketi sunmuyoruz.

SaaS ürünü mü?

Abonelik fikrini çalışan bir platforma dönüştürelim.

Kim kullanacak, nasıl ödeyecek, veri nasıl izole edilecek — birlikte netleştirelim. Tenant, plan ve panel omurgasını ürününüze göre kuralım.