Posted on

How to Add Orders in WooCommerce Manually and Send Payment Invoice Link to the Customer

This post explains how you can add an order for your customers in WooCommerce and allow them to make payment easily.

WooCommerce manual order

Last updated on October 14, 2024

Why would you do need to add orders manually in WooCommerce?

Well, there are plenty of reasons! For example, you might want to:

  • Give special discounts or exceptional pricing to customers.
  • Send a ‘payment invoice link’ to customers.
  • Pre-fill order details for customers and allow them to make payments.
  • Provide products to specific customers that you do not show up in your catalog for visitors.

and the list goes on…

In this guide, we’ll walk you through the step-by-step process on how to create manual order in WooCommerce, send payment invoice links and better manage orders in bulk.

How to add WooCommerce manual order?

  1. Go to WooCommerce > Orders on your WordPress admin panel.
  2. Click Add order to add a new order. Fill in all the details – customer name, order date, billing/shipping details, email address, coupon, etc.
  3. Keep the order status as Pending payment.
  4. woocommerce manual orders addition
  5. Add products, their quantities and prices, discounts, taxes, shipping and fulfilment.
  6. add products to the order
  7. Add details under the Custom Fields section and Downloadable product permissions when required.
  8. Click on Create.

That’s it. You have successfully added a WooCommerce manual order.

If the customer is a guest, anyone with the link Customer payment page (which can be found under WooCommerce > Orders > the manual order created) will be able to view the payment page and pay for the order.

And, if they’re registered customers, they can log in to their My Account area, find their order and use the Pay button to make the payment.

How to send order invoice and reminder notifications to customers (with payment link)?

WooCommerce makes it easy to send invoices to your customers. To do that:

  1. Go to the WorPress admin. Navigate to WooCommerce > Orders.
  2. Click on the required order.
  3. Go to the Order actions box.
  4. From the dropdown, select Email invoice / order details to customers.
  5. Click the Update button.
order action WooCommerce

And that’s it. Your customer will receive an invoice with the payment link.

But here’s the thing- your customers get hundreds of emails every day. Your email can easily get lost in the sea of emails in their inbox.

So how do you make sure your WooCommerce order invoice stands out?

Well, the answer is customizing it! It includes everything including- headlines, sub-headlines, subjects, CTA, text body, etc. It will grab customers’ attention and encourage them to open your emails.

Additionally, ensure your order confirmation emails have product images and links to helpful content.

Email Customizer Pro for WooCommerce plugin interface

The plugin allows you to customize email text, colors, add links, product recommendations and social media icons. It will surely make your email more transactional and click-worthy.

Get this plugin

Making WooCommerce order management faster and better

Now, what if you want to add multiple new orders directly to your store or change order statuses in bulk? Creating hundreds of manual orders can be a really time consuming task.

But that’s where the Smart Manager steps in. It is our WooCommerce advanced bulk edit and order management plugin, popular for its exceptional features.

Smart Manager can help you update thousands of orders within seconds. So you can add, manage and bulk edit order details directly or using filters all from one place. Its Excel-like spreadsheet view makes managing orders a simple task.

But that’s not all. You can also manage products, coupons, users, blog posts, subscriptions and other WordPress post types directly from the plugin.

Smart Manager orders dashboard

Other key features:

  • Update or modify orders directly from the dashboard. For example, changing the order status from ‘Pending’ to ‘Completed.’.
  • Utilize the Bulk Edit feature to edit multiple orders at once.
  • Duplicate existing orders in one click or use simple Ctrl+C and Ctrl+V.
  • Delete multiple orders, individually or in bulk.
  • Export orders to CSV.
  • Utilize the Advanced Search filter to find required orders and edit them.
  • Customize the dashboard view by enabling the required columns and disabling the rest. For example, display only specific columns, such as order ID, name, address, product, order subtotal, etc. on the dashboard.
  • Undo bulk and inline edits.
  • View the customer’s lifetime value, last order date and contact details.
  • Print PDF invoices for your orders.

Try the live demo

Easy ways to manage orders with Smart Manager

Let’s now dive into the most useful use cases to utilize the plugin to manage everyday orders.

Adding new orders

