diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm
index dc227176ea7..95b05cef6f5 100644
--- a/code/game/machinery/vending.dm
+++ b/code/game/machinery/vending.dm
@@ -169,6 +169,13 @@
usr << "\icon[src]Unable to connect to linked account."
else
usr << "\icon[src]Unable to connect to accounts database."
+ else if(src.panel_open)
+ for(var/datum/data/vending_product/R in product_records)
+ if(istype(W, R.product_path))
+ stock(R, user)
+ del(W)
+
+
else
..()
@@ -428,6 +435,14 @@
src.updateUsrDialog()
+
+/obj/machinery/vending/proc/stock(var/datum/data/vending_product/R, var/mob/user)
+ if(src.panel_open)
+ user << "\blue You stock the [src] with \a [R.product_name]"
+ R.amount++
+ src.updateUsrDialog()
+
+
/obj/machinery/vending/process()
if(stat & (BROKEN|NOPOWER))
return