İçeriğe geç
Birleşik api

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.

const payment = createBetterPayment({

defaultProvider: "iyzico",

});

await payment.createPayment(order);

Aynı sonuç yapısı

{ status: "success", provider: "iyzico" }

412 ms
Avantajlar

Bu özellik neden işinize yarar?

1

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.

2

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.

3

Gelişmiş Tip Güvencesi

IDE içinde tam otomatik tamamlama. Eksik parametreler veya yanlış tipler henüz derleme aşamasında yakalanır.

4

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ş.

payment.tsTypeScript
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"
});