OC: 2.3.0.2
When I try to Edit Order in Admin, I cannot complete changes because of error: "Warning: Payment method required!"
The order was placed using "Free Checkout", when customer used a coupon that causes Total to be $0. So when I try to edit that order in Admin, on step 5, the Payment Method has "Please Select" and "PayPal". The only way I can commit changes is if I switch the Payment Method to PayPal.
Free Checkout is not available in list of Payment methods for me to choose from. Additionally, the Shipping method is disabled (but required). I have "applied" the coupon during edit, which changes Total to $0, but "Free Checkout" still does not become available for Payment Method.
Any suggestions on how to allow editing an order placed via Free Checkout without changing Payment Method to PayPal (in my case)? Possibly the Payment method should not be required?
Thank you for any assistance or ideas.
When I try to Edit Order in Admin, I cannot complete changes because of error: "Warning: Payment method required!"
The order was placed using "Free Checkout", when customer used a coupon that causes Total to be $0. So when I try to edit that order in Admin, on step 5, the Payment Method has "Please Select" and "PayPal". The only way I can commit changes is if I switch the Payment Method to PayPal.
Free Checkout is not available in list of Payment methods for me to choose from. Additionally, the Shipping method is disabled (but required). I have "applied" the coupon during edit, which changes Total to $0, but "Free Checkout" still does not become available for Payment Method.
Any suggestions on how to allow editing an order placed via Free Checkout without changing Payment Method to PayPal (in my case)? Possibly the Payment method should not be required?
Thank you for any assistance or ideas.
Attachments
Screen Shot 2017-01-12 at 3.02.19 PM.png (81.2 KiB) Viewed 1985 times
Last edited by rgbworld on Tue Jan 17, 2017 4:16 am, edited 1 time in total.
RGB World - FREE and Commercial Extensions
For custom work or support, please use our Contact Form or visit our Support Forum.
Favorite Quote: There are 10 types of people in the world. Those who understand binary and those who don't.
It seems like an issue. As free checkout should come.
Can you try this one thing. Click on apply coupon button. And then go back to step 4. And then come back on step 5. And then see if payments are updated.
Please share your answer on our email support@cartbinder.com
Can you try this one thing. Click on apply coupon button. And then go back to step 4. And then come back on step 5. And then see if payments are updated.
Please share your answer on our email support@cartbinder.com
Opencart Extensions | Professional opencart support | Support Ticket | support@cartbinder.com
If that doesn't work, you could try this edit, which should enable Free Checkout if it's being used in the admin panel order editor, regardless of the order total:
Code: Select all
IN:
/catalog/model/extension/payment/free_checkout.php
REPLACE:
if ($status) {
WITH:
if ($status || isset($this->session->data['api_id'])) {
After applying the Coupon on Step 5, then go back to Step 4 and proceed to step 5 makes "Free Checkout" appear as the Payment Method. This indeed resolves the issue. Thank you!imdevlper18 wrote:It seems like an issue. As free checkout should come.
Can you try this one thing. Click on apply coupon button. And then go back to step 4. And then come back on step 5. And then see if payments are updated.
This solution works as well. Now I have 2 great solutions! The solution by imdevlper18 does not require any code changes. Simply apply the coupon, step back, then forward again. Personally I will use Johnathan's solution because IMO, "Free Checkout" should always be a choice, regardless of using a Coupon or not.Johnathan wrote:If that doesn't work, you could try this edit, which should enable Free Checkout if it's being used in the admin panel order editor, regardless of the order total:
Code: Select all
IN: /catalog/model/extension/payment/free_checkout.php REPLACE: if ($status) { WITH: if ($status || isset($this->session->data['api_id'])) {
Thanks again. My research led me to a similar issue: Opencart Coupon Code Cancels Orders (#3657) in OpenCart GitHub repository. Although only semi-related, it may help others that are having issues with Orders placed with a Coupon.
RGB World - FREE and Commercial Extensions
For custom work or support, please use our Contact Form or visit our Support Forum.
Favorite Quote: There are 10 types of people in the world. Those who understand binary and those who don't.
Who is online
Users browsing this forum: No registered users and 251 guests