Egoko
← Tüm yazılar
·8 dk okuma

Ödeme connector mimarisi: tek arayüz, beş sağlayıcı

Stripe ve Paddle'ı tam, kalan üçünü iskelet olarak nasıl aynı sözleşmede tutuyoruz?

Her ödeme sağlayıcısı farklı imza şeması, farklı checkout akışı ve farklı iade API'si kullanır. Bunu ürün koduna sızdırmamak için tek bir PaymentProvider arayüzü tanımladık: createCheckoutSession, verifyWebhook, refund, testConnection.

Kimlik bilgileri asla düz metin değil

Sağlayıcı anahtarları AES-256-GCM ile şifrelenir; anahtar .env dosyasındaki ENCRYPTION_KEY'tir. Veritabanı sızsa bile anahtarlar okunamaz. Her sağlayıcının webhook imzası kendi şemasına göre timing-safe karşılaştırmayla doğrulanır.

İskelet de bir sözleşmedir

iyzico, PayTR ve PayPal şu an TODO stub. Ama arayüzü uyguladıkları için dashboard aynı formu gösteriyor, webhook rotası aynı yere düşüyor; sağlayıcı tamamlandığında ürün tarafında hiçbir şey değişmiyor.

Fikrini yaz, bu akşam yayında ol.

1.000.000 kredi hediye. Kredi kartı yok. Custom domain ve ödeme altyapısı gerektiğinde Plus'a geç.