Ödeme İsteği Gönderme İşlemi

Servis Adresi

İstek Parametreleri

PaymentDealerAuthentication

Parametre Açıklama
DealerCode(string) Moka sistemi tarafından verilen bayi kodu
Username (string) Moka sistemi tarafından verilen Api kullanıcı adı
Password (string) Moka sistemi tarafından verilen Api şifresi
CheckKey (string) Kontrol anahtarı (DealerCode + "MK" + Username + "PD" + Password) String olarak birleştirilen bu bilgilerin SHA-256 hash algoritmasından geçirilmesiyle oluşturulur.
Buraya tıklayarak deneme ekranına gidebilirsiniz.

PaymentUserPosRequest

Parametre Açıklama
OtherTrxCode (string) Mütabakat sağlamak için kendi Unique Transaction (İşlem) Kodunuzu bu alanda göndermelisiniz. Not : Bayi ödeme detay listesi alırken bu kodunuzu kullanarak Ödeme durumunu öğrenebilirsiniz.
DealerCustomerTypeId (integer) Moka tarafından bayinize özel oluşturulmuş Ödeme İsteği gönderme tanım kaydının ID si. Bu tanımdaki kurallara göre ödeme isteğini göndermelisiniz. Aksi taktirde hata mesajları alacaksınız.
FullName (string) Ödeme link’ inin gönderileceği müşterinizin adı soyadı
GsmNumber (string) Ödeme link’ inin gönderileceği telefon numarası
Email (string) Ödeme link’ inin gönderileceği email adresi
IsPreAuth (tinyint) 0 : Hayır - Doğrudan Çekim İşlemi
1 : Evet - Ön Provizyon Alma İşlemi (Bir süre sonra DoCapture servisi ile ödemeye dönüştürülmeli)
IsPoolPayment (tinyint) 0 : Hayır
1 : Evet - Para kredi kartından çekilecek fakat havuzda bekletilecek. Bayi, müşteri hizmet veya ürünü teslim aldıktan sonra ödemeyi onaylayacak ve bu işlemle ilgili ödeme onaydan sonra bayinin ekstresine yansıyacak. Havuz sisteminde bir ödeme göndermek için bu alanı 1 yapınız.
IsTokenized (tinyint) 0 : Kart saklanmayacak
1 : Kart mutlaka saklanacak
2 : Kartının saklanıp saklanmayacağına ödeme yapan müşteri karar verecek
DealerCustomerId (integer) Daha önceden bu müşteri Moka sistemine kaydedilmişse, Moka sistemindeki bu müşterinin Unique ID si.
CustomerCode (string) Bu müşterinin, sizin sisteminizdeki Unique ID si. Bu kod Mokaya daha önceden kaydedilmişse, bu kod ile de ödeme isteği gönderebilirsiniz ve kart saklanacaksa, bu müşteri altında saklanır. Bu müşteri ilk kez kaydedilecekse, bu kod ile kaydedilir
FirstName (string) Müşteri Moka sistemine ilk kez kaydedilecekse, müşterinin adı girilir.
LastName (string) Müşteri Moka sistemine ilk kez kaydedilecekse, müşterinin soyadı girilir. (opsiyonel)
Gender (tinyint) Müşteri Moka sistemine ilk kez kaydedilecekse, müşterinin cinsiyeti girilir. (opsiyonel) 1: erkek 2: kadın
BirthDate (string) Müşteri Moka sistemine ilk kez kaydedilecekse, müşterinin doğum tarihi girilir. (opsiyonel)
CustomerGsmNumber (string) Müşteri Moka sistemine ilk kez kaydedilecekse, müşterinin cep telefonu girilir. (opsiyonel)
CustomerEmail (string) Müşteri Moka sistemine ilk kez kaydedilecekse, müşterinin email adresi girilir. (opsiyonel)
Address (string) Müşteri Moka sistemine ilk kez kaydedilecekse, müşterinin ikamet adresi girilir. (opsiyonel)
Amount (decimal) Ödeme tutarı (Kuruş kısmı nokta ile yazılır. Örn: 27.50)
Currency (string) Para birimi. Opsiyonel alandır, hiç gönderilmezse veya boş gönderilirse, default’ u TL dir, Diğer değerler : USD, EUR, GBP
InstallmentNumber (integer) Taksit Sayısı. Opsiyonel alandır, hiç gönderilmezse, boş gönderilirse, 0 veya 1 gönderilirse Peşin satış demektir, Taksit için 2 ile 12 arasında bir değer gönderilmelidir.
SetInstallmentBy (tinyint) Taksitli ödemelerde, taksit sayısını kimin seçeceğini belirler.
0 : Taksit sayısını müşteri seçecek
1 : Taksit sayısını ödemeyi gönderen bayi seçip yolladı
CommissionByDealer (tinyint) Komisyon bayi tarafından mı ödenecek, yoksa müşteriye mi yüklenecek ?
0 : Hem peşin hem de taksitli ödemelerin hepsinde komisyonu Müşteri ödeyecek. Bayi komisyona karışmaz.
1 : Sadece peşin ödemede komisyonu bayi öder, taksitlerde komisyonu müşteri öder.
2 : Hem peşin hem de 2 taksitte, komisyonu bayi öder, daha yüksek taksitlerde komisyon müşteriden alınır.
3 : Hem peşin hem de 2 taksitte, komisyonu bayi öder, daha yüksek taksitlerde komisyon müşteriden alınır.
.
.
12 : Hem peşin hem de bütün taksitlerde, komisyonu bayi öder.
IsCommissionDiffByDealer (tinyint) Üstte yer alan, kaç takside kadar komisyonu bayinin ödeyeceği bilgisine göre, daha fazla taksitlerde, komisyonun tamamı ya da sadece aradaki fark müşteriye yansıtılabilir.
0 : Hayır (Seçilen Taksit Komisyonunun Tamamını Müşteriye Yansıt)
1 : Evet (Seçilen Taksit Komisyonu – (eksi) Bayinin Karşılamayı Kabul Ettiği Taksit Komisyonu kadar komisyonu (Fark Komisyonu) Müşteriye Yansıt)
IsThreeD (tinyint) Ödeme işlemi 3D kullanılarak mı yapılacak ?
0 : 3D zorunlu değil (müşteri isterse non-3D ödeme yapar, isterse de 3D seçenegini işaretleyebilir)
1 : 3D kullanılarak ödeme yapılmasi zorunlu
Description (string)(opsiyonel) Açıklama alanıdır. Ödemeye ilişkin bir açıklama yazmak istenirse bu alana yazılabilir.(200 karaktere kadar yazılabilir.)
BuyerInformation (Array)(opsiyonel) Bayimizden Ürün/Hizmet satın alan müşterisi ile ilgili alanlardır. Bu alanların gönderilmesi zorunlu olmamasına karşın, Moka ile paylaşılması, ileride ödemeyle ilgili oluşabilecek sorunlara karşı, hem bayimizin hem de Moka' nın menfaatinedir.

