Ödeme Detay Listesi - Tek Bir Ana Ödeme Kaydının Transaction' ları

Servis Adresi

Ne İçin Kullanılır ?

Bu servis, Tek bir Ana ödeme kaydına ait Transaction' ların listelenmesini sağlar. Hem Ana ödeme kaydı, hem de Transaction kayıt bilgileri döner. Örneğin 15.05.2018 tarihinde başarılı bir Ödeme yapılmışsa ve de 21.05.2018 tarihinde başarılı bir kısmi İade gerçekleştirilmişse, Bu servise ilgili ödemenin kodunu verirseniz, ana ödeme kaydı bilgilerini ve de o ana ödemeye ait 2 adet transaction kayıtlarını (ödeme kaydı ve iade kaydı) listeleyebilirsiniz.

İ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.

PaymentDealerRequest

Parametre Açıklama
PaymentId (string) Ödeme kaydının Moka sistemindeki Id’si. Bayi ödeme listesi servisiyle size dönen listede görünen Unique bir ID’ dir. Ödemenin detayını sorgulayabilmek için ya bu ID’ yi ya da kendi Unique ID’ nizi (OtherTrxCode) vermelisiniz.
OtherTrxCode (string) Ödeme gönderirken, bu işleme ait kendi sisteminizin Unique İşlem Numarasını Mokaya göndermişseniz, bu alanı kullanarak ödeme detay sorgusu yapabilirsiniz. Ödemenin detayını sorgulayabilmek için ya bu alanı ya da DealerPaymentId alanını vermelisiniz.

Örnek İstek (JSON)


{
	"PaymentDealerAuthentication": {
		"DealerCode": "MFM",
		"Username": " ZXCVBNVBN",
		"Password": "abcdef",
		"CheckKey": "91e9aa3978e33a8e5867f6ed8fbe2a8a6117db0a2d1f17164801348e68306c07"
	},
	"PaymentDealerRequest": {
		"PaymentId": "1170",
		"OtherTrxCode": ""
	}
}

Başarılı İstek Sonucu

PaymentDetail Objesi ile dönen Ödeme ana kaydı durumları şu şekildedir;

PaymentStatus TrxStatus Açıklama
0 - Beklemede 0 - Beklemede Ödeme onayı bekliyor
1 - Ön Provizyon 1 - Başarılı Ön Provizyon başarılı
1 - Ön Provizyon 2 - Başarısız Ön Provizyon başarısız
2 - Ödeme 1 - Başarılı Ödeme başarılı
2 - Ödeme 2 - Başarısız Ödeme başarısız
3 - İptal 1 - Başarılı İptal başarılı
4 - Tam İade 1 - Başarılı İade başarılı

PaymentTrxDetailList Array’ i içinde dönen Ödeme detay kaydı durumları şu şekildedir;

TrxType TrxStatus Açıklama
1 1 Ön Provizyon başarılı
1 2 Ön Provizyon başarısız
2 1 Ödeme başarılı
2 2 Ödeme başarısız
3 1 İptal başarılı
3 2 İptal başarısız
4 1 İade başarılı
4 2 İade başarısız
PaymentReason 0 : Ödeme işlemi değil (iptal veya iade işlemi)
1 : Ödeme işlemi
VoidRefundReason İptal iadenin neden yapıldığını gösterir alandır.
0 : İptal iade işlemi değil (Ödeme işlemi olduğu için, bu kod anlamsız)
2 : Dış Manuel iptal / iade işlemi (Pos.moka.com veya api üzerinden iptal)
3 : İç Manuel iptal / iade işlemi (Moka yönetim panelinden yapılan işlem)

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


{
	"Data": {
		"IsSuccessful": true,
		"ResultCode": "00",
		"ResultMessage": "",
		"PaymentDetail": {
			"DealerPaymentId": 27405,
			"OtherTrxCode": "",
			"CardHolderFullName": "Ahmet Yılmaz",
			"CardNumberFirstSix": "554960",
			"CardNumberLastFour": "5523",
			"PaymentDate": "2017-02-28T14:42:17.26",
			"Amount": 20,
			"CurrencyCode": "TL",
			"InstallmentNumber": 0,
			"DealerCommissionAmount": 0.5,
			"IsThreeD": false,
			"Description": "Ödeme gönderirken bayinin verdiği açıklama alanı",
			"PaymentStatus": 3,
			"TrxStatus": 1
		},
		"ListItemCount": 2,
		"PaymentTrxDetailList": [
			{
				"DealerPaymentTrxId": 2971,
				"DealerPaymentId": 27405,
				"TrxCode": "26ba712e-6381-4291-8c59-702c13b30d4d",
				"TrxDate": "2017-02-28T14:42:17.837",
				"TrxType": 1,
				"TrxStatus": 1,
				"PaymentReason": 1,
				"VoidRefundReason": 0,
				"VirtualPosOrderId": "ORDER-17060RYOG07011948",
				"ResultMessage": ""
			},
			{
				"DealerPaymentTrxId": 2982,
				"DealerPaymentId": 27405,
				"TrxCode": "32c19f0f-4853-4a0d-bf7-fbc687a826a7",
				"TrxDate": "2017-02-28T14:44:32.26",
				"TrxType": 2,
				"TrxStatus": 1,
				"PaymentReason": 0,
				"VoidRefundReason": 3,
				"VirtualPosOrderId": " ORDER-17060RYOG07011948",
				"ResultMessage": ""
			}
		]
	},
	"ResultCode": "Success",
	"ResultMessage": "",
	"Exception": null
}

Başarısız İstek Sonucu

ResultCodeAçıklama
PaymentDealer.CheckPaymentDealerAuthentication.InvalidRequestHatalı hash bilgisi
PaymentDealer.CheckPaymentDealerAuthentication.InvalidAccountBöyle bir bayi bulunamadı
PaymentDealer.GetDealerPaymentTrxDetailList.PaymentIdErrorPayment Id boş, 0 veya yanlış formatta gönderilirse.
EXBeklenmeyen bir hata oluştu

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


{
	"Data": null,
	"ResultCode": "PaymentDealer.CheckPaymentDealerAuthentication.InvalidAccount ",
	"ResultMessage": "",
	"Exception": null
}