Question

When a customer places an order using Paypal the order status becomes processing. I want it to be pending.

I tried to change the default order status in app/Core/code/Mage/Paypal/etc/config.xml

<sales>
    <order>
        <statuses>
            <!-- retained for backwards compatibility, not used anymore -->
            <pending translate="label"><label>Pending</label></pending>
        </statuses>
    </order>
</sales>

but that did not work.

My configuration (click to enlarge):

screenshot

Was it helpful?

Solution 4

I was able to find a solution. in app/code/core/Mage/Paypal/Controller/Express/Abstract.php

below link will show u how to change the state of an order whenever you want.

http://blog.chapagain.com.np/magento-how-to-change-order-status-programmatically/

so before you get redirected to the success page. change the order state to what ever you need.

OTHER TIPS

Not the answer you want, but the state of orders follow a predefined flow and should not be changed. Only the custom defined status within a state can be changed by your requirements.

Aligent Consulting created a flow chart for order states:

magento order state flow

Source: https://twitter.com/aligent/status/509487359172177921/photo/1

You see that as soon as an invoice is created and the order is payed, the state is processing.

Orders are only pending if they are waiting for payment. This is actually never the case for PayPal where the payment happens instantly (there is only an intermediate status "Pending PayPal" where the order has been created in Magento and the customer has been redirected to PayPal to finish the payment.

It does not make sense to mark PayPal orders as "processing" and it will break the order flow because the assumptions Magento makes will not hold true anymore!

What you can do is create a custom order status, call it whatever you want and assign this as default status for PayPal orders. But it has to be a child of the "processing" state

Previous versions of Magento provided the configuration settings for order status to be set using the admin panel (I'm not quite sure upto which release). For the new release I think you should configure IPN settings from PayPal.

However I believe if you're using 1.4 you would need to go to

System->Configuration->Payment Methods->PayPal Standard

and set your New Order Status to whatever you want.

You can refer to this thread also for further details: https://stackoverflow.com/questions/13252427/magento-1-7-0-2-pending-payment-status-after-successful-payment-in-paypal

okay you want to assign "Pending" instead of "Processing". refere this link (don't worry, this is a short and crisp tut). This is not exactly what you ask for, but is similar. You'll be able to select any default order status by using this method.

If you opt to change the statuses manually, refer this link.

Licensed under: CC-BY-SA with attribution
Not affiliated with magento.stackexchange
scroll top