Ödeme Listesi
Ana Ödeme Kaydı İşlem Tarihine Göre Liste
Servis Adresi
/PaymentDealer/GetPaymentList
Ne İçin Kullanılır?
Bu servis, ana ödeme kaydının ilk işlem tarihine göre listelenmesini sağlar. Sadece ana ödeme kaydı bilgilerini döner. Örneğin 15.01.2021 tarihinde başarılı bir Ödeme yapılmışsa ve de 21.01.2021 tarihinde başarılı bir kısmi İade gerçekleştirilmişse, Bu servise 15.01.2021 tarihini verirseniz, ana ödeme kaydını 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 |
---|---|
PaymentStartDate | Ödemelerin başladığı tarih ve saat (yyyy-MM-dd HH:mm) |
PaymentEndDate | Ödemelerin bittiği tarih ve saat (yyyy-MM-dd HH:mm) |
PaymentStatus (integer) | Ödeme kaydının son durumudur. 0 : Ödeme Talebi 1 : Ön Provizyon 2 : Ödeme 3 : İptal 4 : Tam İade Opsiyonel alandır, boş gönderilirse veya hiç gönderilmezse tüm PaymetStatus’ler listelenir. |
TrxStatus (integer) | Yapılan işlemin sonucunu gösterir. 0 : Bekleyen işlem 1 : Başarılı işlem 2 : Başarısız işlem Opsiyonel alandır, boş gönderilirse veya hiç gönderilmezse tüm TrxStatus’ler listelenir. |
Örnek İstek (JSON)
{
"PaymentDealerAuthentication":{
"DealerCode":"xxx",
"Username":" xxx ",
"Password":" xxx ",
"CheckKey":"91e9aa3978e33a8e5867f6ed8fbe2a8a6117db0a2d1f17164801348e68306c07"
},
"PaymentDealerRequest":{
"PaymentStartDate":"2016-09-06 14:00",
"PaymentEndDate":"2016-09-06 15:00",
"PaymentStatus":2,
"TrxStatus":1
}
}
Başarılı İstek Sonucu
Gönderilen istek verileri Moka’ da başarılı bir şekilde işlenmişse, geri dönüş nesnesinin "ResultCode" alanında "Success" bilgisi yazar. "Data" alanında ise Moka’ dan dönen işlem sonucu bulunur. "Data" içinde yer alan "IsSuccessful" (true/false) alanı kontrol edilerek işlemin durumu kontrol edilir. Bu alanda false dönmesi durumunda aynı nesne içindeki ResultCode ve ResultMessage alanları kontrol edilerek işlemin neden başarısız olduğu görülebilir. "IsSuccessful": true olması durumunda ise "ListItemCount" alanında ödeme sayısı yazar ve "PaymentList" nesnesi içinde ödeme bilgileri döner.
PaymentList Array’ i içinde 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ı |
Ödemenin tamamı iade edilmişse PaymentStatus = 4 durumuna geçer. Kısmi iade yapılmışsa, ödemenin durumu PaymentStatus = 2 olarak kalır.
Ödeme listesi cevabında, "Amount" alanında ödeme tutarı yazar, "RefAmount" alanında ise bu ödemeye ilişkin iadelerin toplam tutarı yazar.
Başarılı Sonuç Örneği
{
"Data": {
"IsSuccessful": true,
"ResultCode": "00",
"ResultMessage": "",
"ListItemCount": 1,
"PaymentList": [
{
"DealerPaymentId": 1422,
"OtherTrxCode": "123456",
"CardHolderFullName": "AHMET YILMAZ",
"CardNumberFirstSix": "554960",
"CardNumberLastFour": "5523",
"PaymentDate": "2016-09-06T14:29:36.68",
"Amount": 2.62,
"CurrencyCode": "TL",
"InstallmentNumber": 2,
"DealerCommissionAmount": 0.12,
"IsThreeD": true,
"PaymentStatus": 3,
"TrxStatus": 1
}
]
},
"ResultCode": "Success",
"ResultMessage": "",
"Exception": null
}
Başarısız İstek Sonucu
Gönderilen istek verileri Moka akışları içerisinde işlenemediyse, geri dönüş nesnesinin "ResultCode" alanında alttaki tablodaki hata kodlarından birisi bulunur.
Beklenmeyen yazılımsal bir hata oluştuğunda ise, "ResultCode" alanında EX yazar ve "ResultMessage" alanında alınan hata mesajı (Exception) yer alır.
Her iki durumda da, "Data" nesnesi null olarak gelir.
ResultCode | Açıklama |
---|---|
PaymentDealer.CheckPaymentDealerAuthentication.InvalidRequest | CheckKey hatalı ya da nesne hatalı ya da JSON bozuk olabilir. |
PaymentDealer.CheckPaymentDealerAuthentication.InvalidAccount | Böyle bir bayi bulunamadı. |
PaymentDealer.GetPaymentList.InvalidDateTimeFormat | Tarih formatı "yyyy-MM-dd HH:mm" şeklinde olmalıdır. |
PaymentDealer.GetPaymentList.ListItemCountLimitExceeded | 500’den fazla kayıt içeren istek başarısız olarak sonuçlandırılır. |
PaymentDealer.GetPaymentList.InvalidPaymentStatus | Geçersiz PaymentStatus değeri girildi. |
PaymentDealer.GetPaymentList.InvalidTrxStatus | Geçersiz TrxStatus değeri girildi. |
EX | Beklenmeyen bir hata oluştu |
Başarısız Sonuç Örneği
{
"Data": null,
"ResultCode": "PaymentDealer.CheckPaymentDealerAuthentication.InvalidAccount ",
"ResultMessage": "",
"Exception": null
}