İçeriğe geç

Ödeme Akışı

Bu sayfa bir tahsilatın baştan sona nasıl ilerlediğini anlatır. Web ve mobil arasındaki farkı ve tek deneme kuralını burada görürsünüz.

Entegrasyon iki taraflıdır. Sunucu tarafında siz ödeme isteğini oluşturur ve sonucu doğrularsınız. Tarayıcı tarafında kart sahibi kartını LydiaGate 3DS Relay’e iletir ve 3D Secure doğrulamasını tamamlar. Bankanın 3D Secure adımı, banka geri bildirimi ve tahsilat LydiaGate tarafındadır.

  1. Kartsız taksit görünümü. Kart girilmeden önce sunucunuz POST /v1/installment-options/overview ile terminalinizdeki bütün taksit seçeneklerini ve kart tipine göre komisyon tutarlarını alır. Ödeme ekranınız bu tabloyu kart sahibine gösterir. Ayrıntı: Kartsız Taksit Görünümü.
  2. Taksit ve toplam tutar sorgusu. Kart sahibi kartının ilk 8 hanesini girer. Sunucunuz POST /v1/installment-options ile taksit seçeneklerini ve her seçeneğin toplam tutarını alır. Ayrıntı: Taksit ve Toplam Tutar Sorgusu.
  3. Ödeme isteği. Kart sahibi bir seçenek seçer. Sunucunuz POST /v1/payments ile seçilen toplam tutarı, taksit sayısını, terminal kimliği olan terminalId değerini ve dönüş adresi olan returnUrl değerini gönderir. Bu istekte kart yoktur. Yanıtta paymentCode, initiated durumu, paymentRef ve handoffUrl gelir. paymentCode ödeme kodu, paymentRef ödeme referansı, handoffUrl yönlendirme adresidir. Ayrıntı: Ödeme Oluştur.
  4. LydiaGate 3DS Relay’e geçiş. Kart sahibinin tarayıcısı, topladığınız kartı ve paymentRef değerini handoffUrl adresine bir formla POST isteğiyle gönderir. Ayrıntı: Kart Handoff.
  5. 3D Secure. LydiaGate 3DS Relay bankanın 3D Secure adımını başlatır. Kart sahibi bankasının doğrulama sayfasında doğrulamayı tamamlar. Bu adımlar kendiliğinden yürür. Siz bir form kurmazsınız.
  6. Banka geri bildirimi ve tahsilat. Banka 3D Secure sonucunu LydiaGate’e bildirir. LydiaGate tahsilatı yapar ve komisyonu bankaya bildirir.
  7. Geri dönüş. LydiaGate 3DS Relay kart sahibinin tarayıcısını HTTP 303 yönlendirmesiyle sizin returnUrl adresinize gönderir. Bu adrese gelen bilgi kesin sonuç değildir.
  8. Sonucu doğrulama. Kesin durumu GET /v1/payments/{paymentCode} ve webhook ile öğrenirsiniz. Borcu kapatma kararını bu kesin sonuca göre verirsiniz.
Uçtan uca ödeme akışıKart sahibi, sunucunuz, LydiaGate API, LydiaGate 3DS Relay ve kartın bankası arasındaki 8 adım. Adımlar diyagramın altındaki numaralı listede metin olarak da yer alır.Kart sahibitarayıcıSunucunuzödeme ekranınızLydiaGate APILydiaGate3DS RelayKartın bankası3D Secure1 POST /v1/installment-options/overviewTaksit ve komisyon tablosu2 Kartını girer2 POST /v1/installment-optionsKarta göre taksitler ve toplam tutar3 Taksit seçer3 POST /v1/payments (kart yok)paymentRef ve handoffUrl4 Kart ve paymentRef, form ile5 3D Secure doğrulamasıDoğrulama sonucu6 Tahsilat ve komisyon bildirimi303 yönlendirme7 Dönüşe gelir8 Webhook: kesin sonuç8 GET /v1/payments/{paymentCode}Ödemenin kesin durumu
Düz oklar istektir. Kesikli oklar yanıttır. Numaralar alttaki listeyle aynıdır.

Akış iki kanalda da aynıdır. Tek fark tarayıcı bağlamını nasıl yarattığınızdır.

  • Web: kart sahibinin tarayıcısı handoffUrl adresine bir formla POST isteği gönderir. Dönüşte tarayıcı HTTP 303 yönlendirmesiyle returnUrl adresine gider.
  • Mobil: uygulamanız kartı kendi ekranında toplar. Sonra bir WebView açar. Uygulamanız kartı ve paymentRef değerini handoffUrl adresine POST isteğiyle gönderir. 3D Secure WebView içinde tamamlanır. Sonunda WebView returnUrl adresine iner.

Bir paymentRef değerini tek denemelik kabul edin. Teknik olarak aynı ödemede sınırlı sayıda kart denemesine izin verilir. Yine de entegrasyonunuzu “tekrar = yeni ödeme” üzerine kurun. Kart sahibi 3D Secure adımını yarıda bırakır ya da 3D Secure başarısız olursa, o ödeme failed ya da expired olur ve paymentRef yeniden kullanılamaz. Tekrar denemek için yeni bir ödeme isteği oluşturursunuz: POST /v1/payments.