Hello,
There’s actually no changes in the code here, and if you choose “refund manually” the payment gateway’s “process_refund” code isn’t called at all. Could you describe the entire process in detail here?
It may be that refunding the entire amount of a completed order will change the status of the order to “refunded”, and *that* will engage the gateway. We’ll look into it.
Hi @iverok
Thanks for quick response.
The entire process that I did:
1. Opened the order by editing it.
2. Pressed “Refund” and selected the product to be refunded.
3. Pressed the “Button” Refund kr xx manually (not the “Refund xx kr via Vipps MobilePay” button)
4. This triggered the order to be refunded to Vipps.
I also tested on another separate test order:
1. Edited an order
2. In Order Status, I selected “Refunded” and updated the order.
This also triggered full refund via the VIPPS Gateway as you mentioned above.
Best Regards
Horgster
-
This reply was modified 2 months, 3 weeks ago by
horgster.
Yes, if you set the status of the order to “Refunded” the gateway gets called, refunding the amount; but this seems to have been triggered by setting each and every item to “refunded” manually for a completed order?
We will probably need to add code that checks if there are manual refunds when the status is set to “refunded”, and if so, not do anything with the Vipps refunds. The reason is that we are planning on supporting partial capture as well shortly, and integrating that with manual refunds as well will probably be quite a challenge. It should solve your case at least.
Hi @iverok
As said;
It is triggered if pressing the “Button refund manually” or if you just change the status of the complete order to “refunded”.
So I guess, when you press the button “refund manually” it also sets the order to “refunded” which in return gets the gateway called.
Hope this answer your question and helps you 🙂
Yes, that’s the core of the problem. We’ll change the logic when status gets set to “refunded” so that it will do nothing if manual refunds have been involved.
If you refund only *part* of the order manually, this does not happen.
Hi,
This morning I tested following two scenarios:
Scenario 1
- Purchased a product with the value of 5 kr
- Refunded 1kr manually with the manual button
VIPPS Gateway was not engaged at this time.
- Changed the order status to “Refunded”
VIPPS Gateway engaged – and 5kr was refunded
Scenario 2
- Purchased a product with the value of 5 kr
- Refunded 1kr manually with the manual button
VIPPS Gateway was not engaged at this time.
- Refunded the remaining 4kr manually
VIPPS Gateway engaged – and 5kr was refunded
This concludes that refunding *part* of the order until all founds is refunded manually do not work either.
So yes, I think it is important that logic should be changed here.
We’ve just released 5.0.13. In this version, if you do a manual refund, a full refund will not be done via Vipps when the order is set to “refunded”.
Hi @iverok
Great and thanks for quick support as always 🙂
But we have an critical bug here!
After upgrading to 5.0.13, the express checkout is no longer working.
We can’t initiate VIPPS payment with Express checkout, when pressing “Betal med Vipps” button during express checkout after the “sales conditions” is confirmed.
If I select an product and select, pay now with VIPPS, I am redirected to “VIPPS Hurtigasse” https://www.oslokiteklubb.no/vipps-buy-product, but when I then press “Betal med VIPPS”, the VIPPS page is not opened.
I was forced to rollback to version 5.0.12 to get VIPPS payment to work again.
Let me know if I can assist in troubleshooting?
We just noticed the same thing – we managed to do one final change after testing. 5.0.14 is on its way.
The issue affects just Express checkout; 5.0.12 is safe for now.
5.0.14 should be out presently – sorry about that.
Perfect! It works and thinks for your kind support 🙂
Case closed