If a post-checkout redirect payment is neither completed nor truly cancelled, use of another browser tab in the shop has all item quantities in the cart doubled.
This issue was found using _online_bank_transferp24 but I believe it can apply to any payment that redirects after completing the checkout, such as Paypal
to reproduce:
go to a PDP page and add the product to cart
open the PDP page in another tab in the same browser
with either tab complete the magento checkout with a post checkout payment selected (ex: Przelewy24)
redirect to the payment site, but do not complete the payment yet
switch to the other tab and continue to shop. The minicart might not reflect this right away, but if you refresh or add another product, all the cart items will have double the original cart quantities.
provided simple fix:
normally in \Payone_Core_Model_Handler_Cancellation::handle(88) the session quote items are already removed, but not when triggered through the above scenario. Manually removing any items seems to fix this problem without interfering with intended functionality.
this doesn't change the issue of the customer being able to switch back to the payment tab and completing the purchase, thus having a completed payment on a cancelled order. but that is not in this scope ;-)
If a post-checkout redirect payment is neither completed nor truly cancelled, use of another browser tab in the shop has all item quantities in the cart doubled. This issue was found using _online_bank_transferp24 but I believe it can apply to any payment that redirects after completing the checkout, such as Paypal
to reproduce:
provided simple fix:
this doesn't change the issue of the customer being able to switch back to the payment tab and completing the purchase, thus having a completed payment on a cancelled order. but that is not in this scope ;-)