New to Ethereum and smart contracts, so I apologize if this question isn't really hitting the target. Here's my problem:
I want person A to create a product and sell it to person B. Person B then sells it to person C. Person C then sells the product off chain and relinquishes ownership of the product for stock-keeping purposes.
The product can exist in an indefinite quantity, so I would like to be able to track, for example, that person B owns 20 units of product 0152 and 5 units of product 1234, then sells 5 units of product 0152 to person C, who later on declares they no longer own it.
The reason I want these transactions on the blockchain is so that they are publicly viewable and auditable, so everyone knows how many units were sold, what the price was, and who the parties were.
Can this be implemented with smart contracts? How can I track how much of each product each person owns?