Adding Shipping To Customer's Invoice and Completing the Order

HomeForumsPre-Sales QuestionsAdding Shipping To Customer's Invoice and Completing the Order

This topic contains 4 replies, has 2 voices, and was last updated by  Stephen Sherrard 2 years, 7 months ago.

  • Author
  • #15144

    Harvey Norman


    If I understand correctly, the whole idea of “Disable Wholesale Payment”, “Wholesale Pending” etc is so we can add shipping cost to orders customers have made but not paid. If so, this is exactly what I’ve been looking for. Can you please answer some of the questions, I wish to know how an order is completed if Wholesale Payment is disabled.

    1. Customer makes a new order (can’t pay because “Disable Wholesale Payment” is ticked), order is now in “Wholesale Pending”.
    2. To add shipping cost, I would change order status to “On Hold” so I can add additional charges to the order (or is there an easier way?).
    3. Once shipping is added, I need to notify customer to make payment. How would you do this?

  • #15146

    Stephen Sherrard

    No, your understanding is not correct. Disabling payment is completely independent of shipping. There is a separate setting where you can disable shipping calculations for Wholesale Customers. Has nothing to do with whether or not payment is disabled.

    The main purpose of disabling payment for Wholesale Customers was so that their orders can be treated as a “Purchase Order” where they don’t need to pay for an order until you are ready to ship, or whatever your payment terms happen to be for B2B sales. It’s quite common in B2B sales to not require payment at the time of order. The “Wholesale Pending” status was added later as an easier way for you to pick out the wholesale orders that haven’t been paid for in your list of orders. Also, that status was added since if you check the option to disable payment, the wholesale orders would be set to the “Processing” order status by default, as if payment was already completely (which it has been according to the WooCommerce logic, since no payment was required at checkout). So, the “Wholesale Pending” status was added to also bypass that default WooCommerce logic.

    Also, in one of the more recent updates, the “Wholesale Pending” order status was added to the WooCommerce list of statuses where customers are allowed to pay from their “My Account” page. So, if they are not required to pay at checkout, and you enable the Wholesale Pending order status, then if they go to their My Account page and view their orders, any orders that haven’t been paid yet will have a “Pay” button next to them. Clicking that button will then take them to the checkout page where they can pay for the order with whatever payment gateway you have active (this has been tested and works with this “Pay” button even though you have payment disabled in the wholesale settings).

    If you want to disable shipping for Wholesale Customers so that shipping charges are NOT automatically calculated at the first checkout (where no payment is required), that can still be done. Then you can edit the order at any time and add shipping charges manually if you prefer to do it that way for some reason. At this time, it appears that you need to change the order status to the regular “Pending”, or some other status to be able to add shipping or other charges to the order, as the “Wholesale Pending” status does not appear to allow you to edit or add any items in the order (I will look into changing that in a future update, so you can edit the order). If this is what you are trying to do, I tested it by making an order which was set to Wholesale Pending by the settings, then I edited the order, changed the status to regular “Pending”, manually entered a shipping charge, then set it back to “Wholesale Pending” (just to test). Then, when I went to the My Account page and click on the “Pay” button for that order, the shipping charge I manually entered was still there (even though shipping is still disabled in the wholesale settings). So, you can do things this way if you want, or you can have shipping automatically calculated but still bypass payment at the original order checkout. Either way works fine.

  • #15483

    Harvey Norman

    Thanks for your clear explanation. I should have explained why I needed to disable payment during checkout. For a wholesaler shipping mainly overseas, couriers and costs are always different, we can’t set a fixed cost per item, per shipment or automate shipping calculation. We’d check the shipping cost(through a courier price quote system) then add them into the customer’s order before payment.

    Let me just go through the process and see if this works or not.
    1. Customer makes a new order (can’t pay because “Disable Wholesale Payment” is ticked), order is now in “Wholesale Pending”.
    2. To add shipping cost, I will change order status to “Pending” then amend.
    3.Once completed, to request payment from customer, I will send customer invoice through “order actions” dropdown.
    4. Customer receives email, proceeds to My Account to make payment. Order status becomes “processing” after submitting.
    5. Payment is confirmed. I will add tracking details ( with the help of a shipping tracking plugin ) then mark order as complete so customer knows it’s shipped with tracking details. ORDER COMPLETED.

    Question: Instead of changing it to “wholesale pending”, I will use the custom “request payment” email. When order status is not “wholesale pending”, will the “pay” button be there?

    • This reply was modified 2 years, 7 months ago by  Harvey Norman.
  • #15486

    Harvey Norman

    Sorry, couldn’t edit my previous post anymore.

    Please ignore the last 2 lines, “Question: Instead of changing it to “wholesale pending”, I will use the custom “request payment” email. When order status is not “wholesale pending”, will the “pay” button be there?”.”

    Just a correction on step 4, when customer receive the woocommerce invoice email, there is a quick link to complete payment, it’s not My Account.

  • #15492

    Stephen Sherrard

    Yes, your list of actions should work. If you have something in your special email that already has a payment link, then you should be OK. Otherwise, as long as you set the order status to one of the ones that is set to show a pay button on the My Account page, you should be OK. There are only two built-in statuses that allow payment from the My Account page, which are “pending” and “failed”. So, if you are changing the status to the default “pending” status to edit the order, you could just leave it in that status, or switch it back to “wholesale pending” after you finish adding the shipping charges, and they would be able to pay via the My Account page.

    Regarding #2 in your list, the next release of my plugin will set it so that “wholesale pending” orders can also be edited (so you won’t have to change back to regular “pending”). It may be a week or more before that version is released as I’m still working on modified functions and compatibility with the upcoming WooCommerce 3.0 release, which is the bulk of what my next updates will be handling.

You must be logged in to reply to this topic.