Assaign bulk product to sales person and receive returned products and cash at the end of the day

Our business has following process:
We assaign bulk products to a sales person daily in the morning and at the end of the day, they return the left overs to the stock and cash to the cashier.
Is there any way to handle this through erpnext?
Create a memo in the starting point.
Deduct the left overs from the assaigned products and enter the cash against sell.
Please also consider the feasibility of allowing sales persons to create sales invoice against their territory customers.

would solve your issue if you assing each sales person a warehouse for inventory control? make a stock transfer in the morning and at the end of the day each sales person create a sales invoice for all items sold, create a account for cash recived for each sales person also and make a cash transfer at the end of da day to your cashier account.