Order Status Change When Processing Payment

Does anyone know how to stop order status changing when a payment is processed? I would like to process payments in the backend WITHOUT automatically having the order status changed.



V4.1.4 Any help or info would be great!

[quote name='beatwear' timestamp='1401137871' post='184322']

Does anyone know how to stop order status changing when a payment is processed? I would like to process payments in the backend WITHOUT automatically having the order status changed.



V4.1.4 Any help or info would be great!

[/quote]



What status do you want to keep? Do you use offline or on-line payment methods?

I use offline on the customer side and I use online in the back end manually but when I process a payment in the backend the message comes up that the order status has been changed, I dont want the order status changed at all when I process payments in the backend.

[quote name='beatwear' timestamp='1401194069' post='184371']

I use offline on the customer side and I use online in the back end manually but when I process a payment in the backend the message comes up that the order status has been changed, I dont want the order status changed at all when I process payments in the backend.

[/quote]



What online payment method do you use? By default the order status is Incomplete. If you will not change the status, this order will not be displayed in the dashboard and Manage orders page. Please check more details here:

If I recall correctly, if you are using offline processing, then the order status will be Open when the order placement is complete. I believe orders only remain Incomplete when there is a processor_id and there is no (transactional or callback) response from the processor (I.e. finish_payment() fails). Then when the payment is actually processed it will become Processed.



So you edit each order and change the payment method in the backend? That seems really time consuming…

[quote name='tbirnseth' timestamp='1401218668' post='184395']

If I recall correctly, if you are using offline processing, then the order status will be Open when the order placement is complete. I believe orders only remain Incomplete when there is a processor_id and there is no (transactional or callback) response from the processor (I.e. finish_payment() fails). Then when the payment is actually processed it will become Processed.



So you edit each order and change the payment method in the backend? That seems really time consuming…

[/quote]



You are almost right. The orders are added to the database with the Incomplete status. If the offline payment method is used, the system changes the order status to Open. So it is hard to understand what status beatwear wants to use.

I think that's what I stated above (related to offline processor). But I also think my statement about processor_id and no response is also correct.

This post was really helpfull understanding how cs-cart deals with offline payment processing.



Is there a way to “trick” cs-cart to allways assume osder_status = 'O' even when there is a configured payment.php?



I mean:



code to trick cs-cart and allways process order as open



then do something else.



Any help on this would be much apreciated.

Hello everseeker,



In this case I would like to suggest you making some code modifications to the files located in the app\payments directory (depends on the real-time processors you are using in your store). The part of code responsible for switching the order status to Processed is usually this: “$pp_response['order_status'] = 'P';”, so you need to change it.



I hope this will help you.