Masterpass ile Ödeme Alma
Bu entegrasyon yöntemi, üye işyerinin Masterpass client entegrasyonunu kendi tarafında gerçekleştirip, sunucu tarafında Craftgate üzerinden Masterpass ödemelerinin alınması için kullanılır. Bu sayede üye işyeri Craftgate'in sunmuş olduğu bir çok katma değerleri servislerden faydalanabilir.
Masterpass Token Oluşturulması
Kullanıcı kart ve taksit seçimini tamamladıktan sonra bu servis aracılığıyla Masterpass ödeme işleminde kullanılacak token değeri alınır. Bu token, Masterpass client SDK'sı içindeki MFS.purchase
methodu içindeki token
alanında kullanılır.
İstek Parametreleri
Masterpass token oluştururken gönderilmesi beklenen parametreler aşağıdaki tablo ve alt başlıklar altında listelenmiştir.
Alıcıya ait telefon numarası
Son kullanıcının Masterpass hesabı ilişkilendirmesinde kullanılan değer
Seçilen karta ait ilk 6 veya 8 hane. Masterpass MFS.listCards
methodu yanıtında, seçilen karta ait obje içerisindeki Value1
alanından erişilebilir
İşlem 3D secure gerçekleştirilmek isteniyorsa true
gönderilmelidir.
İstekle beraber gönderilip, cevapla birlikte alınabilecek, "bumerang" değer. Farklı istekleri birbirleriyle ilişkilendirmek için kullanılabilir. Genellikle üye işyerinin ödemeye ilişkin sipariş numarası kullanılır. Sipariş numarası ile kullanmanız sonradan işlemleri incelemenize yardımcı olacaktır.
Veri içinde güvenlik sorunu yaratabilecek özel karakterler kullanılmamalıdır. Veri +
veya -
karakteri ile başlayamaz, ancak içerisinde kullanılabilir.
Genellikle üye işyeri tarafındaki, ödemeye ilişkin sipariş numarası veya sepet numarası olarak kullanılır. Daha sonradan sorgulama servislerinde bu id ile sorgulama yapabilirsiniz.
Veri içinde güvenlik sorunu yaratabilecek özel karakterler kullanılmamalıdır. Veri +
veya -
karakteri ile başlayamaz, ancak içerisinde kullanılabilir.
Toplam ödeme tutarı. Sepetteki ürün/hizmet tutarları toplamının bu tutara eşit olması gerekmektedir
Komisyon ve indirim gibi farklar dahil edilerek hesaplanan, karttan çekilecek nihai tutar. Tamamı ya da bir kısmı cüzdandan tahsil edilen ödemelerde cüzdandan tahsil edilecek tutar da bu tutara dahildir. İşlemde vade farkı var ise vade farkı eklenmiş tutar bu parametreye girilmelidir.
Ödemenin tahsil edileceği taksit sayısı. Tek çekim için 1
olarak gönderilebilir.
Ödemenin ilişkilendirildiği alıcı ID'si. Üye işyerinin kendi sistemlerindeki ID değerini değil, Craftgate sistemlerindeki ID değerini ifade eder
bkz: Para Birimleri Ödemenin tahsil edileceği para birimi
Genellikle üye işyeri tarafındaki, ödemenin alındığı kanal veya ödemeye özel bir bilgi tutmak için kullanılır. Daha sonradan sorgulama servislerini kullanarak bu değer ile sorgulama yapabilirsiniz.
Ödeme alınırken bankaya iletilecek orderId parametresi. Opsiyonel olduğu için gönderilmemesi ve orderId değerinin Craftgate tarafından üretilmesi önerilir.
Ödeme yapan alıcının IP adresi.
Ödemeyi geçirmek istediğiniz pos'un alias değeri. Ödemenin geçeceği pos'a kendiniz karar verdiyseniz bu parametre ile ilgili posdan ödeme alabilirsiniz.
Ödemeye ilişkin kırılım bilgileri. En az bir kırılım gönderilmesi ve gönderilen kırılımların tutarlarının toplamının price
alanına eşit olması zorunludur
Ödemeye ait gönderilmek istenen ek parametreler. bkz: Ödeme Ek Parametreleri
Ödeme esnasında kullanılmak istenen ödül bilgileri. Detaylı bilgilere Ödül ve Puan Kullanımı adresinden ulaşabilirsiniz.
Dönüş Parametreleri
Token oluşturma işleminin sonucunda dönen parametreler API dokümantasyonu giriş sayfasındaki Dönüş Formatları bölümünde belirtilen kurallara tabidir. Sistemsel ya da kurgusal bir hata bulunmadığı durumda data
parametresinde dönen objenin alt parametreleri aşağıdaki gibidir:
Masterpass ödeme işleminin tamamlanmasında kullanılacak değer
Masterpass client SDK'sı içerisinde kullanılacak token değeri
MFS.purchase
methodunda kullanılacak orderNo değeri. Eğer bankOrderId parametresi iletilirse, iletilen değer döner. bankOrderId parametresi iletilmezse otomatik olarak oluşturulan bir orderNo değeri döner.
Non3DS Masterpass Ödemesi
Eğer MFS.purchase
methodu çağrısı sonrası yanıt içerisinde yer alan responseCode
değeri 5001
ise, bu durum Masterpass ödeme işleminin OTP yöntemi ile doğrulanması gerektiğini gösterir. Client tarafında OTP doğrulamasını Masterpass entegrasyonunuz ile tamamladıktan sonra, elde etmiş olduğunuz token değerini aşağıdaki servis aracılığıyla Craftgate'e ileterek ödeme işlemi tamamlanabilir.
İstek Parametreleri
Masterpass Non3DS ödeme tamamlanırken gönderilmesi beklenen parametreler aşağıdaki tablo ve alt başlıklar altında listelenmiştir.
İlgili işlem için token oluşturma yanıtında dönen değer.
Masterpass tarafından dönen, ödemeyi tamamlamak için kullanılacak olan token değeri
Dönüş Parametreleri
Non3DS ödeme tamamlama işleminin sonucunda dönen parametreler API dokümantasyonu giriş sayfasındaki Dönüş Formatları bölümünde belirtilen kurallara tabidir. Sistemsel ya da kurgusal bir hata bulunmadığı durumda data
parametresinde dönen objenin alt parametreleri aşağıdaki gibidir:
Ödemenin ID'si. Bu değer ödeme isteği için Craftgate tarafından belirlenen eşsiz değerdir. Veritabanınızda sipariş bilgileri ile eşleştirip saklamayı unutmayınız.
Ödemenin gerçekleştirildiği tarih
Ödemenin toplam sepet tutarı
Müşterinin ödediği toplam tahsilat tutarı. Tamamı ya da bir kısmı cüzdandan tahsil edilen ödemelerde cüzdandan tahsil edilecek tutar da bu tutara dahildir
Cüzdandan tahsil edilen tutar
Ödemeye ilişkin para birimi. bkz: Para Birimleri
Alıcı üyeyle ilişkilendirilmiş ödemelerde yer alan, ilgili üyenin ID'sini belirten değer
Ödemenin taksit sayısı
Üye işyeri tarafından ödeme isteği içerisinde gönderilen conversationId
değeri
Üye işyeri tarafından ödeme isteği içerisinde gönderilen externalId
değeri
bkz: Ödeme Tipleri
bkz: Ödeme Durumu
Üye işyeri tarafından ödeme isteği içerisinde gönderilen paymentChannel
değeri
Ödemenin 3D Secure ile gerçekleştirilip gerçekleştirilmediği
Son kullanıcıya yansıtılan vade farkı oranı
Son kullanıcıya yansıtılan vade farkı tutarı. paidPrice
ile price
arasındaki farka eşittir
Banka komisyon oranı
Banka komisyon tutarı
Ödeme esnasında kart saklanmak istenmiş ise kart saklanır ve bu alan dolu gelir. Başarılı ödeme sonrası kaydedilen kartın saklı kart kullanıcı anahtarını ifade eder. Üye işyeri tarafından müşteriyle ilişkilendirilerek saklanmalıdır
Ödeme esnasında kart saklanmak istenmiş ise kart saklanır ve bu alan dolu gelir. Başarılı ödeme sonrası kaydedilen kartın saklı kart anahtarını ifade eder. Üye işyeri tarafından müşteriyle ilişkilendirilerek saklanmalıdır
Ödemenin saklı kartla gerçekleştirilip gerçekleştirilmediğini belirtir
Kartın ilk 8 hanesini belirtir. Tamamı cüzdan ile ödenen ödemelerde boş gelir.
Kartın son 4 hanesini belirtir. Tamamı cüzdan ile ödenen ödemelerde boş gelir
Kart sahibinin adı/soyadı
Bankada kayıtlı olan kart sahibi adı/soyadı. Bazı durumlarda PF poslarında dönüş null olabilir
Ödemeye ilişkin banka tarafından verilen authCode değeri. Tamamı cüzdan ile ödenen ödemelerde boş gelir. Bazı durumlarda PF poslarında dönüş null olabilir
Ödemeye ilişkin banka tarafından verilen hostReference değeri. Tamamı cüzdan ile ödenen ödemelerde boş gelir
Ödemeye ilişkin banka tarafından verilen transId değeri. Tamamı cüzdan ile ödenen ödemelerde boş gelir. Bazı durumlarda PF poslarında dönüş null olabilir
Ödemeye ilişkin banka tarafından verilen orderId değeri
(bkz: Kart Tipleri) Kartın tipini ifade eder. Tamamı cüzdan ile ödenen ödemelerde boş gelir
Kartı sağlayan kart kuruluşuunu ifade eder. Tamamı cüzdan ile ödenen ödemelerde boş gelir
Ödemenin alındığı kartın ailesini belirtir. Tamamı cüzdan ile ödenen ödemelerde boş gelir
Üye işyeri tarafından ödeme isteği içerisinde gönderilen posAlias
değeri
Ödemenin alındığı pos bilgileri
Ödemede kullanılmış olan ödül bilgileri (bkz: Ödül ve Puan Kullanımı)
Şüpheli işlem olarak belirlenmesi durumunda şüpheli işlem kaydına ait id bilgisi (bkz: Şüpheli İşlem Yönetimi)
Şüpheli işlem olarak belirlenmesi durumunda şüpheli işlem kaydına ait aksiyon bilgisi (bkz: Şüpheli İşlem Aksiyonları)
Ödeme isteği yapılırken gönderilen kırılım bilgileri ile, ödemenin bu kırılımlar bazındaki fiyatlama ve para gönderimi bilgilerini içerir
Ödeme sonucuna ilişkim ek bilgiler.
3D Secure Masterpass Ödemesi
Eğer MFS.purchase
method çağrısı sonrası yanıt içerisinde yer alan responseCode
değeri 5010
ise, bu durum Masterpass ödeme işleminin 3D Secure yöntemi ile doğrulanması gerektiğini gösterir. Aşağıda 3D Secure ödeme akışı için ilgili adımlar listelenmiştir.
3D Secure Ödemenin Başlatılması
İstek Parametreleri
Masterpass 3DS ödeme başlatma için beklenen parametreler aşağıdaki tablo ve alt başlıklar altında listelenmiştir.
İlgili işlem için token oluşturma yanıtında dönen değer.
3D Secure doğrulama sonucunu, üye işyerine iletmek için kullanılacak adres
Dönüş Parametreleri
Masterpass 3DS ödeme başlatma işleminin sonucunda dönen parametreler API dokümantasyonu giriş sayfasındaki Dönüş Formatları bölümünde belirtilen kurallara tabidir. Sistemsel ya da kurgusal bir hata bulunmadığı durumda data
parametresinde dönen objenin alt parametreleri aşağıdaki gibidir:
Ödemenin id bilgisi. Mobil akışlarda 3DS complete aşamasında bu değer kullanılmalıdır.
Web akışı için, MFS.purchase
yöntemi yanıtında elde edilen url3D alanının sonuna eklenerek kullanıcının yönlendirileceği adres.
Mobil akış için, validateTransaction3D
çağrısı öncesi resultUrl3D alanına verilmesi gereken adres.
window.location = `${purchaseResult.url3D}&returnUrl=${returnUrl}`;
MasterPassInfo.setResultUrl3D(returnUrl);;
3D Secure Ödemenin Doğrulanması
Kullanıcı, kendisini doğrulaması sonrası 3D Secure Ödeme Başlatma isteğinde belirtilen callbackUrl
adresine yönlendirilecektir. Detaylar için bkz.3D Secure Doğrulama
Mobil akışlarda herhangi bir yönlendirme gerçekleşmemektedir, validateTransaction3D
callback yanıtı alındıktan 3DS complete servisini çağırabilirsiniz.
3D Secure Ödemenin Tamamlanması
Bir önceki adımda ilgili kontroller tamamlandıktan sonra, callbackUrl'e iletilen parametreler içerisinde yer alan paymentId değeri ile birlikte aşağıdaki servis aracılığıyla 3D Secure ödeme işlemi tamamlanabilir.
İstek Parametreleri
Masterpass 3DS ödeme tamamlama için beklenen parametreler aşağıdaki tablo ve alt başlıklar altında listelenmiştir.
3D Secure Ödemenin Doğrulanması adımında elde edilen paymentId değeri.
Dönüş Parametreleri
Masterpass 3D Secure ödeme tamamlama işleminin sonucunda dönen parametreler API dokümantasyonu giriş sayfasındaki Dönüş Formatları bölümünde belirtilen kurallara tabidir. Sistemsel ya da kurgusal bir hata bulunmadığı durumda data
parametresinde dönen objenin alt parametreleri aşağıdaki gibidir:
Ödemenin ID'si. Bu değer ödeme isteği için Craftgate tarafından belirlenen eşsiz değerdir. Veritabanınızda sipariş bilgileri ile eşleştirip saklamayı unutmayınız.
Ödemenin gerçekleştirildiği tarih
Ödemenin toplam sepet tutarı
Müşterinin ödediği toplam tahsilat tutarı. Tamamı ya da bir kısmı cüzdandan tahsil edilen ödemelerde cüzdandan tahsil edilecek tutar da bu tutara dahildir
Cüzdandan tahsil edilen tutar
Ödemeye ilişkin para birimi. bkz: Para Birimleri
Alıcı üyeyle ilişkilendirilmiş ödemelerde yer alan, ilgili üyenin ID'sini belirten değer
Ödemenin taksit sayısı
Üye işyeri tarafından ödeme isteği içerisinde gönderilen conversationId
değeri
Üye işyeri tarafından ödeme isteği içerisinde gönderilen externalId
değeri
bkz: Ödeme Tipleri
bkz: Ödeme Durumu
Üye işyeri tarafından ödeme isteği içerisinde gönderilen paymentChannel
değeri
Ödemenin 3D Secure ile gerçekleştirilip gerçekleştirilmediği
Son kullanıcıya yansıtılan vade farkı oranı
Son kullanıcıya yansıtılan vade farkı tutarı. paidPrice
ile price
arasındaki farka eşittir
Banka komisyon oranı
Banka komisyon tutarı
Ödeme esnasında kart saklanmak istenmiş ise kart saklanır ve bu alan dolu gelir. Başarılı ödeme sonrası kaydedilen kartın saklı kart kullanıcı anahtarını ifade eder. Üye işyeri tarafından müşteriyle ilişkilendirilerek saklanmalıdır
Ödeme esnasında kart saklanmak istenmiş ise kart saklanır ve bu alan dolu gelir. Başarılı ödeme sonrası kaydedilen kartın saklı kart anahtarını ifade eder. Üye işyeri tarafından müşteriyle ilişkilendirilerek saklanmalıdır
Ödemenin saklı kartla gerçekleştirilip gerçekleştirilmediğini belirtir
Kartın ilk 8 hanesini belirtir. Tamamı cüzdan ile ödenen ödemelerde boş gelir.
Kartın son 4 hanesini belirtir. Tamamı cüzdan ile ödenen ödemelerde boş gelir
Kart sahibinin adı/soyadı
Bankada kayıtlı olan kart sahibi adı/soyadı. Bazı durumlarda PF poslarında dönüş null olabilir
Ödemeye ilişkin banka tarafından verilen authCode değeri. Tamamı cüzdan ile ödenen ödemelerde boş gelir. Bazı durumlarda PF poslarında dönüş null olabilir
Ödemeye ilişkin banka tarafından verilen hostReference değeri. Tamamı cüzdan ile ödenen ödemelerde boş gelir
Ödemeye ilişkin banka tarafından verilen transId değeri. Tamamı cüzdan ile ödenen ödemelerde boş gelir. Bazı durumlarda PF poslarında dönüş null olabilir
Ödemeye ilişkin banka tarafından verilen orderId değeri
(bkz: Kart Tipleri) Kartın tipini ifade eder. Tamamı cüzdan ile ödenen ödemelerde boş gelir
Kartı sağlayan kart kuruluşuunu ifade eder. Tamamı cüzdan ile ödenen ödemelerde boş gelir
Ödemenin alındığı kartın ailesini belirtir. Tamamı cüzdan ile ödenen ödemelerde boş gelir
Üye işyeri tarafından ödeme isteği içerisinde gönderilen posAlias
değeri
Ödemenin alındığı pos bilgileri
Ödemede kullanılmış olan ödül bilgileri (bkz: Ödül ve Puan Kullanımı)
Şüpheli işlem olarak belirlenmesi durumunda şüpheli işlem kaydına ait id bilgisi (bkz: Şüpheli İşlem Yönetimi)
Şüpheli işlem olarak belirlenmesi durumunda şüpheli işlem kaydına ait aksiyon bilgisi (bkz: Şüpheli İşlem Aksiyonları)
Ödeme isteği yapılırken gönderilen kırılım bilgileri ile, ödemenin bu kırılımlar bazındaki fiyatlama ve para gönderimi bilgilerini içerir
Ödeme sonucuna ilişkim ek bilgiler.