Post by Saimun » Thu Oct 31, 2019 9:49 pm

Hello,
i Need help about mission order on my site ...
when i create first order then its ok , then when i go to create second order it goes to missing order. ???
and no order are shown in customer order history.
no error detect on error log. :choke:
iam just confused why that problem occurs and where.. :choke:

sr


User avatar
Newbie

Posts

Joined
Tue Jan 02, 2018 9:45 pm


Active Member

Posts

Joined
Tue Aug 02, 2016 9:01 pm

Post by letxobnav » Fri Nov 01, 2019 6:07 pm

Well, as far as I know, missing orders are the ones with order_status_id = 0 which is the initial state.
The state after confirmation depends on the payment module you use, they set it and normaly have that status stored in the settings.
Cash on delivery sets it immediately whereas paypal standard sets it after receiving the call-back.
So you would have to look at the payment module first.

Crystal Light Centrum Taiwan
Extensions: MailQueue | SUKHR | VBoces

“Data security is paramount at [...], and we are committed to protecting the privacy of anyone who is associated with our [...]. We’ve made a lot of improvements and will continue to make them.”
When you know your life savings are gone.


User avatar
Expert Member

Posts

Joined
Fri Aug 18, 2017 4:35 pm
Location - Taiwan

Post by paulfeakins » Fri Nov 01, 2019 7:08 pm

Saimun wrote:
Thu Oct 31, 2019 9:49 pm
when i create first order then its ok , then when i go to create second order it goes to missing order. ???
What payment gateway?

For quick, professional OpenCart support please email info@antropy.co.uk


User avatar
Guru Member

Posts

Joined
Mon Aug 22, 2011 11:01 pm
Location - Reigate, Surrey, United Kingdom

Post by Saimun » Sat Nov 02, 2019 8:05 pm

paulfeakins wrote:
Fri Nov 01, 2019 7:08 pm
Saimun wrote:
Thu Oct 31, 2019 9:49 pm
when i create first order then its ok , then when i go to create second order it goes to missing order. ???
What payment gateway?
Cash on delivery
or
Bank transfer

i again install fresh opencart but same case occur again

sr


User avatar
Newbie

Posts

Joined
Tue Jan 02, 2018 9:45 pm


Post by OSWorX » Sat Nov 02, 2019 9:19 pm

Saimun wrote:
Thu Oct 31, 2019 9:49 pm
when i create first order then its ok , then when i go to create second order it goes to missing order.
First of all, are you speaking about creating an order in the shop or in the backend as admin?
Second, how did you create the 1. order - and how the second (precise the steps), what did you between?

Saimun wrote:
Thu Oct 31, 2019 9:49 pm
and no order are shown in customer order history.
Wether first nor second?
And I am sure they are there, try to change the dropdown at Order State and filter after that.

Saimun wrote:
Thu Oct 31, 2019 9:49 pm
no error detect on error log.
Have you enabled full error reporting (default normally is no, so you have to add this manual)?!
I guess not, because otherwise at least an entry in the server (apache) logfile should be visible.

And - finally: which template (if orders are created in the shop) are you using?

p.s: all payment types using no external gateway or processor are using the order state as defined in the shop configuration.

Full Stack Web Developer :: Dedicated OpenCart Development & Support DACH Region
Contact for Custom Work / Fast Support.


User avatar
Guru Member

Posts

Joined
Mon Jan 11, 2010 10:52 pm
Location - Austria

Post by Cip » Sat May 30, 2020 3:43 am

I have same problem.

I've made couple of test orders as client with or without registered account. All orders receive "Successfull order" page confirmation on front-end.
1. First order placed
- showing in OC back-end = YES
- status = Pending
- email received for new order = YES

- showing in OC front-end/client account = YES
- status = Pending
- email received for new order as client = NO

I've canceled the order from OC back end with customer notification, surprise notification received via email as Client.

2. Second order placed
- showing in OC back-end = NO
-showing in OC back-end filter "missing order" = YES
- status = Canceled
- email received for new order = NO

- showing in OC front-end/client account = NO
- email received for new order as client = NO

I've closed browser and cleared cache and repeated the proccess 3 times, same result. First order placed has Pending status, second has Canceled status.


installed OC version is v3.0.3.3
- no 3rd party extensions
- default theme with some minor visual tweaks, not affecting the functionality
- no errors in error log
- payment method used is COD (cash on delivery)
- shipping method used is Flat Shipping Tax

Cip
Newbie

Posts

Joined
Fri May 29, 2020 5:20 pm

Post by ADD Creative » Sat May 30, 2020 4:40 am

Might be worth checking your web access logs and check that a request to /index.php?route=extension/payment/cod/confirm is being made for each attempted order. Also check your web browser development console for and errors.

www.add-creative.co.uk


Active Member

Posts

Joined
Sat Jan 14, 2012 1:02 am
Location - United Kingdom

Post by letxobnav » Sat May 30, 2020 10:22 am

Be aware, the second order does not have status canceled as it has status 0.
It only shows canceled in the dropdown as that is the first option of the dropdown which does not have the "missing" (zero) value.

if you used COD and the order retains status 0 then your order confirmation did not process correcly.
When confirming payment method, the order is saved with status 0.
When confirming the order, the payment method sets the correct status and then the emails go out.

Crystal Light Centrum Taiwan
Extensions: MailQueue | SUKHR | VBoces

“Data security is paramount at [...], and we are committed to protecting the privacy of anyone who is associated with our [...]. We’ve made a lot of improvements and will continue to make them.”
When you know your life savings are gone.


User avatar
Expert Member

Posts

Joined
Fri Aug 18, 2017 4:35 pm
Location - Taiwan

Post by Cip » Sat May 30, 2020 2:43 pm