Add orders manually with Smart Manager’s Add Row feature:

  1. Go to WooCommerce Admin > Smart Manager > Orders dashboard.
  2. Click the Add Row icon on the top bar. Add the number of orders (rows) you want to create and click Create.
  3. You can see the newly created rows at the top of the list. You can add the data now.

That’s it. Simple, right?

Bulk edit orders

Want to update multiple orders at once? You can change multiple order status from ‘Pending payments’ to ‘Completed’ with this feature.

  1. Go to the Orders dashboard.
  2. Use Advanced Search to filter orders.
  3. Click the Bulk Edit feature at the top left corner and set: Status > set to > Completed.
  4. Hover over the Update button. A drop-down menu will appear.
  5. Click Now for real-time status updates. Or, click Schedule for later for changes to become effective later.

And you’re done!

Update order directly (inline edit)

Smart Manager offers to edit orders directly from the dashboard, such as updating customer order status, modifying customer’s address, etc.

  1. Go to the Orders dashboard.
  2. Use the Advanced Search filter to find the desired order.
  3. Go to the Status column of that order. Click on it and a drop-down menu will open with multiple status options- Pending payment, Processing, On hold, Completed, Canceled, Refunded, Failed and Refund Requested.
  4. Update the status and Save.

It’s done.

Export orders

First, use advanced filters to display the required columns in the export file. Next, select orders and click the Export CSV icon at the top. It will download a .csv file to your device.

Duplicate selected orders

Do you need to duplicate certain orders for backup or special offers? Just select the orders you wish to make copies of. Now hover the cursor over the Duplicate icon at the top and click on the Selected Records.

It will duplicate all your selected records.

Delete specific orders

Deleting orders becomes necessary if you get a suspicious order or errors. Plus, technical glitches and accidental duplication can also create unwanted order lists.

Select the orders you want to delete. Hover the cursor over the Delete icon in the top bar and select either Move to Trash or Delete Permanently. Click on any one of the options and it’ll delete the selected orders.

Print order invoices

Invoices provide clear order information, help resolve disputes, track payments, manage inventory and work as a proof of sale for tax deductions.

Select orders from the order list and click the Print Invoices icon at the top. A new window will open with a print preview. Click the Print button to download order invoices to your device.

Conclusion

Manually adding orders to your WooCommerce store is a tiring process but is necessary. The advantage? It allows you to quickly spot mistakes and correct everything.

Further, when running special promotions or discounts, manual orders give you the flexibility to offer personalized offers to each customer. It ultimately helps you retain existing customers and increase revenue.

Plus, you can always take assistance from the Smart Manager plugin to manage all your orders in bulk and quickly.

Get Smart Manager now

The backstory

This was actually something a customer asked us for on support. We felt this will be useful to other WooCommerce users too.

P.S. Approaching our support is as easy as chatting with a friend. Do not hesitate to contact us if you have any questions!

55 thoughts on “How to Add Orders in WooCommerce Manually and Send Payment Invoice Link to the Customer

  1. Hi I saw this a few weeks ago and it has been working great till I updated to Woocommerce version 2.1.2. My customers are now getting an invalid order message when they click the pay button on the invoice. Any suggestions?

    Thanks

    1. We’ve re-checked it on WooCommerce 2.1.2 at our side & it is working perfectly. It is creating new order with valid Pay link.

      Are you getting any error message in apache error log. It might be due to compatibility with WooCommerce 2.1. Some of your plugins or theme might be conflicting.

      Have you followed proper steps while updating WooCommerce. You can communicate about this with WooCommerce team also.

  2. same for me. used to work, now does not.

    1. We’ve re-checked it on WooCommerce 2.1.2 at our side & it is working perfectly. It is creating new order with valid Pay link.

      Are you getting any error message in apache error log. It might be due to compatibility with WooCommerce 2.1. Some of your plugins or theme might be conflicting.

      Have you followed proper steps while updating WooCommerce. You can communicate about this with WooCommerce team also.

  3. Hi There. Useful information. I’ve noticed that the payment link has a ‘timeout’?

    This meaning that if a payment is not made within 2 hours, the order status changes to ‘Oh Hold’ and the link becomes invalid?

    I thought it was the stock management feature changing the order status, but that was disabled.

    Any ideas?

    Thanks,
    Mark

    1. Is this ‘timeout’ included in ‘pay’ link, we can’t see that? Have you selected any payment gateway while creating order?

      Can you please guide us in reproducing this case at our end, please tell us steps to create such order or you can provide us screenshot of such order, along with option you selected.

  4. Thanks for the reply. I have communicated with Woocommerce, but no one gets back to me.

    We seemingly have updated everything properly, and as of today, Still not leaving it in the customer account and still not generating invoices with links that work.

    It says that the order is “not a valid” order in the page that shows up for the customer.

    1. Do you have any testing site? Can we get wordpress admin account of it? If yes, please submit it from contact-us form https://www.storeapps.org/support/contact-us/ don’t submit it here.

      If you are getting any error in apache error log, please provide us that also. We’ll go through it & will check what is the cause of the issue.

  5. I used the above procedure. But here when user click on the Pay link in the invoice email it does not performs the actual payment procedure. I mean Paypal operation is not done when user redirect from invoice mail.

    Thank You

    1. When you click on ‘Pay’ link, where it is redirecting? Is it redirecting on PayPal? Or it is redirecting on PayPal, but further processes are not working well.

      Is PayPal working perfectly when you are purchasing any product directly from store? Can you please confirm whether PayPal is configured properly or not?

  6. Thank You it is done. But i have one more doubt . Will you please help me.

    I have certain requirement in woocommerce plugin. I want the new user to pay for the selected items after admin approve the order. That means user select products then add to cart and then just place order. After that admin approve the order and a payment link will be sent to the user mail account.

    Is it possible in woocommerce

    1. No, I don’t know about such plugin which can perform this kind of operation in WooCommerce.

      We have a product Offer Your Price, but it asks customer to offer their price & this request goes under review & when store admin approves it, a discount coupon is automatically generated & it is sent to customer so that they can purchase that product at their price. A dashboard for approval process is still under development but it’ll be soon included in the plugin.

  7. Thank you very much for this! It worked perfectly!

    @Bibudha, I have created a similar functionality to what you are looking for and I plan to make the process more automated.
    The way it stands now, I have a “Invoice” payment gateway that sets the order status to “on-hold”. The store manager then reviews the order and sets it to “pending” to approve it. At this point the “Pay” link is available and the store manager manually emails the customer that the order is ready to be paid. I plan on automating this email so that the customer gets an email saying their order is ready to be paid for with a link to pay. When they click that link they have the option to pay with PayPal or any other payment gateways enabled.

    If this is something you are looking for, then get in contact with me and I can provide you with a plugin when it is ready.

    Cheers,
    Tamara

    1. I would love to have this functionality, is there some code / plugin to automate it:

      – Customer loads an order, but when sending, it automatically goes ‘on hold’ or ‘pending’ (no payment option at this point’
      – customer is sent a message saying something like ‘thanks for your order reques, we will forward your order total with shipping costs shortly’
      – Admin adds shipping cost to order, and sends ‘customer invoice’ email with payment button.
      – customer clicks payment button, pays, and order processes.

      1. Currently, we don’t have any plugin also code for this.

        I think all other task is possible from within WooCommerce except first.

        For 1st point, we need to allow placing of order without any payment option.

        Even though these features are implemented, store admin will have to put a lot of effort in entering shipping & order total, sending email to customer.

        Consider a case where a lot of customer is placing such orders. Then you’ll need a manger to either automate this process or at-least give an easy user interface to manage these things

    2. Tamara, omg this is totally what my client is looking for, i was wondering if you ever managed to get this plugin working. please contact me regarding this. Happy to pay for plugin if needed.

  8. Hi,
    good article
    How do you make sure the exceptional pricing doesn’t default back to the normal one ?

    1. For one time orders, the price you set in the order will be the one customer will pay. For subscriptions, you would need to set up additional meta values. You may observe these in other subscription orders and copy them to the manually created order if you want.

      Did that answer your question??

  9. I made a new order for a customer following this tutorial but when the customer click on the pay button he receive a notice saying that “the cart is currently empty” and a return to shop button. what’s the problem?
    thanks

    1. This is months old, but I’m having the exact same problem and trying to figure out why it’s happening. The order is clearly there in the My Account page, the link to pay is there, paypal is working fine (non-manual orders are coming in fine), woocommerce just seems to think there’s nothing in the cart.

      Any clues what might be going on?

      1. Can you please send us URL link of ‘Pay’ button. You can get it by ‘Right-click on button -> Copy link address’.

        If you do not wish to make that link public, send it to support(at)storeapps(dot)org

  10. Is there a plugin that once I made all the orders I can bulk send all the mails with the links to all the customers without having to go one by one online ?

  11. Hi I hope you will still reply. I generate the invoice and payment link email ok but when I hit pay it says “This order’s status is “Pending Payment”—it cannot be paid for. Please contact us if you need assistance.
    Any help please

    1. Hi I’m having the same problem too:
      “This order’s status is “Pending Payment”—it cannot be paid for. Please contact us if you need assistance.”

      I know this is an old article but maybe someone has a fix?

  12. Hi, Its working fine for me too, Thanks.
    But is their any way to charge client credit card from admin panel directly.

    1. No, I’m not aware on any such feature or plugin which does this.

      1. Thanks for reply

  13. Hi team,

    Do you have plugin that can add order automatically (example add order all customer every month on 30th).

  14. I don’t know if anyone still reads this but I could use some serious help here! I tried sending multiple invoices to different people using the above method and each person gets a message that says there was a transaction error and the payment didn’t work. I would love to be able to utilize this method but I can’t get it to work. My payment processor works just fine on normal orders, it just fails trying this method. If anyone can help me that would be great. I’m not sure if this is a woo problem or my payment processor problem.

    1. I tested this with single order again on my machine & it is not giving me any such error.

      How you send multiple invoices to customer? Have you used any 3rd party plugin?

      Can you find the error generated are from which plugin & from which file and which line number?

      Which payment processor (gateway) you are using?

  15. I forgot to add that I checked my payment gateway page and the orders don’t even come up at all. It doesn’t show as an order at all, not denied, approved, or anything.

    1. Do you know about compatibility of your theme with WooCommerce? You can check this from WordPress admin menu “WooCommerce -> System Status”

      It might also be related to WooCommerce only. To verif this, deactivate all plugins except WooCommerce. Now perform same step again & check if the payment issue is still there.

  16. I have problem: the email does not contain the payment link… Just overview table, but no link to redirect to pay gate….

    1. Have you followed above mentioned steps exactly? Can you please mention version of WooCommerce?

      What is the order status when you are sending email?

  17. Is there any way to make the renewal order date equal to the payment date instead of the original failed payment order date. Our members payments have been failing due to the new chip cards, and if a member goes in 10 days later to select the pay button and complete the checkout, the order date shows the original failed order date, not the date that he paid for the renewal order. Our members think we are cheating them out of 10 or how ever many days when the payment is back dated to the original failed payment date (date the renewal order was created). We have all the updates for WordPress, woo commerce, and plugins up to date.

    1. Original failed order dates are shown by WooCommerce core. The same case can happen even when the order is not renewal order.

      So, this can be general use case & it’s a valid case. It would be best to submit this query to WooCommerce.

      If they’ll add it in core, it would be great, otherwise inform us, we’ll check whether we can add it as feature in our plugin or not.

  18. Hi friends,

    I am having a similar issue as someone posted above with my woocommerce store using Citrus Payemnt Gateway.

    The payment link generated after manual order shows up fine – but when I click on make payment, it redirects to an empty cart page and says ‘your cart is empty’

    Any help will be highly appreciated!

    1. Make sure you’ve followed above mentioned steps exactly & haven’t missed any step.

      On clicking the payment link it should redirect to payment gateway. If it is not going there, check payment gateway is setup properly & it is active & functional.

      If still it is not working, go to Contact us page & send us the payment link.

    2. Hello Ritesh,

      Could you please let me know how this problem is solved, I’m having the same problem

      Thanks in advance

  19. Just a clarification that might help some of you: The payment link is included in the invoice email only if order status is “Pending”. This means if the payment was cancelled, there is no payment link available. You need to change the order status to “Pending”, save the order, and then send out the invoice according to the instructions above. Then there will be a payment link in the email. Chers!

    1. Hi, need your help for the woocommerce feature you presented. Something is wrong with settings.
      I followed all the steps and manually as administrator created an order, the invoice was sent with the link, but when I open through the link the checkout page, the payment button “Pay for order” have no link under and not working for any payment option I choose, while when ordering as a customer everything works fine
      Here is link from invoice http://alllithuanianweekend.lt/checkout/order-pay/97/?pay_for_order=true&key=order_582b740be7914

      1. Hi Kestas,

        Pay for order button will not have a link but on clicking it a form should be submitted. I can see that, when I’m clicking on Pay for order button, nothing is happening. Also there’s no JavaScript error in browser console.

        First thing, make sure that order status is pending.

        Also, to verify that no other plugin or theme is conflicting with this functionality, temporarily switch to a default WordPress theme & temporarily deactivate all plugins except WooCommerce (it would be best if you’ll do it on staging/testing site). Check it again, if it works, it means either theme or some plugin is conflicting.

        To find out, switch back to your previous theme & re-activate your other plugins, one-by-one, keep checking if that button started working.

  20. Hi, i have e-commerce portal to provide the furniture and home appliances on rent basis.
    I want that after every month an automated email must go to customer to pay the rent.

    How is it possible with Woocommerce

    1. Hi Swayam,

      There are a few different solutions to what you want to achieve.

      1. You can use Subscriptions / Recurring Orders to create monthly orders. Then have people sign up to subscriptions using PayPal / Stripe etc. Their monthly rent payment will now be automatic. You won’t need to remind them.

      2. If your payments are not online, you may use an autoresponder email series for reminders – or use MailChimp or similar. You may even write a small custom plugin that sends payment reminders every month. Additionally, you can use the “Reorder” feature in WooCommerce. For faster checkout, combine few of our plugins – Renewals, Buy Now and Express Checkout.

      3. If the number of customers is not high, you may even do this manually!

      My recommendation would be 1st solution. Automate payments so you don’t have to worry about sending payment reminders!

      Hope that helps!

  21. I am attempting to use this functionality, but running into a problem. When the customer selects “Credit card” and clicks on “Pay for order” they get this message:

    Gateway Error: Billing Information missing REFID:3201046429

    I’m sure the billing address, etc is filled in completely – what else could this be?

    We are using WooCommerce Payline Data Gateway.

    TIA!

    1. As this is a gateway error, you should submit this error (Gateway Error: Billing Information missing REFID:3201046429) to WooCommerce Payline Data Gateway developers.

      They’ll be knowing possible reasons for this error. And they’ll help you resolve this error.

  22. Hello
    I’m using Woo Commerce Invoice Payment Gateway and when my rep clicks on the pay link in the invoice, she get’s the following message “Invalid order. If you have an account please log in and try again.”
    All of my other reps get a message that tells them that the order is still processing and can’t be paid for at this time. When I send them the invoice, the status of the order is Pending Payment so I don’t know when it changes to Processing because I am not changing the status. It must happen when they click on the link. How do I fix this because none of my reps are able to pay off the link from the invoice.
    Thank you.

    1. Is it happening on all products? What are the product configurations? Is there any plugin which is forcing all pending orders to processing status?

      1. That is because they removed the ability to make payments while not logged in as the original owner in the version 3.0 and after. It’s a shame and it’s affecting a lot of businesses. The only thing you can do at this point is downgrade your WooCommerce install.

      2. Is Guest Checkout enabled. I was able to successfully complete payment (in WooCommerce 3.0) when Guest Checkout is enabled under WooCommerce > Settings > CheckoutEnable Guest Checkout in WooCommerce

  23. I’m having the same issue with the payment link in my invoices.
    Upon opening Checkout page, error reads:
    Pay for order
    This order cannot be paid for. Please contact us if you need assistance.
    PLEASE HELP!

    1. Make sure that before creating order, you’ve created an account for the customer using their email address. Then create order & link the customer correctly under Customer on “Add order/Edit order” page.

      Also, make sure that the customer who is linked with this order is the one who’s trying to pay for the order. In short, the customer’s account, which is linked with this order, can only pay for this order. This order can’t be paid from any other account.

      If this is still not working, report it to our technical team directly from here: Open a ticket

  24. Hello,
    I’m looking for a plugin to order for customers and send them a payment link. Your plugin seems to be perfect but which one it is ?
    Thank you by advance

    1. This feature is available in the WooCommerce itself if you want to send payment link after creating order manually. If you don’t want to create orders manually, you can consider our Buy Now plugin.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.