BuyerFullName (string) Opsiyonel alandır.Alıcının adı ve soyadıdır.
BuyerEmail (string) Opsiyonel alandır.Alıcının eposta adresidir.
BuyerGsmNumber (string) Opsiyonel alandır.Alıcının cep telefonu numarasıdır.
BuyerAddress (string) Opsiyonel alandır.Alıcının adresidir.

Örnek İstek (JSON)


{
	"DealerAuthentication": {
		"DealerCode": "123456",
		"Username": "ZXCVBNVBN",
		"Password": "abcdef",
		"CheckKey": "ff4a6ee22aeafe87f7930f84b5ce2ad9655bfc6b5e430644a88c5b75a09fdee1"
	},	
	"PaymentUserPosRequest":{
		"OtherTrxCode":"123456",
		"DealerCustomerTypeId":"1",
		"FullName":"Ahmet Yılmaz",
		"GsmNumber":"5352345678",
		"Email":"ahmet@hotmail.com",
		"IsPreAuth":"0",
		"IsPoolPayment":"0",
		"IsTokenized":"2",
		"DealerCustomerId":"",
		"CustomerCode":"ABC123",
		"FirstName":"Ahmet",
		"LastName":"Yılmaz",
		"Gender":"1",
		"BirthDate":"",
		"CustomerGsmNumber":"5352345678",
		"CustomerEmail":"ahmet@hotmail.com",
		"Address":"İstanbul",
		"Amount":"4.45",
		"Currency":"TL",
		"InstallmentNumber":"1",
		"SetInstallmentBy":"1",
		"CommissionByDealer":"12",
		"IsCommissionDiffByDealer":"0",
		"IsThreeD":"1",
		"Description":"abonelik",
		"BuyerInformation":{
			"BuyerFullName":"Ahmet Yılmaz",
			"BuyerGsmNumber":"5352345678",
			"BuyerEmail":"ahmet@hotmail.com",
			"BuyerAddress":"Tasdelen"}
	}
	
}

Başarılı İstek Sonucu

Başarılı Sonuç Örneği


{
	"Data": {
		"UserPosPaymentId":2036,
		"DealerCustomerId":332
	},
	"ResultCode": "Success",
	"ResultMessage": "",
	"Exception": null
}

Başarısız İstek Sonucu

