İçeriğe atla
production / main000%
Tüm yazılar
ENTRY-032Altyapı10 Ağustos 2026 · 1 dk okuma

SER-06 · SER-06.02 · Yerli Altyapı Gerçekleri

iyzico, PayTR, Param ve global ödeme sağlayıcısını aynı SaaS'ta nasıl konumlandırırım?

Ödeme sağlayıcılarını doğrudan domain modeline bağlamak yerine checkout, webhook ve entitlement katmanlarını ayırmak çoklu sağlayıcıyı yönetilebilir hale getirir.

Türkiye ve global pazarı aynı üründe hedeflediğinizde ödeme mimarisi hızla karışabilir. En tehlikeli yaklaşım her sağlayıcının ürün ID'sini uygulamanın her yerine yaymaktır.

Domain'in para sağlayıcısını bilmesine gerek yok

Uygulamanın gerçek sorusu "bu kullanıcı Pro mu?" olmalıdır; "iyzico'da hangi paket ID'sini aldı?" değil. Sağlayıcı verisini billing katmanında normalize ederim.

Önerilen katmanlar

1. Checkout router: ülke, para birimi ve satış kanalına göre uygun checkout'u seçer. 2. Provider adapter: iyzico, PayTR, Param veya global sağlayıcının API/webhook farklarını izole eder. 3. Billing event store: ödeme, yenileme, iptal, refund gibi olayları canonical formata çevirir. 4. Entitlement service: kullanıcı hangi özelliklere erişebilir sorusunun tek kaynak doğrusudur. 5. Reconciliation job: sağlayıcı ile iç kayıtların uyuşup uyuşmadığını düzenli kontrol eder.

Webhook idempotency zorunlu

Aynı ödeme olayı iki kez gelebilir. Webhook'u "geldiyse uygula" mantığıyla yazmak duplicate entitlement veya yanlış muhasebe kaydı doğurabilir. Provider event ID + işlem tipi ile idempotent kayıt tutmak gerekir.

Yerel ve global checkout'u ayır, hesabı ayırma

Türkiye kullanıcısı yerel sağlayıcıdan TL ödeyebilir; global kullanıcı Merchant of Record üzerinden USD/EUR ödeyebilir. Fakat ikisi de aynı account_id ve aynı entitlement modeline bağlanmalıdır.

Sağlayıcı değiştirme testi

Yeni bir ödeme sağlayıcısı eklemek için ürün kodunun büyük bölümünü değiştirmek gerekiyorsa ödeme sınırı yanlış yerde demektir.

Çoklu ödeme mimarisinin amacı daha fazla sağlayıcı kullanmak değil, ödeme kanalının ürün erişim mantığını ele geçirmesini önlemektir.

  • iyzico
  • PayTR
  • Param
  • Payments
  • Architecture
  • SaaS

SER-06 · SER-06.02

Yerli Altyapı Gerçekleri

Türkiye merkezli bir SaaS için self-host/cloud, yerel ve global ödeme sağlayıcıları, CDN, DNS ve gerçek gecikme kararlarını saha koşullarıyla ele alan dizi.

PROJELERE AÇIK · ÜRÜN VE SİSTEM MİMARI · DEVRALMA / STABİLİZASYON / OPERASYON · WEB · ANDROID · WINDOWS · AHMET CANAL

İletişim

Ürününüz sisteminden hızlı mı büyüdü?

Mevcut durumu, en büyük tıkanmayı ve istediğiniz sonucu yazın. Kapsamı birlikte netleştirelim.

Durum

Yeni danışmanlık ve proje işlerine açık.

GROWTH / SIGNAL LOOP

Okumaktan karara geç.

Görüşme, geri bildirim ve sistem notları tek düşük sürtünmeli çıkışta.

CNV-01

Teknik görüşme

Uygunsa doğrudan 20 dakikalık görüşmeye geç.

CNV-02

Karar engeli

Sayfada neyin eksik kaldığını tek sinyalle bildir.