WooCommerce státusz nem változik sikertelen fizetésű IPN esetén
Closed this issue · 8 comments
- Simplepay Gateway bővítmény verzió: 2.8.1
- WooCommerce verzió: 8.3.1
- WordPress verzió: 6.4.2
- PHP verzió: 7.4.25
Hiba leírása
Sziasztok!
A legutóbbi frissítésig (pár nappal ezelőtt) minden rendben működött (Simple 2.7.1, WC 8.2.1). A frissítés óta a sikertelen fizetési tranzakciós rendelések "FIzetés előtt" státuszon maradnak, akár napokig.
Korábban a simplepay hibái miatt beállításra került egy +90 perces timeout nyújtás, most ezt is kivettem.
Most minden sikeres fizetésnél jól működik a rendszer, de megszakított-, timeout-olt-, hibás fizetési próbálkozásoknál csak annyit látok a simple admin oldalon, hogy ők elküldték a megfelelő IPN hívást, a WC mégsem kezelte le. Ha ezek után manuálisan indítok IPN-t, az sem csinál semmi változást a státuszban. A WC-s simplepay napló file-jainál csak a sikeres IPN hívások vannak feltűntetve.
Szia!
Én most hallok először róla, hogy nem sikeres tranzakció esetén is küldhet IPN-t a SimplePay. De igazad van, mert ez áll a dokumentációban:
2021.06.15. után a sikertelen végstátuszok esetén is küldhet a rendszer IPN üzenetet. Ez
a funkció opcionális, ami csak kereskedői beállításra történik meg. Azon kereskedői
rendszerek esetén, ahol korábban implementálva volt a funkció a sikeres státuszokra,
nem igényel kötelező jellegű változtatást.
Viszont erről a módosításról nem nagyon értesültünk, így ez nincs is belefejlesztve a bővítménybe. Hamarosan bővítem a kódot, és egy új verzióval már elérhető lesz az általad vázolt eshetőség IPN kezelése is.
Egy kis türelmet kérek, hamarosan jelentkezem!
Köszi!
@iamgergo , köszönöm!
Addig is, amíg elkészül ez a fejlesztés, van ötleted, hogy miért nem változnak a simplepay-es rendelések státuszai? Ha lejár a timeout idő, akkor valamilyen sikertelen státusznak kéne beállnia. Esetleg ötlet, hogy a kódnak melyik részére érdemes valamilyen debug kódot írnom, hogy kiderüljön, hol van a gond a flow-ban?
@jofbe Kiment az új verzió, meg tudod erősíteni, hogy most rendben lemegy az IPN minden esetben?
Esetleg ötlet, hogy a kódnak melyik részére érdemes valamilyen debug kódot írnom, hogy kiderüljön, hol van a gond a flow-ban?
Nem tudom pontosan mi az elvárás, de a PaymentHandler
-ben tudsz kísérletezni. Ott kezeljük le az egyes eseteket.
@iamgergo a frissítés után már a napló file-ban megjelent egy "status":"CANCELLED"
is, aminek örülök.
Egy olyan dolog van még, hogy ezzel a tranzakció bejegyzéssel törlődött a mai napi (ehhez a plugin-hez tartozó) összes napló bejegyzés, de ez remélhetőleg csak egyszeri eset volt ;)
A logolással kapcsolatban elvárásom nem igazán volt, csak szerettem volna rájönni, hogy az IPN hívás hol tűnhetett el, de ezek szerint megérkezik, így a hiba másban lehet.
Egy olyan dolog van még, hogy ezzel a tranzakció bejegyzéssel törlődött a mai napi (ehhez a plugin-hez tartozó) összes napló bejegyzés, de ez remélhetőleg csak egyszeri eset volt ;)
Nem csak egy új fájlba logol?
Nem, ezzel a dátummal ettől a plugin-től csak 1 napló file van, most már két IPN-el, az én teszt megszakítottammal, és egy sikeressel. Aztán rájöttem, hogy a többi vásárlás utánvétes fizetéssel volt, így persze, hogy nem volt hozzájuk tartozó IPN hívás...
A problémám viszont sajnos még aktuális, 7 óra elteltével is Fizetés előtt státuszon van a teszt rendelésem, ahol megszakítottam a kártyás fizetést. Viszont mivel az IPN hívás megérkezett, lehet, hogy a WooCommerce maga a hibás?!
Hogyan szakítottad meg? A vissza gombbal? Ha igen, akkor a mi részünkről helyes a fizetés előtt, azt viszont nem tudom, hogy mikor állítja át a Woo ezt failed-re.
Igen, a vissza gombbal szakítottam meg. Megpróbálom a Woo support-ját ;)