• Resolved nmballa

    (@nmballa)


    I believe that your plugin will work with some modifications but want to check with you first before I commit to purchasing.

    I am essentially looking to customize the quantity split so that in the edit order screen I can manually split quantity of individual line items and automatically populate the meta data so my sales or shipping person does not need to enter the meta data to perform the split.

    Example:

    Order 0001 (status processing)

    Item A: qty 25
    Item B: qty 10
    Item C: qty 12

    User applies enters the quantity of each line item being processed and shipped.

    Order 0001-1 (status complete)

    Item A: qty 12
    Item B: qty 5
    Item C: qty 12

    Order 0001-2 (status backorder/still to ship)

    Item A: qty 13
    Item B: qty 5

    Also, if this is something thats doable we would appreciate documentation on where we can reference certain parts of code rather than digging by lines as we would want to trigger (assumption is you are using hooks) split action in certain events. For example on the edit order page we will be adding after the edit order “Qty” a shipped qty input box that will be prepopulated by the qty ordered. At the bottom of the order we will have a button that sets order status to “complete” on click. If the user has changed the shipped qty input box to anything other than the qty ordered and click complete button we want to trigger the split action, creating the two orders from the example (0001-1 and 0001-2), setting order 0001-1 status to complete and order 0001-2 to backordered.

    In addition is it possible to automatically split by category and then split a child order manually as per above? One category will be dropped shipped by our vendor while other categories will be shipped from our facility.

    All this we can certainly work out but obviously not having to dig would make things simpler.

    Let me know if the above is feasible.

