I'm wondering if there is an extension or some guidelines on how I might think about allowing for an order to be created in the admin area for a customer and then allow them to log in to their account and see the order needs paying and have them be able to put in their card details and pay the order?

Any tips or advice would be appreciated.

4 Answers 4


If we need to create an order then ask the user for payment, we will place the order using the Purchase Order method and send the customer a PayPal invoice. Once we receive the payment we send the order confirmation email.


I have just created an order on our website as admin and then logged in to the frontend (with my testing account).

I could not change the payment information from the cheque option I had selected however I could reorder and in doing so it was just like a normal checkout process.

Obviously this is not an ideal solution as it would be duplicating orders.

I would suggest looking at billing agreements to see if this is helpful.

*version 1.6.2 of Magento CE.


The way that Magento would want you to do this is to prepare the order for them. In EE 1.12+ you can see and edit items in a customer's shopping cart. You can also edit their default billing and shipping addresses for them.

In essence, with no code or an extension required, you have the ability to prepare a customer's shopping cart for them to finalize by checking out. This is not an ideal solution if you do not run EE and it is not meant to be a full answer (most likely not worthy of a bounty) but it is a feature many do not know about.

Best of luck.


Magento comes with a Onepage Checkout, so you need to go through the whole process, even if you (as a customer) already went through parts of it.

But I think, it is possible to change that:

Of course, you could add articles to the customer's cart, so that the customer would just have to run through the checkout process.

You could implement an extension to prepare the quote by adding a billing address and entering shipping information (you may skip that, if your quote items are virtual). So if you use a customized checkout, you could skip these steps and directly continue with payment method selection.

If that would match your requirements, your extension needed to set a billing address to the current quote:


Set a shipping address and a shipping method:


You could also set a payment method, e.g.

$quote->getPayment()->importData(array('method' => 'checkmo'));

Having such a prepared quote, you need to manipulate the checkout Javascript to use e.g. review step as the initial one.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.