ResultCodeAçıklama
PaymentUserPos.DealerAuthentication.InvalidRequestHatalı hash bilgisi
PaymentUserPos.DealerAuthentication.InvalidAccountBöyle bir bayi bulunamadı
PaymentUserPos.CreateUserPosPayment.ChannelPermissionNotAvailableBayinin, ödeme isteği gönderme yetkisi yok
PaymentUserPos.CreateUserPosPayment.IpAddressNotAllowedBayinin erişebileceği IP ler kısıtlanmış
PaymentUserPos.CreateUserPosPayment.EmailOrGsmNumberRequiredÖdeme linki gönderilecek email veya telefon verilmemiş
PaymentUserPos.CreateUserPosPayment.GsmRequiredÖdeme linki gönderilecek telefon verilmemiş
PaymentUserPos.CreateUserPosPayment.EmailRequiredÖdeme linki gönderilecek email verilmemiş
PaymentUserPos.CreateUserPosPayment.InvalidGsmNumberÖdeme linki gönderilecek telefon numarası yanlış
PaymentUserPos.CreateUserPosPayment.InvalidEmailFormatÖdeme linki gönderilecek email formatı yanlış
PaymentUserPos.CreateUserPosPayment.InvalidCustomerGsmNumberKart saklama hizmeti için, bayi müşteri bilgisi olan telefon bilgisi yanlış
PaymentUserPos.CreateUserPosPayment.InvalidCustomerEmailFormatKart saklama hizmeti için, bayi müşteri bilgisi olan email bilgisi yanlış
PaymentUserPos.CreateUserPosPayment.InvalidCurrencyCodePara birimi yanlış (TL, USD, EUR veya GBP olmalı)
PaymentUserPos.CreateUserPosPayment.InstallmentNotAvailableForForeignCurrencyTransactionYabancı para için taksit yapılamaz
PaymentUserPos.CreateUserPosPayment.DealerCustomerTypeNotFoundBöyle bir ödeme isteği gönderme tanımı bulunamadı
PaymentUserPos.CreateUserPosPayment.DealerCustomerTypeMismatchForDealerBu ödeme isteği gönderme tanımı, bu bayiye ait değil
PaymentUserPos.CreateUserPosPayment.ForeignCurrencyUnavailableBayinin, yabancı para izni yok
PaymentUserPos.CreateUserPosPayment.InvalidPaymentPermissionÖn otorizasyon veya doğrudan ödeme göndermeye ilişkin hata mesajı
PaymentUserPos.CreateUserPosPayment.InvalidPoolPermissionHavuzlu ödeme göndermeye ilişkin hata mesajı
PaymentUserPos.CreateUserPosPayment.InvalidTokenizationPermissionValueKart saklamaya ilişkin hata mesajı
PaymentUserPos.CreateUserPosPayment.InvalidTokenizationPermissionBayinin kart saklama izni yok
PaymentUserPos.CreateUserPosPayment.InvalidCommissionByDealerValueKaç takside kadar komisyon bayiden, değeri, yanlış verilmiş
PaymentUserPos.CreateUserPosPayment.InvalidCommissionDiffByDealerValueDaha fazla taksitlerde komisyon farkı kimden, değeri, yanlış verilmiş
PaymentUserPos.CreateUserPosPayment.SetInstallmentByAndInstallmentNumberInconsistentTaksit seçimini kim yapacak, bayi mi, müşteri mi ? Tanım ile verilen değer uyumlu olmalı
PaymentUserPos.CreateUserPosPayment.InvalidInstallmentNumberTaksit sayısı yanlış girilmiş
PaymentUserPos.CreateUserPosPayment.SetInstallmentByInconsistentTaksit seçimini kim yapacak, bayi mi, müşteri mi ? Tanım ile verilen değer uyumlu olmalı
PaymentUserPos.CreateUserPosPayment.ThreeDRequired3D zorunlu olmalı
PaymentUserPos.CreateUserPosPayment.InvalidBirthDateFormatBayi müşterisinin bilgilerinden, doğum tarihi yanlış girilmiş
PaymentUserPos.CreateUserPosPayment.DealerCustomerNotCreatedYeni bir bayi müşterisi oluşturulmaya çalışıldı ancak hata alındı
PaymentUserPos.CreateUserPosPayment.DealerCustomerNotFoundMevcut bir bayi müşterisi gönderildi (CustomerCode ile), ancak bu müşteri bulunamadı
PaymentUserPos.CreateUserPosPayment.DealerCustomerInfoIsMissingBayi müşterisi oluşturmak için en azından CustomerCode ve FirstName verilmeli
PaymentUserPos.CreateUserPosPayment.DealerCustomerIdAndCustomerCodeDontMatchForDealerHem Moka sistemindeki DealerCustomerId verilmiş hem de bayinin kendi Müşteri kodu verilmiş. Ama Moka sisteminde bu müşteri verileri uyumsuz
PaymentUserPos.CreateUserPosPayment.InvalidBuyerGsmNumberHizmet alan kişiye ait alanlarda sorun var
PaymentUserPos.CreateUserPosPayment.InvalidBuyerEmailFormatHizmet alan kişiye ait alanlarda sorun var
PaymentUserPos.CreateUserPosPayment.DailyDealerLimitExceededBayinin günlük ödeme limiti aşıldı
PaymentUserPos.CreateUserPosPayment.MonthlyDealerLimitExceededBayinin aylık ödeme limiti aşıldı
EX Beklenmeyen bir hata oluştu

Başarısız Sonuç Örneği


{
	"Data": null,
	"ResultCode": "PaymentUserPos.CreateUserPosPayment.GsmRequired",
	"ResultMessage": "",
	"Exception": null
}