Ödemeler & Kimlik Doğrulama
Para kazanma ve Kullanıcı Yönetimi.
Kimlik Doğrulama (Auth.js)
RapidCore, Auth.js v5 (eski adıyla NextAuth) kullanır. Yapılandırma packages/core/src/auth.ts dosyasında bulunur.
Bir Sağlayıcı Ekleme
Örneğin, GitHub girişi eklemek için:
- GitHub Geliştirici Ayarları'ndan İstemci Kimliği (Client ID) ve Gizli Anahtarı (Secret) alın.
.envdosyasına ekleyin.auth.tsdosyasını güncelleyin:
import GitHub from "next-auth/providers/github";
export const { handlers, auth, signIn, signOut } = NextAuth({
providers: [
GitHub({ clientId: process.env.GITHUB_ID, clientSecret: process.env.GITHUB_SECRET }),
// ... mevcut sağlayıcılar
],
});
Ödemeler (Stripe)
Ödeme akışı apps/web-starter/src/app/api/stripe/checkout/route.ts içinde uygulanmıştır.
Ürünleri Ayarlama
- Stripe Panelinde bir Ürün oluşturun (ör. "Pro Plan").
- Fiyat Kimliğini (Price ID) alın (
price_...ile başlar). - Ödeme rotanızdaki
PRICE_IDsabitini güncelleyin veya ön yüzden dinamik olarak geçirin.
STRIPE_WEBHOOK_SECRET değişkenini ortam değişkenlerinize eklemeyi unutmayın.
Güvenlik ve Webhook Doğrulama
Ödeme süreçlerinin güvenliğini sağlamak için STRIPE_WEBHOOK_SECRET değişkeni hayati öneme sahiptir. Bu anahtar, gelen talebin gerçekten Stripe'tan gelip gelmediğini doğrulamak için (Signature Verification) kullanılır.
Kritik Güvenlik
STRIPE_WEBHOOK_SECRET olmadan ödeme webhook'larını çalıştırmak, sisteminizi "sahte ödeme onayı" saldırılarına açık hale getirir.
Canlıya Geçiş ve URL Ayarları
Prodüksiyon ortamına geçerken Stripe Dashboard üzerindeki Webhook URL'ini güncellemeyi unutmayın:
- Geliştirme URL'i:
http://localhost:3001/api/stripe/webhook(veya Stripe CLI ile yerel test adresi). - Üretim URL'i:
https://rapidcore.io/api/stripe/webhook(Gerçek alan adınız).
Stripe Webhook adreslerini hem "Test Mode" hem de "Live Mode" için ayrı ayrı yapılandırmanız gerekir. Her mod için farklı bir WEBHOOK_SECRET anahtarı üretilir.