Viewing 7 replies - 1 through 7 (of 7 total)
  • Thread Starter nmballa

    (@nmballa)

    Also, is it possible to set the default split by category vs. individual product? Category A, Category B, Category C. Category A and B should always be inclusive. Any order containing category C should always be exclusive but should still be split in to one child order containing all quantity ordered of category C.

    Thread Starter nmballa

    (@nmballa)

    Digging further it appears there is no way to group line items in to new child order if manually splitting. Again reference my example above. This would be a requirement for us and it appears from a few posts others are looking for this. Is this something that is in development and if so how far out are we looking for release?

    Plugin Author Fahad Mahmood

    (@fahadmahmood)

    @nmballa many questions in just one post. I will try to wrap everything in this message. You are requiring a mix of quantity split and category based grouping. You are expecting settings field somewhere on product or category section where you can define the qty. split meta so manual insertion can be avoided on order page. You are also looking for further splitting a child order. I hope I have covered all of your requirements here.

    Now I explain just one challenging part here, when someone place an order so we are not sure about the qty. they will order. That’s why qty. split with a certain number in combination from Category A, Category B, Category C are not yet introduced and implemented. Unit splitting x1 is available but as you described is a kind of exact qty. numbers. Can you please explain more? Don’t worry, we feel really good when someone comes with a new idea to stretch our minds for a new split method possibility.

    P.S. We are always available to discuss about new features. Doesn’t matter it is related to advanced or basic version.

    Plugin Support danialcooper

    (@danialcooper)

    @nmballa you can custom split on basis of quantity. There are three options in quantity split.

    1. Default (All qty. to x1)
    2. Custom (Split only defined values)
    3. Eric Logic (Selected+Defined items/quantity into new order)

    You can use Custom (Split only defined values) to make it work for you scenario.
    Video Tutorial

    For example user ordered the following quantities

    • Beanie x4
    • Gloves x7

    Add meta on order edit page by editing item as shown in the screenshot. Save items and select Split Order from order actions then click the arrow to perform a split.

    You will receive two order one with the following quantity:

    • Beanie x3
    • Gloves x5

    And other with the following quantity:

    • Beanie x1
    • Gloves x2

    After the split you can change order status as per your requirement.

    Before split make sure to turn OFF Auto Split from General Settings tab.

    Thread Starter nmballa

    (@nmballa)

    Hi Fahad,

    I think I may have thrown too many questions at you at once rather than just focus on the one that is of the most importance to our workflow. Per danielcoopers comment it appears that what we aim to do is possible.

    Here is a bit of an in depth look at what our workflow would look like.

    We are b2b selling to specific segment of manufacturing industry. Our top 20 products we expect to see inventory turn on a weekly basis. Our customers will order the product to either inventory on their end, order for several jobs flowing through their production, or by individual job. Many customers will order on next day air delivery as they may receive rush orders or may have missed ordering for a particular job.

    This means that we have to manage our stock commitment/promised manually. We may have qty 100 in stock but have multiple orders for total qty 50 but expect another order shortly for another 100 but still have to maintain inventory for any rush orders coming in. So we will short ship qty in order to fulfill existing orders, backorders, and potential future orders till our next inventory replenishment arrives. This is why using the default backorder and stock level in woocommerce will not work for us. This in turn leads us to why we need to be able to split order by qty manually.

    In addition we have a particular category that will always ship freight due to size and weight restrictions of most parcel shippers. This category of product we will initially have our supplier blind ship on our behalf. So we would automate this category to always split out as a child order. We can handle this by just scripting that if an order contains this category or product turn on “Auto Split” and apply split so that exclusive category or product is split in to child order. Then reset split_status custom field back to “0” in the event that any of the other product needs to be short shipped as per above. And finally turn off “Auto Split”. Then the shipping person can short ship remainder order if required.

    Example:

    Order 0001 (status processing)

    Item A: qty 25
    Item B: qty 10
    Item C: qty 100

    Script (pseudo):

    function(checkNewOrderCategoryC) {

    var newOrder = wc_new_order;
    var autoSplit = auto_split;
    var splitStatus = split_status;
    autoSplit = 0;

    //wc_category_c is always exclusive so will be split to new order

    if (newOrder.includes(wc_category_c)) {
    autoSplit = 1;
    split();

    if (splitStatus == 1 && autoSplit == 1) {
    splitStatus = 0;
    autoSplit = 0;
    }
    }

    else {
    autoSplit = 0;
    splitStatus = 0; //redundant reset to “0”, just in case.
    }
    }

    Result:

    Order 0001-1 (status processing)

    Item A: qty 25
    Item B: qty 100

    Order 0001-2 (status processing)

    Item C: qty 12

    The user now needs to review Order 0001-1 to determine if they need to short ship. Since split_status should have been set to “0” the user can manually split as needed.

    We would also script that any time a manual qty split is performed the second child order_status is always set to “backordered”.

    User performs the qty split manually and the final result may look something like this.

    Order 0001-2 (status processing)

    Item C: qty 12

    Order 0001-3 (status processing)

    Item A: qty 13
    Item B: qty 10

    Order 0001-4 (status backordered)

    Item A: qty 12
    Item B: qty 90

    We would script in to the edit order page a “qty shipped” input field that only accepts numeric input and is initially set to the qty ordered. At bottom we would place a “update” button that when clicked would change order status to “complete”. Once order_status is “complete” we would push to our inventory system and reduce our inventory by this amount.

    In the event that any line item has “qty shipped” value changed to other than the qty ordered we would apply the split action on “update” button click and then set order_status to “complete” on the first child order created and “backordered” on the second child order.

    The second order which has order_status “backordered” could then be qty manual split again if user needs to fulfill another partial shipment of any qty. And so on.

    Since we are only every qty manual split by 1 order we would populate the meta “qty shiped”:”qty ordered – qty shipped” in the event the “qty shipped” field has changed.

    Hope this isn’t too much info but it is the workflow that we expect to implement. So any documentation that could be provided for us to quickly implement would be appreciated.

    • This reply was modified 3 years, 2 months ago by nmballa.
    • This reply was modified 3 years, 2 months ago by nmballa.
    • This reply was modified 3 years, 2 months ago by nmballa.
    • This reply was modified 3 years, 2 months ago by nmballa.
    • This reply was modified 3 years, 2 months ago by nmballa.
    Thread Starter nmballa

    (@nmballa)

    Also, I do not believe that we are a unique scenario. I think this is a very common practice of how to handle this and would definitely be a functionality that could drive sales for your plugin. We implemented this type of functionality in magento and magento derivative product in the past for previous ecommerce stores.

    Thread Starter nmballa

    (@nmballa)

    Sorry my example above original order should have been;

    Item A: qty 25
    Item B: qty 100
    Item C: qty 12

Viewing 7 replies - 1 through 7 (of 7 total)
  • The topic ‘Presale question’ is closed to new replies.