When exporting invoices to QuickBooks, the export fails with an error: System.Runtime.InteropServices.COMException (0x80040301): An exception occurred! Type:UTFDataFormatException, Message:invalid byte 1 (’) of a 1-byte sequence.SAXParseException: error at line XXXX, column XX in XML data.
This is due to an invalid character in the customers' list of QuickBooks. This issue is seen with the newer sdk version for the Quickbooks desktop connector. Other applications similar to our PSA has reported this issue stemming from Quickbooks.
The sync tools throws an error as it logs an invalid ASCII character somewhere in your data. This could be in your customer name, company name, address, etc
The log shows the error to be a curved single quote. (’). There is a very minute difference between the closing quote and the straight quote ('). The easiest way to fix this, to look for single quotes, delete, and then just put a new single quote from the keyboard, to take the correct ASCII.
Use the following steps to see the records with the incorrect quote.
- Log in to QuickBooks as Admin
- Open Preferences from the Edit menu
- Select Integrated Applications in the list on the left
- Click the Company Preferences tab
- Select QuickbooksConnector in the list and click Properties
- Check the Allow this application to access Social Security Numbers, customer credit card information, and other personal data option and click OK to close the properties window
- Click OK to close the Preferences window
- Switch back to Quickbooks connector and Synchronize again
- You will no longer see the error instead you will see the data to be exported, but with a question mark in the names where the invalid character is present
- Open the record where the character is seen and edit the customers with this invalid character
- You have to fix these records and then import to match for an account in PSA
- If you import the data with the question mark, new items will be created in PSA as there is no existing data to match with PSA
ASCII for the quotes to see the difference