My solution would be to read frames from a smartphone's camera until a barcode is detected. This can be achieved with eg Firebase ML, on-device. If a barcode database lookup gives a product, put it on the in/out list. If not, send the frame to a product recognition vision service. This could be Google Cloud Vision AI, but they don't give you access to their product set that backs Google Lens.
Finally, provide controls to adjust the number of items on the in/out list
I thought about OCRing supermarket receipts too but these differ so greatly in layout etc. per country I figured it's not the way to go
Edit: Problem you run into as not all of this can be done on-device is privacy concerns of coursem just my thoughts on what interface I'd like to have
I just tested Product Open Data using the barcode from a can of Coconut Milk from my cupboard, and it returned the correct product (including a photograph) and the name of the brand and their owner.
Edit: updated to add Open Food Facts, given that Open Product Data appears no-longer-maintained
Do you know of any alternative data sources?
Edit: since writing these comments, I've learned that Product Open Data may be unmaintained.
 - https://discuss.okfn.org/t/can-we-resurrect-product-open-dat...
I did try Open Food Facts which correctly identified the same product for me -- and allows anyone to enter missing products, a bit like Wikipedia.
User /u/homarp mentions an app which can integrate Open Food Facts with Grocy.
 - https://world.openfoodfacts.org/
 - https://news.ycombinator.com/item?id=22648741
People usually shop at the same places and the same things, so they could identify the products in the receipts once and then only update the new ones. Also,You could crowdsource it.