Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.payven.com.tr/llms.txt

Use this file to discover all available pages before exploring further.

Bankalar, ödeme yanıtında ISO 8583 standardına dayanan 2 haneli kod döner. Payven bunu connector.responseCode alanında size iletir.
{
  "data": {
    "status": "Failed",
    "connector": {
      "code": "GarantiVPOS",
      "responseCode": "51",
      "responseMessage": "Yetersiz bakiye"
    }
  }
}

Sık karşılaşılan kodlar

KodAçıklamaMüşteriye gösterim
00Onaylandı(Başarılı)
01Bankanızı arayın”Lütfen bankanızla iletişime geçin.”
04Karta el konuldu”Bu kart kullanılamaz.”
05Reddedildi”Bankanız işlemi onaylamadı.”
12Geçersiz işlemGenel red mesajı
13Geçersiz tutarGenel red mesajı
14Kart numarası geçersiz”Kart bilgilerinizi kontrol edin.”
15Tanınmayan bankaGenel red mesajı
30Format hatasıGenel red mesajı
41Kart kayıp/çalıntı”Bu kart kullanılamaz.”
43Çalıntı kart”Bu kart kullanılamaz.”
51Yetersiz bakiye”Yetersiz bakiye.”
54Kart süresi dolmuş”Kartınızın süresi dolmuş.”
55Hatalı PIN”Bilgilerinizi kontrol edin.”
57Kart sahibi bu işlemi yapamazGenel red mesajı
58Terminal bu işlemi yapamaz(Konfigürasyon hatası — destek)
59Şüpheli sahtecilik”Bankanızla iletişime geçin.”
61Limit aşımı”Kart limitiniz yeterli değil.”
62Kısıtlı kartGenel red mesajı
63Güvenlik ihlali(İzleme — destek)
65Aktivite limit aşımı”Çok fazla deneme yaptınız, lütfen sonra tekrar deneyin.”
75PIN deneme limiti aşıldı”Bilgilerinizi kontrol edin.”
82Geçersiz CVV”CVV kontrol edin.”
91Banka sistemi yanıt vermedi(Smart Retry devreye girer)
92Yönlendirme hatası(Konfigürasyon — destek)
96Sistem hatası(Smart Retry)

Banka-spesifik kodlar

Her bankanın kendi özel kodları da olabilir (örn. Garanti’nin “fraud kuralı kategorisi 2”). Bu kodlar konsoldaki Hata Kodları ekranında banka bazında listelenir: dashboard.payven.com.tr/connector-error-codes

Müşteriye gösterme prensibi

Hassas kodları gizleyin. “Şüpheli sahtecilik” gibi kodlar müşteriye direkt gösterilmemelidir — fraud filterları açık etmenize neden olabilir.
Yönlendirici mesaj verin. “Reddedildi” yerine “Bankanız işlemi onaylamadı, başka bir kart denemek ister misiniz?”
Smart Retry zaten devrede. 91, 96 gibi geçici kodlar için Smart Retry alternatif konnektör dener — kullanıcıya genelde göstermenize gerek yok.

Örnek müşteri mesajı eşleme

function userMessageFromCode(code) {
  const map = {
    "51": "Bakiyeniz yeterli değil, başka bir kart denemek ister misiniz?",
    "54": "Kartınızın son kullanma tarihi geçmiş.",
    "61": "İşlem tutarı kart limitinizi aşıyor.",
    "82": "Güvenlik kodunuz (CVV) yanlış.",
    "14": "Kart bilgilerinizde hata var.",
    "01": "Bankanızla iletişime geçmeniz gerekiyor.",
    "59": "Bankanız işlemi onaylamadı.",
    "65": "Çok fazla deneme yapıldı. Lütfen daha sonra tekrar deneyin.",
  };
  return map[code] || "İşleminiz gerçekleştirilemedi. Lütfen tekrar deneyin.";
}