...I know this is doable for a reasonably experienced and skilled developer. I've worked in the logistics industry for several years and I've seen numerous home-grown barcode scanning systems designed and implemented by small teams (1-3 developers). Look at PointeWare (http://www.pointeware.com) as a starting point for a reasonably priced hardware + java api solution. It works with existing Motolora hardware which is easy to use, well supported, and cheap.
Still, unless you see an opportunity to do something that hasn't been done and you think there is a market to sell your system to additional customers OR your client is
/very/ patient or taking this project on as a semi-charitable engagement then seriously think twice about doing this on your own. I've learned that barcoding, while a nice idea, is one of the finickiest and error prone technologies out there. Remember that barcodes are printed on paper and usually involve some degree of human intervention to match the right barcode on the right product. Barcodes are physical objects and are prone to damage and wear. The data capture mechanism is semi-manual which is also error prone. While your product may work well in the lab it is almost certain that you will run into unforseen problems dealing with things like:
- symbologies - not all barcodes are encoded in the same format
- encoded data - not all information on all barcodes are the same - some are EIN numbers, others are SKU's, and on and on
- hardware incompatibilities - barcode scanners are NOTORIOUSLY unreliable and the manufacturers are notoriously bad at fulfilling orders
- programming quirks on limited memory devices - forget about indexed databases - even commercial products like M$ PocketSQL quickly become major bottlenecks in performance
- concurrent use locking nightmares - your system will require either real-time wireless communication with an in-store server or a sophisticated offline locking strategy to ensure data integrity when dealing with concurrent users. Yes, it's likely that there will be more than one user scanning data at one time
It is very likely that this system will be a huge time sink and financial loss for you.