RE: Best ways of integrating NAV with a Sales System
I have used both the options with few of our clients. however as for my understanding best way is to use first option, that is using webservices.
Reasons
01. Once you use the webservices you can directly retrieve the errors if there is any error in the invoice.
02. You do not have to handle any transactions since NAV itself handle them for you.
03. You do not have to write any extra insert or update TSQL statements since NAV handle them with webservices.
04. Very easy to integrate, You just need to expose the sales order page as a webservice and then pass the values to the page.
05. You do not have to do much modification in NAV ( if you use intermediate tables in NAV then you have to run a report, or query to batch process the invoice, or else you need additional coding to make it real time.)