Notion Template: Inventory Management System
Three Databases And How Properties Relate
The first database collects every product and provides the location of the product within the store plus the product’s inventory information.
Product Location
Location Formula grabs Zone, Row, Rack & Shelf the product is placed in the store. Here is the breakdown in order to manipulate the formula to fit your needs.
prop("Zone") + " " + "Row" + " " + prop("Row") + ", " + "Rack" + " " + prop("Rack") + ", " + "Shelf" + " " + prop("Shelf")
prop("Zone") + " ": The value inside property Zone + blank space
+ "Row" + " " : The text “Row” + blank space
+ prop("Row") + ", ": The value of Row + comma and blank space
+ "Rack" + " ": The text “Rack” + blank space
+ prop("Rack") + ", ": The value of Rack + comma and blank space
+ "Shelf" + " ": The text “Shelf” + blank space
+ prop("Shelf"): The value of Shelf
Inventory Information
Current Inventory Formula: "Starting Inventory" + "Inventory Received" - "Inventory Sold"
prop("Starting Inventory") + toNumber(prop("Inventory Received")) - prop("Inventory Sold")
Status Formula:
Whenever "Current Inventory" is 0, negative, or below "Min.Required" → "⭕️⭕️⭕️"
Whenever "Current Inventory" is less than 25 from "Min. Required" → "🔆🔆🔆"
Otherwise, "✅✅✅"
if(prop("Current Inventory") <= 0 or prop("Current Inventory") < prop("Min. Required"), "⭕️⭕️⭕️", if(prop("Current Inventory") - prop("Min. Required") <= 25, "🔆🔆🔆", "✅✅✅"))
Purchases
In the second property, you can grab the Products purchased in each transaction from the product database above.
Refunds
In the first property, you can grab the Purchase ID a given refund derives from Purchases database. In the second property, a rollup will automatically fill the products associated with the refund. More about the refund database here.