Repository navigation
v3.5.24 綠界貨到付款未代收、PHP 8.2 動態屬性 503、PAYUNi V3 遭拒仍顯示成功
本版修正三個問題,各自獨立,升級後不需要改任何設定。
1. 綠界超商物流:使用 woomp 自家「貨到付款」時,物流單沒有代收貨款(issue #135)
影響對象:付款方式用 woomp 的貨到付款(woomp_cod_gateway),又用綠界超商物流建單的站台。
問題
建物流單時只認 WooCommerce 內建的 cod,woomp 自家的貨到付款會送出 IsCollection=N,綠界建成純配送單:貨被取走,卻沒有代收貨款。後台付款方式仍顯示「超商貨到付款」,商家要到綠界後台才會發現。
修正
- 貨到付款清單改為
cod+woomp_cod_gateway,自動排程、訂單動作、批次建單三個入口都適用。 - 各站自訂的 COD 複製版可用 filter
ry_ecpay_cod_gateway_ids加入清單。 - 付款方式名稱看起來像貨到付款(含「貨到付款/取貨付款」)卻不在清單內時,不擅自代收,但會在訂單留下警告備註,避免再次靜默送出純配送。
2. PHP 8.2:大量動態屬性警告導致後台 AJAX 回 503(issue #140)
影響對象:PHP 8.2 以上的站台,特別是有開 Query Monitor 的。
問題
外掛多個類別寫入了未宣告的屬性,每次請求產生大量 Creation of dynamic property ... is deprecated。開著 Query Monitor 時這些警告會塞進回應標頭(單次訂單預覽約 69 KB),超過 nginx 上限,瀏覽器看到 503,但後端其實已經成功(例如物流單其實已建立)。PHP 9 起這會直接變成錯誤。
修正
補上 48 個類別、126 處屬性宣告(綠界/藍新/速買配/PayNow/LINE Pay/PAYUNi 金流與物流、woomp 貨到付款等),只加宣告,不改任何邏輯。
3. 統一金流 PAYUNi 信用卡 V3:交易被金流拒絕時,顧客仍被導到訂單完成頁(issue #141)
影響對象:使用 payuni-credit-v3(統一金流信用卡 V3 免跳轉)的站台。
問題
PAYUNi 以錯誤碼拒絕交易時(例如 IFTRADE02011),外掛仍回傳成功,顧客被導到訂單完成頁、以為付款成功;訂單備註卻誤寫「3D 驗證已建立,等待 webhook」,客服也會被誤導。
| 修正前 | 修正後 | |
|---|---|---|
| 顧客看到 | 訂單完成頁 | 留在結帳頁,顯示「付款失敗:(金流回傳原因)」 |
| 訂單備註 | 3D 驗證已建立,等待 webhook… | 統一金流交易遭拒(狀態碼:…,交易訊息:…) |
| 訂單狀態 | 等待付款中 | 等待付款中(顧客可直接重試) |
有交易編號但授權失敗的情況,以前一樣會導到完成頁,現在也改為顯示失敗。3D 驗證與直接授權成功的流程不變。