I have asked a similar question to this previously
Communicate with Cash Drawer from Website
However the question was very vague and I now know what I requir
If you have access to the machines where your product is deployed, you can use NaCL and start chrome with --no-sandbox command-line flag and use the following environment variable:
--no-sandbox
set NACL_DANGEROUS_ENABLE_FILE_ACCESS=1
More info on this blog
The other option is NPAPI.