letxobnav wrote:
Sat May 30, 2020 10:22 am
Be aware, the second order does not have status canceled as it has status 0.
It only shows canceled in the dropdown as that is the first option of the dropdown which does not have the "missing" (zero) value.

if you used COD and the order retains status 0 then your order confirmation did not process correcly.
When confirming payment method, the order is saved with status 0.
When confirming the order, the payment method sets the correct status and then the emails go out.
Yes i know that. in SQL DB the order has order_status_id = 0.
So, from what you are saying ... seem that is a "order confirmation" issue. The funny thing is that the order confirmation goes well, actually showing last page "successfull order" but the client email never arrived, so there i start to worry that something is not right.

Cip
Newbie

Posts

Joined
Fri May 29, 2020 5:20 pm

Post by letxobnav » Sat May 30, 2020 4:06 pm

There will be no email of any kind as long as the order remains in status 0.

From the COD controller you can see that when confirming the order, it first adds to the order history which sets the correct order status as set in your settings as "payment_cod_order_status_id" and that triggers the sending of the emails via the event "mail_order_add" in your event table.

When that order status goes from 0 to something else, an order confirmation email (new order) is triggered by the event.
When the order status goes from not 0 to something else, an order status update email is triggered by the event.

After that is done, you are directed to the success page where then the entire order information in the session is removed.

Code: Select all

	public function confirm() {
		$json = array();
		
		if ($this->session->data['payment_method']['code'] == 'cod') {
			$this->load->model('checkout/order');

			$this->model_checkout_order->addOrderHistory($this->session->data['order_id'], $this->config->get('payment_cod_order_status_id'));
		
			$json['redirect'] = $this->url->link('checkout/success');
		}
		
		$this->response->addHeader('Content-Type: application/json');
		$this->response->setOutput(json_encode($json));		
	}
In short, if you get the success page but the order remains in status 0, something amiss during addOrderHistory.

Crystal Light Centrum Taiwan
Extensions: MailQueue | SUKHR | VBoces

“Data security is paramount at [...], and we are committed to protecting the privacy of anyone who is associated with our [...]. We’ve made a lot of improvements and will continue to make them.”
When you know your life savings are gone.


User avatar
Expert Member

Posts

Joined
Fri Aug 18, 2017 4:35 pm
Location - Taiwan

Post by Cip » Sat May 30, 2020 5:52 pm

letxobnav wrote:
Sat May 30, 2020 4:06 pm
There will be no email of any kind as long as the order remains in status 0.
Makes sense, my point too. But should be another if {} to check < order_status_id != 0 > before redirect to $json['redirect'] = $this->url->link('checkout/success'), because:
1. makes sense to have no confirmation email for order_status_id = 0 (Fail Order Page should be displayed).
2. makes NO sense to have "no confirmation email" when you have "Success Confirmation Page".
3. also makes NO sense to have "Success Confirmation Page" and have order_status_id = 0. I understand that this payment check must be done in case of PP or Card payment, where the payment processing entity will bounce back with some payment OK or payment FAIL that will set the final order_status_id but in case of COD the order_status_id should be anything else but 0 right away. When you click Confirm Order in this particular case of COD or Bank Transfer the order_status_id should be 1 (pending) without any issue.

letxobnav wrote:
Sat May 30, 2020 4:06 pm
In short, if you get the success page but the order remains in status 0, something amiss during addOrderHistory.
Yes, indeed but what is wrong ? thats the big question, thats why i'm writing here ... i need something helpfull to grap on, i'm not developer but i understand php so i can dig dipper with some help from a expert in OC.

Cip
Newbie

Posts

Joined
Fri May 29, 2020 5:20 pm

Post by letxobnav » Sat May 30, 2020 7:40 pm

Well, error handling in OC is rather rudimentary, you will find many instances where nothing is checked and success is simply assumed.
You could add some tracing:

in config.php you add:

Code: Select all

define('TRACE',	true); // enable trace messages
in catalog/model/checkout/order.php function addOrderHistory
after:

Code: Select all

if ($order_info) {
add:

Code: Select all

if (TRACE) $this->log->write('addOrderHistory -> order_id: '.$order_id.', current status: '.$order_info['order_status_id'].', new status: '. $order_status_id);
Then you would see the result in your OC error log.

Crystal Light Centrum Taiwan
Extensions: MailQueue | SUKHR | VBoces

“Data security is paramount at [...], and we are committed to protecting the privacy of anyone who is associated with our [...]. We’ve made a lot of improvements and will continue to make them.”
When you know your life savings are gone.


User avatar
Expert Member

Posts

Joined
Fri Aug 18, 2017 4:35 pm
Location - Taiwan

Post by head_dunce » Sat May 30, 2020 9:07 pm

I had a similar problem, this seems to have fixed it - haven't had the issue since making the changes and checkout is a lot faster -
viewtopic.php?f=202&t=217052#p783203

Jim
https://www.carguygarage.com
Yahoo Store since 2006 moved to OpenCart on January 24, 2020


Active Member

Posts

Joined
Thu Apr 04, 2019 11:50 pm

Post by letxobnav » Sat May 30, 2020 10:01 pm

If this was an email smtp issue, he would have hit an exception already and not reach the success page.
Besides, throwing an email over the wall and hope for the best may be speedy, it is hardly a solution nor very smart, you might as well use php mail.

Crystal Light Centrum Taiwan
Extensions: MailQueue | SUKHR | VBoces

“Data security is paramount at [...], and we are committed to protecting the privacy of anyone who is associated with our [...]. We’ve made a lot of improvements and will continue to make them.”
When you know your life savings are gone.


User avatar
Expert Member

Posts

Joined
Fri Aug 18, 2017 4:35 pm
Location - Taiwan
Who is online

Users browsing this forum: aaron.rosete and 23 guests