Currently encountering the same issue.
Since the actual checkout and order-pay behavior is different. The Checkout page supports Ajax call which is how paymongo APIs are called. In order-pay page, the behavior is a form submission which submits and reloads the page and paymongo API isn’t called.
From what I’m seeing, the plugin doesn’t support the form submission method?
This is critical as part of having the customers be able to re-visit their orders and pay for them.
Right now, it seems the plugin only works on an end-to-end checkout. Processing unpaid orders are lost.
Hi @jrcgonzalez, apologies for the delayed response.
Do you happen to use the Credit Card method as well on the Order Pay page? If not, kindly indicate the payment method that you are using that is currently not working.
Based on our tests, the plugin is working on those pages as advertised.
If you need further help to troubleshoot the issue, please reach out to plugins@cynder.io, preferably with a recording of your issue, so we can work with you guys to resolve it.
Thanks.
Hi @cyndertech ,
We initially use Credit Card Payment method. The end to end checkout process works perfectly!
However, there are unavoidable scenarios where a customer may have pending orders or orders created for them that they want to pay. The customer may only pay via the account/orders page. That’s where the issue was encountered. Once the customer entered their CC details and triggered the Pay button, it just reloads the page.
I believe this is because the order-pay page of woocommerce has a different behavior than the actual checkout where the checkout uses ajax to call the APIs to process the payment and the order-pay page submits the form page, hence it reloads the page.
While investigating, we found out that in the order-pay page, only the payment_methods API is called, no other ajax functions were triggered. The form submission should integrate with Paymongo I think, but in this case, it just doesn’t.
We tried Gcash and Paymaya methods, and since they redirect you to an external payment page, it works alright with the correct return urls that updates the order details in woocommerce.
Additional question, would it be possible to have external payment page when using CC method? similar to gcash, paymaya and paypal. I believe that’s the page links in paymongo?
Hope this helps clarify the issue.
Hi @jrcgonzalez, thanks for clarifying.
Upon testing on our end, it works accordingly even in the order-pay page. However, we did manage to replicate your issue on one of our dev environments in the cloud and we’re still investigating what could be the cause of it.
To be a bit technical, although the form submission on order-pay page is not via AJAX, a client-side script is actually overriding the form submission to process the payments for credit cards in particular. We’re just not sure why it is not working properly in the cloud environment. In any case, we’ll keep you posted and issue a fix if necessary.
For the external payment page similar to other payment methods, that would be a hosted checkout experience. We don’t have that at the moment since that requires PCI-DSS compliance on our end as a developer. We can coordinate it with PayMongo team and see what can be done about it — but for now all we can provide is the basic credit card form upon checkout.
Thanks.