İçeriğe geç
Özel sağlayıcılar

50 Satırda Kendi Banka veya Ödeme Ağ Geçidinizi Yazın

Listenizde olmayan özel bir banka veya küresel bir ödeme kuruluşu mu var? BaseProvider sınıfını genişletin; sistemdeki tüm tiplerden, HTTP handler'dan ve hata yönetiminden otomatik yararlanın.

Kendi sağlayıcınız
  • index.tsextends BaseProvider
  • types.tsconfig + raw response
  • utils.tshash + mapper
createPaymentinitThreeDSPaymentrefundcancelgetPayment

≈ 50 satırda sözleşme tamam.

Avantajlar

Bu özellik neden işinize yarar?

1

BaseProvider Şablonu

createPayment, refund, cancel metotlarını doldurmanız yeterlidir.

2

Otomatik Tip Uyumluluğu

Yazdığınız özel sağlayıcı, tüm sistem genelinde diğer sağlayıcılar gibi kullanılabilir.

3

Dahili Şifreleme ve Hash

Web Crypto tabanlı HMAC, SHA-256 ve SHA-512 yardımcı araçları elinizin altında.

4

Açık Kaynak Katkı İmkânı

Yazdığınız sağlayıcıyı dilerseniz Better Payment ana deposuna PR olarak gönderebilirsiniz.

Basit, anlaşılır ve doğrudan.

Better Payment olmadan

Yeni bir banka eklerken sıfırdan HTTP istemcisi, tip tanımları ve callback rotaları oluşturmak.

Better Payment ile

BaseProvider'dan türetip sadece bankanın XML/JSON formatını eşleştirmek; gerisini motor halleder.

custom-provider.tsTypeScript
import { BaseProvider, type PaymentRequest, type PaymentResult } from "better-payment";

export class CustomRegionalBankProvider extends BaseProvider {
  name = "regional-bank";

  async createPayment(req: PaymentRequest): Promise<PaymentResult> {
    const xmlPayload = this.buildBankXml(req);
    const response = await fetch("https://bank.com/pos", {
      method: "POST",
      body: xmlPayload
    });
    return this.normalizeBankResponse(await response.text());
  }
}