Ödeme Güncelleme
Servis Adresi
/PaymentDealer/UpdateDealerPayment
İ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 | ||||||||
---|---|---|---|---|---|---|---|---|---|
DealerPaymentId (integer) (opsiyonel) | Çekim denemesi sonucu oluşan Ödeme ID'dir. | ||||||||
OtherTrxCode (string) (opsiyonel) | Mütabakat sağlamak için kendi Unique Transaction (İşlem) Kodunuzu bu alanda gönderebilirsiniz. Not : Bayi ödeme detay listesi alırken bu kodunuzu kullanarak Ödeme durumunu öğrenebilirsiniz. | ||||||||
VirtualPosOrderId (string) | Ödeme işlemi sonucunda dönen işlem numarası bilgisidir. 3D ödemelerde trxCode ismiyle dönülen numaradır. Key: trxCode     Value : ORDER-17131QQFG04026575 |
||||||||
Software (string) | Moka ödeme sistemiyle entegre çalışan, bu servisi çağırdığınız E-ticaret paketinin veya yazılımınızın ismi. (Max 30 karakter) | ||||||||
Description (string) | 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.
|
Örnek İstek (JSON)
{
"PaymentDealerAuthentication":{
"DealerCode":"xxx",
"Username":"xxx",
"Password":"xxx",
"CheckKey":"28ba1f316e661ee7a0477a13aa30613da548c94a8098829af9255b04d7e916e3"
},
"PaymentDealerRequest":{
"DealerPaymentId":"64227",
"Software":"Possimulation",
"Description":"",
"BuyerInformation":{
"BuyerFullName":"",
"BuyerGsmNumber":"",
"BuyerEmail":"",
"BuyerAddress":"Tasdelen / Çekmeköy"
}
}
}
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 bankadan 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 sanal pos üzerinde neden
başarısız olduğu görülebilir.
Bankadan başarılı işlem dönmesi durumunda aynı nesne içindeki VirtualPosOrderId alanından gelen kod saklanmalıdır. İptal, iade veya havuz ödeme onayı işlemleri, bu kod
kullanılarak gerçekleştirilecektir.
Başarılı Sonuç Örneği
{
"Data":{
"DealerPaymentId":64227,
"OtherTrxCode":"20201216153336",
"VirtualPosOrderId":"Test-b0cbed8c-4c59-4c2c-a8d3-01b8edddf8da"
},
"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.UpdateDealerPayment.InvalidRequest | CheckKey hatalı ya da nesne hatalı ya da JSON bozuk olabilir. |
PaymentDealer.CheckPaymentDealerAuthentication.InvalidRequest | Böyle bir bayi bulunamadı, Bayi kodu, bayi kullanıcı adı ve/veya şifresi yanlış girilmiş. |
PaymentDealer.UpdateDealerPayment.ChannelPermissionNotAvailable | Bayinin, ödeme isteği gönderme yetkisi yok. |
PaymentDealer.UpdateDealerPayment.IpAddressNotAllowed | Bayinin erişebileceği IP ler kısıtlanmış. |
PaymentDealer.UpdateDealerPayment.MustNeedDealerPaymentIdOrOtherTrxCodeOrVirtualPosOrderId | Bayi için DealerPaymentId ya da OtherTrxCode ya da VirtualPosOrderId tanımlanmalı. |
PaymentDealer.UpdateDealerPayment.CannotFoundPayment | Böyle bir ödeme bulunamadı. |
PaymentDealer.UpdateDealerPayment.DealerCommissionRateNotFound | Bayi için belirlenmiş bayi komisyon oranı bulunamadı. |
PaymentDealer.UpdateDealerPayment.DealerGroupCommissionRateNotFound | Bayi için belirlenmiş bayi grup komisyon oranı bulunamadı. |
PaymentDealer.Fields.InvalidSoftwareLength | Geçersiz yazılım ismi uzunluğu |
PaymentDealer.Fields.InvalidDescriptionLength | Geçersiz açıklama uzunluğu |
PaymentDealer.Fields.InvalidBuyerFullNameLength | Geçersiz FullName uzunluğu |
PaymentDealer.Fields.InvalidBuyerGsmNumberLength | Geçersiz numara uzunluğu |
PaymentDealer.Fields.InvalidBuyerAddressLength | Geçersiz adres uzunluğu |
EX | Beklenmeyen bir hata oluştu |
Başarısız Sonuç Örneği
{
"Data":null,
"ResultCode":"PaymentDealer.UpdateDealerPayment.DealerGroupCommissionRateNotFound ",
"ResultMessage":"",
"Exception":null
}
Açıklama
Bu servis, ekstre oluşmadan ve banka gün sonu almadan Software ve Description alanlarını güncelleyebilir. Eğer komisyon oranları değişmişse en güncel girilmiş komisyon oranları alınarak güncelleme yapılır. Eğer gelir payı oranı değişmişse yeni oranlar alınarak güncelleme yapılır.