11 Sağlayıcı ve Banka İçin Tek Tip-Safe Arayüz
createPayment, initThreeDSPayment, refund, cancel ve getPayment fonksiyonları tüm sağlayıcılarda aynı istek tiplerini alır ve aynı yapıda sonuç döner. Sağlayıcı değiştirmek sadece tek bir parametreyi değiştirmekten ibarettir.
Aynı sonuç yapısı
Bu özellik neden işinize yarar?
Sıfır Vendor Lock-in
Kodunuzu iyzico veya PayTR'ın özel SDK'lerine hapsetmeyin. İstediğiniz an banka sanal POS'una veya başka bir ağ geçidine geçin.
Ortak İstek & Yanıt Tipleri
Farklı parametre adları (price vs amount vs total) ile uğraşmayın. Better Payment hepsini standartlaştırır.
Gelişmiş Tip Güvencesi
IDE içinde tam otomatik tamamlama. Eksik parametreler veya yanlış tipler henüz derleme aşamasında yakalanır.
Otomatik Protokol Dönüşümü
SOAP XML, REST JSON, form-data ve query parametreleri perde arkasında otomatik olarak formatlanır.
Basit, anlaşılır ve doğrudan.
Better Payment olmadan
Her sağlayıcı için ayrı npm paketi, farklı metot isimleri ve bambaşka hata objeleri.
Better Payment ile
Tek npm paketi, tek createPayment metodu, sağlayıcılar arası 1 satırda dinamik geçiş.
import { createBetterPayment } from "better-payment";
const payment = createBetterPayment({
defaultProvider: "iyzico",
providers: {
iyzico: { apiKey: "...", secretKey: "..." },
paytr: { merchantId: "...", merchantKey: "...", merchantSalt: "..." },
akbank: { clientId: "...", username: "...", password: "..." }
}
});
// Same interface across all 11 providers
const result = await payment.createPayment({
paymentCard: { cardNumber, expireMonth, expireYear, cvc },
buyer: { id: "usr_1", email: "user@example.com" },
paidPrice: "250.00",
currency: "TRY"
});