magento / magento/community-features

Backorders fulfillment improvements

Open
#200 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Priority: P3 Requires PO triage
Dominant language
No language data
Stars
46
Forks
14
PR merge metrics
No merged PRs in 30d

Description

Description (*)

The current behavior of Magento 2.3.1 when it comes to fulfilling backorders doesn't allow for efficient fulfillment, even less for scaling.

There are two areas of improvement.

  1. When an order is received that contains products that are entirely or partially out of stock, it is very easy for the operator to attempt to ship the order including all products ordered. Magento throws an error "Not all of your products are available in the requested quantity". Unfortunately this error message has little value to the operator because it doesn't inform what product(s) have insufficient stock, nor the amount of that stock.

The operator's only option is to check each of the products ordered, one by one, to find out which ones are out of stock, or in insufficient stock, and then manually adjust the quantity to be shipped.

  1. After the order has been partially shipped, its status remains as Processing. When viewing all orders there is no way to identify backorder orders. This creates a problem because the operator will have to be constantly checking all Processing orders just to find out that there is no products in stock available.
Expected behavior (*)

My suggestions are the following:

  1. On the "New Shipment" screen, under "Products to Ship" the table should include a column that shows the current product inventory quantity. This will a tremendous improvement for operators. Other enhancements that can be considered are:
    a) Automatically adjust the quantity to ship for a product to equal the current inventory quantity when the current inventory is less than the order quantity, and
    b) Use colors or labels to call attention to backorder products.

  2. On the Orders list screen, add a column (and matching filter) that indicates whether any products pending to be shipped can be shipped now. I can think of 4 possible statues:
    a) All pending products are available can be fulfilled now,
    b) Some of the pending products can be fulfilled now, and at least one pending product is available in the full quantity ordered,
    c) Some of the pending products can be fulfilled now, but none of the products is available in the full quantity ordered
    d) None of the pending products can be fulfilled now

Benefits

These enhancements will greatly increase the productivity for operators handling fulfillment of backorders. This will empower them to make decisions on how to handle backorders, and be able to ship them as soon as product is back in stock.

In regards to the statuses for suggestion Nbr.2 you may wonder why having the nuanced distinction between products available in the full quantity ordered. The reason I include this is because some businesses that accept backorders need to ship all products of one type in a single shipment. If we don't provide this specific status option, this feature will not be useful to them.

Additional information

This issue was originally opened here https://github.com/magento/magento2/issues/24816

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the original Magento issue linked in the additional information, then trace the New Shipment and Orders list screens described here. Done means the proposed backorder inventory visibility, shipment guidance, and pending-fulfillment status/filter behavior are defined and implemented across both workflows.

Written by the indexing model from the issue text.

Assessment

Domain
full-stack
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.