When importing transactions into QuickBooks using Zed Axis you may encounter errors. QuickBooks will reject any transaction data that does not match or fit into the QuickBooks data format and requirements, it is important that this data is rejected as it minimises the chances of your company data file becoming corrupted.
We have suggested some best practices when importing data that will help to reduce the number of errors that you may encounter.
#1: Only map the fields you require
As a minimum for most types of transactions QuickBooks only requires a few fields to successfully create a transaction, for example the mandatory fields to create an invoice are Customer Full Name, & Item Full Name, QuickBooks will assume the transaction date, invoice number and quantity. By reducing the number of fields that you map will reduce the chances of Axis encountering an error like those described below when importing into QuickBooks.
#2: Update list values in QuickBooks
Many errors encountered are due to list items that do not existing in the QuickBooks company file you are importing into. For many transactions import types Axis will create CustomerJobs, Vendors, or Items that dont exist in QuickBooks, however less commonly used lists like Payment Terms, Classes, Templates etc are not automatically created so if the list data that is being imported into QuickBooks does not match then an error will be returned from QuickBooks. If you are transferring transactions from one QuickBooks file to another then, exporting the lists from one file and importing them into the new company file will reduce the changes of list items not being found.
#3: Check the format of your data
Some fields such as quantity fields, date fields, boolean fields, (ie. true or false) and enum fields (ie, billable, nonbillable or billed) require that the data be of a set format, if the data is not in the correct format then the import will fail and an error will be returned. For most of the import type transactions we have created a support article that describes each of the QuickBooks fields that you can map to, a description of the fields and the expected data format and length, if you are experiencing errors please check that the format of the data that you are trying to import that it conforms to the QuickBooks format.
#4 Minimise the use of special formating in Excel spreadsheets
If you are using a lot of special formating in Excel then Axis may not be able to read the data in the format that it needs to import into QuickBooks, please minimise or convert to plain data before importing into QuickBooks to minimise errors.
In this article some of the more common errors are described and resolutions to those errors are suggested.
QuickBooks found an error when parsing the provided XML text stream.
This feature is not enabled or not available in this version of QuickBooks
One of the fields that has been mapped is not available in your QuickBooks company file please unmap that field and retry the import more here
String too long - The string "fieldValue" in the field "fieldName" is too long.
The data value that you are trying to import into QuickBooks exceeds the maximum length permitted by QuickBooks please check the fields format requirements to determine the maximum length, reduce the length of you data and attempt the import again
Object not found - Object "fieldValue" specified in the request cannot be found
The data you are importing does not exist in the QuickBooks list and Axis cannot create a new list item, add the item to the list in QuickBooks to fix.
Object is in use - There was an error adding, modifying or deleting fieldValue because it is already in use
During the import Axis is attempting to add or modify a record, list item or transaction that is already in use by another user. The record may be opened by another user or a report is being run. Request that the user close the record or report and reattempt the import
Not authorized operation - There is no permission to perform this request, or the feature has been turned off in QuickBooks.
The user account that Axis is using to login to QuickBooks does not have sufficient permissions to preform the action, or the feature may not have been switched on in QuickBooks. Update the user account permissions, use the Admin account or activate the feature through the company perferences and then attempt the import
Missing required element - There is a missing element "fieldName."
Invalid Boolean - There was an error when converting the boolean value "fieldValue" in the field "fieldName"
The boolean value that is being imported is not in the correct format (ie true or false). Boolean values are commonly used for such fields as IsPrinted and IsEmailed, IsPending, please check that you are setting this as either true or false, if the field is mapped you cannot leave this a blank.
Unsupported enum value - The enum value "fieldValue" in the field "fieldName" is not supported by this implementation
The enum value that is being imported is not in the correct format (ie billable, nonbillable or billed). Please check that you are setting this as per the QuickBooks field requirements oultined in relevant article in the knowledge base, if the field is mapped you cannot leave this a blank.
Invalid date - There was an error when converting the date value "fieldValue" in the field "fieldName"
Please check the format of you dates are valid
Invalid amount - There was an error when converting the amount "fieldValue" in the field "fieldName"
Invalid price - There was an error when converting the price "fieldValue" in the field "fieldName"
Invalid quantity - There was an error when converting the quantity "fieldValue" in the field "fieldName"
Invalid percentage - There was an error when converting the percent "fieldValue" in the field "fieldName"
Unknown employee time status - Failed to save the Time Tracking transaction. The employee "fieldValue" provided in the TimeTrackingAdd request has the checkbox "Use time data to create paychecks" set to the Unknown state. Have your application ask the user whether or not to set time tracking for this employee. Then issue an EmployeeMod request to set this option to either True or False. If True, activities will be transferred to paychecks
By Steve Batten