Product Help Documentation - NopAdvance

NopAdvance Store

Receive stock - Purchase Order Inventory Management

Buy Now

Once a purchase order is created,the Receive Stock allows users to confirm and record the receipt of stock items associated with a purchase order (PO). 

Receive stock interface in PO Inventory Management

After you’ve received stock from your supplier, follow the below steps:

  1. Edit the purchase order for which you want to receive stock.
  2. On the purchase order edit page, click on the “Receive stock” button.
  3. Clicking on the “Receive Stock” button will redirect you to the “Add stock details” page as shown below.

🧮Add Stock Information:

  1. Received Date: Update the date when the products were received from the supplier.
  2. Supplier Invoice #: Enter the invoice number provided by the supplier for this shipment.
  3. Supplier Invoice (Upload File): You can upload a copy of the supplier's invoice for record-keeping purposes.
  4. Admin Comment: Add any internal notes regarding the stock, such as any issues during the receiving process or additional instructions.
  5. Products: The store owner must input the quantity and price of received items and save in order to complete stock in-ward entry.

🤖 Fulfillment workflow

🧬Product Attributes and Warehouse Handling

The plugin fully supports:

  1. Products with both Inventory methods, track inventory and track inventory by product attributes while adding a product to the PO.
  2. Products with no warehouse, single warehouse and multiple warehouses.

To ensure seamless functionality, the following conditions and processes are enforced while receiving stock for a product:

  1. If a product inventory method is set to “Track inventory by product attributes”, then products with attribute combinations are treated as distinct product variants per attribute combination so you could receive stock per product variant.
  2. If a product inventory method is set to “Track inventory by product attributes”, and the product doesn’t have attribute combinations then you won’t be able to add stock to those products.
  3. In case if a product has attribute combinations, but the inventory method is set to “Track inventory”, then the stock will be received in the base product and there won’t be separate line items per product variant.
  4. Products using multiple warehouses are treated as distinct product line items based on the number of warehouses mapped with that product.

Purchase Order Statuses

Pending

  1. This is the default status when a PO is first created.It means that the order has been placed but no stock has been received yet.
  2. If even one product is under-received while adding stock, the PO will be in Pending status unless manually set to “Fulfilled” or all quantity in the PO is received.

Fulfilled

  1. A PO is automatically set to Fulfilled when the received quantity is equal or greater than the ordered quantity for all products in the PO.
  2. This status can also be forcefully set by clicking on the “Set as fulfilled” button.
  3. Once a PO has been marked as fulfilled, no further stock receiving is allowed in that PO.

Cancelled

  1. A purchase order can be manually cancelled by the user by clicking the “Cancel” button.

Deleted

  1. When a PO is deleted, it is not permanently removed from the system. 
  2. Although the PO is not physically removed, it is hidden from regular users. 
  3. Use this option when you want to remove the PO from active workflows but retain its history for future reference.

Auto Fulfillment Rule:

  • The PO status automatically updates from Pending to Fulfilled only when:
    • Total received quantity >= ordered quantity for all products.
    • If received quantity is greater than ordered quantity, it is not counted as pending.
    • If partial stock is received (even 1 item less), status remains Pending.
  • Once the stock is completely received, status becomes Fulfilled.
  • Manual Fulfillment overrides auto status even if quantities don’t match.
  • Manual fulfillment can be used only in case if you don’t want a pending PO but also don’t have the option to delete or cancel it.