I am currently in the process of integrating my php website with the desktop version of Quickbooks. The application resides on a remote computer and will need to remain in sync with the mysql db on my server. After a great deal of research it appears my two options are:
In regards to the first option, I can't seem to find any resources indicating that it's possible to query all items from the quickbooks db. This would be ideal as I could periodically query the remote quickbooks application for all items and insert ones which have been added/updated. It looks like the xml requests for querying require you to specify the item your querying. This will not work for what I have envisioned. As we are not making any orders from the website and only displaying current items/customers maybe the web connector is not what I need.
This brings me to my next option, manually parsing csv files from the application. I don't mind this as its more straight forward than setting up the php dev kit to talk to the web connector but requires manual intervention to export data files from quickbooks.
Does anyone have experience in accomplishing this task/automating the syncing of data between quickbooks desktop and a remote php website?
Any and all comments/suggestions are appreciated, Thanks.
In regards to the first option, I can't seem to find any resources indicating that it's possible to query all items from the quickbooks db.
This is definitely very do-able.
Here's a full blown example of doing it:
(that example can also import all invoices, all customers, etc. - but you could slim it down if you wanted to just do items)
It looks like the xml requests for querying require you to specify the item your querying.
No, they do not require that you specify an item. You can choose to filter things or not.
See the full syntax reference here:
If you look up ItemQuery, you can specify an item name if you want... or if you don't want to specify any criteria at all, that's fine too. If you specify a name to filter by, it filters items by that. If you don't specify any filters, you get back everything.
This brings me to my next option, manually parsing csv files from the application.
Yuck. :-)
Does anyone have experience in accomplishing this task/automating the syncing of data between quickbooks desktop and a remote php website?
Yes, lots. It's not terribly difficult.
Follow the quick-start guide but substitute the _import.php script instead since you want to import data to MySQL instead of add/update stuff in QuickBooks:
If you follow the quick-start you should be up and running within a half-hour. We have support forums too: