Closed mettleshade closed 5 months ago
burda https://github.com/mewebstudio/pos/blob/e1733994ff052d7eeac0f2808bfabaacf22fe0c7/src/DataMapper/ResponseDataMapper/EstPosResponseDataMapper.php#L288 $rawResponseData icerigini paylasir misin, bendeki test ortam bilgileri nedense calismamaya basladi
@nuryagdym mailden ilettim.
tesekkurler, yeni yakinda yeni release'de bu hatayi ele alacagim. Iptal veya iade basarili oldugunda sorun yasamaman gerekiyor. Basarisiz durumda bu hatayla karsilasiyosundur.
aslında ilk iptalden alıyorum bu hatayı yani sipariş oluşur oluşmaz iptal etmiş müşteri iadeyi atmış ama sonuç doğru gelmemiş bu hataya düşmüş
ama bana gonderidigin banka response'nda "İptal edilmeye uygun satış işlemi bulunamadı." hata mesaji var. belki 2 kere iptal yapilmaya calisilmistir. Iptal edilmis islemi tekrar iptal etmek istersen bu hata olusuyordur.
Müşteri siparişini iptal etmiş normalde iade edilip siparişe yansır ödeme iade edildi diye ama yazmadığı için ben deniyorum ben denediğimdede bu hatayı atıyor yani müşteri ilk yaptığında ödemeyi iade etmiş
Ilk musteri iade islemi yapildiginda neden senin tarafinda basarisiz oldugunu anlamam icin $rawResponseData icerigi lazim.
AuthCode
undefined index sorunu icin guncelleme yaptim, ama bu asil sorununu cozmez.
Asil sorun neden ilk denemede iade basarili olarak gosterilmedi.
Ayrica siparisin son durumuny ogrenmek icin $status = $pos->status()
kullanabilirsin.
ornegin
$status['order_status'] === PosInterface::PAYMENT_STATUS_PAYMENT_COMPLETED
olur,$status['order_status'] === PosInterface::PAYMENT_STATUS_CANCELED
$status['order_status'] === PosInterface::PAYMENT_STATUS_PAYMENT_COMPLETED
donuyor, bunun normalde PAYMENT_STATUS_FULLY_REFUNDED olmasi gerekiyor, ama banka response'na gore neyden refund oldugunu anlayacagimi cozemedimŞuanda net olarak sipariş iptalinde farklı bir hata aldım
Undefined array key "ERRORCODE" - Satır : 273
$rawResponseData icerigini gondermen mumkun mu?
@nuryagdym AuthCode için tam log ilettim, iptal hatasını logluyorum olunca göndereceğim
@nuryagdym Undefined array key "ERRORCODE" - Satır : 273 hatası için başarılı bir iade logu ilettim.
@mettleshade 420iadeodemelog.txt isimle son gonderdigin dosyada refund()
isleminde bankadan gelen cevapmi?
@nuryagdym evet
` public function mapRefundResponse(array $rawResponseData): array { file_put_contents(rand(0,1500).'iadeodemelog.txt',json_encode($rawResponseData)); /* @var PaymentStatusModel $rawResponseData / $rawResponseData = $this->emptyStringsToNull($rawResponseData); $procReturnCode = $this->getProcReturnCode($rawResponseData); $status = self::TX_DECLINED; if (self::PROCEDURE_SUCCESS_CODE === $procReturnCode) { $status = self::TX_APPROVED; }
return [
'order_id' => $rawResponseData['OrderId'],
'group_id' => $rawResponseData['GroupId'],
'auth_code' => $rawResponseData['AuthCode'],
'ref_ret_num' => $rawResponseData['HostRefNum'],
'proc_return_code' => $procReturnCode,
'transaction_id' => $rawResponseData['TransId'],
'num_code' => $rawResponseData['Extra']['NUMCODE'],
'error_code' => $rawResponseData['Extra']['ERRORCODE'],
'error_message' => $rawResponseData['ErrMsg'],
'status' => $status,
'status_detail' => $this->getStatusDetail($procReturnCode),
'all' => $rawResponseData,
];
}`
@mettleshade bilgileri icin tesekkurler, gereken duzeltmeleri yaptim.
Yayina alincaya kadar EstPosResponseDataMapper.php'de degisiklikleri manuel yapabilirsin. https://github.com/mewebstudio/pos/pull/208/files#diff-667e940cbf15f7852b9478d156df7f06e78ec830f5c50b029a81327751a0b923
@nuryagdym ne demek sizin yaptıklarınız yanında hiç bişey. iptal ile log ilettim.
@nuryagdym Undefined array key "GroupId" - Satır : 269 yeni bir hata yakaladım mailden logu ilettim.
@mettleshade groupId sorunu da ele alindi
şuan başka bir eksikle karşılaşmadım karşılaşırsam konuya eklerim
Hatanın özeti
Yeni ödeme yaparken, iade ve iptal yaparken bazı siparişlerde Undefined array key "AuthCode" hatası alıyorum
Bağımsız kod veya hatayı yeniden oluşturmanın bir yolu
Oluşturulan siparişin iptali veya iadesi