List of QuickBooks Error Codes

The QuickBooks server processed the request successfully.

Status OK.

1

No match.

The filters used in the query request did not return any matching objects from QuickBooks.

* You'll get this error message if you issue a query of any type, but the result set is empty. Instead of just returning an empty list of objects, QuickBooks returns this error message. This is similar to error code 500, so see that error code for more details.

500

One or more objects cannot be found

The query request has not been fully completed. There was a required element(“fieldValue”) that could not be found in QuickBooks.

  • This generally means that you've send a request to QuickBooks which refers to an object that doesn't exist. So, for instance, you might have sent the following qbXML request:
<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="4.0"?>
<QBXML>
	<QBXMLMsgsRq onerror="stoponerror">
		<InvoiceAddRq>
			<InvoiceAdd>
				<CustomerRef>
					<FullName>Keith Palmer</FullName>
				</CustomerRef>
				...
			</InvoiceAdd>
		</InvoiceAddRq>
	</QBXMLMsgsRq>
</QBXML>

If a customer named “Keith Palmer” does not already exist within QuickBooks, you'll get a 500 error indicating that the customer named “Keith Palmer” does not exist. Create the customer first, then you can send this request.

501

Object not in this qbXML specification

Unable to represent objectName “fieldValue” in this version of the qbXML spec.

510

Object cannot be returned Unable to return object.

530

Unsupported field

The field “fieldName” is not supported by this implementation.

531

Unsupported enum value

The enum value “fieldValue” in the field “fieldName” is not supported by this implementation.

550

Cannot save notes

The objectName object was saved successfully, but its corresponding Notes record could not be saved.

560

Deprecated field used

This field will not always be supported.

570

Cannot link to transaction

Unable to link to transaction “fieldValue” because it has already been closed.

600

No cleared state to return (For error recovery; no message is returned.)

1000

Internal error

There has been an internal error when processing the request.

1010

System not available

System not available

1030

Unsupported message

This request is not supported by this implementation.

1060

Invalid request ID

The request ID “fieldValue” is invalid, possibly too long, max 50 chars.

3000

Invalid object ID

The given object ID “fieldValue” in the field “fieldName” is invalid.

3010

Invalid Boolean

There was an error when converting the boolean value “fieldValue” in the field “fieldName”

  • You should send booleans as string values “true” or “false”

3020

Invalid date

There was an error when converting the date value “fieldValue” in the field “fieldName”

3030

Invalid date range

Invalid date range: From date is greater than To date.

3031

Invalid string range

The “From” or “To” values in the provided fieldName are invalid.

3035

Invalid time interval

There was an error when converting the time interval “fieldValue” in the field “fieldName”

3040

Invalid amount

There was an error when converting the amount “fieldValue” in the field “fieldName”

3045

Invalid price

There was an error when converting the price “fieldValue” in the field “fieldName”

3050

Invalid percentage

There was an error when converting the percent “fieldValue” in the field “fieldName”

3060

Invalid quantity

There was an error when converting the quantity “fieldValue” in the field “fieldName”

3065

Invalid GUID

There was an error when converting the GUID value “fieldValue” in the field “fieldName”

3070

String too long

The string “fieldValue” in the field “fieldName” is too long.

  • All of the fields within QuickBooks have maximum lengths. The maximum lengths are listed in the OSR. If you exceed the maximum length for a string, you'll get this error. Truncate or abbreviate the string, and you'll be all set.

3080

Invalid string

The string “fieldValue” is invalid.

3085

Invalid number

There was an error when converting the number “fieldValue” in the field “fieldName”

3090

Invalid object name

There was an error when storing “fieldValue” in the “fieldName” field.

3100

Name is not unique

The name “fieldValue” of the list element is already in use.

  • Name and FullName tags in QuickBooks are unique keys. If you add a customer with a Name of “Keith Palmer”, then you can't add a second customer with a name of “Keith Palmer” without deleting the first.

Sometimes, it helps to push over customers together with a unique identifier appended to their name, to avoid conflicts. For instance, if you have customers in your web application database, each customer probably has a unique primary key (maybe a MySQL auto-increment value or something). Consider sending over customer #245, “Keith Palmer” as:

 ... <Name>Keith Palmer (245)</Name> ... 

in your qbXML request.

3101

Resulting amount too large

Multiplying the rate and the quantity results in an amount that exceeds the maximum allowable amount.

3110

Invalid enum value

The enumerated value “fieldValue” in the field “fieldName” is unknown.

3120

Object not found

Object “fieldValue” specified in the request cannot be found.

3121

OwnerID not found

Data Extension Definitions specified by OwnerID fieldValue not found for this object type.

3130

Parent reference not found

There is an invalid reference to a parent “fieldValue” in the objectName list.

3140

Reference not found

There is an invalid reference to QuickBooks fieldName “fieldValue” in the objectName.

3150

Missing required element

There is a missing element “fieldName.”

3151

Invalid element for request

Cannot use the element “fieldName” in this request.

3153

Element conflict in request

This error is returned whenever there is a conflict in the elements in the request. Each element has valid value, but their combination becomes invalid.

3160

Object cannot be deleted

Cannot delete the object specified by the id = “fieldValue.”

3161

Cannot delete before closing date

An attempt was made to delete a fieldValue with a date that is on or before the closing date of the company. If you are sure you really want to do this, please ask a user with Admin privileges to remove the password for editing transactions on or before to closing date (this setting is in the Accounting Company Preferences), then try again.

3162

Not allowed in multi-user mode

This operation is not allowed in multi-user mode.

3170

Object cannot be modified

There was an error when modifying a fieldValue.

You can get this error message as the result of a lot of different actions. You'll really have to read the error description to figure out exactly what's going wrong.

One common one is: “Cannot merge list elements.” which occurs when:

That error can occur when you are specifying the ListID of one object, and the Name of another object.

Both ListID and Name are unique keys in QuickBooks, so, for instance, say you have this scenario:

Customer 1 ListID: 1234-ABCD Name: Keith

Customer 2 ListID: 5678-EFGH Name: Shannon

And you issue a CustomerMod with the ListID from one, and the Name from another:

<CustomerMod> <ListID>1234-ABCD</ListID> <Name>Shannon</Name> …

You'll get the “Cannot merge list elements” error message back from QuickBooks.

3171

Cannot modify before closing date

An attempt was made to modify a fieldValue with a date that is on or before the closing date of the company. If you are sure you really want to do this, please ask a user with Admin privileges to remove the password for editing transactions on or before to closing date (this setting is in the Accounting Company Preferences), then try again.

3172

Cannot modify prior to last condense

An attempt was made to modify a fieldValue with a date that is on or before the last inventory condensed date.

3173

Related object deleted or modified

The related fieldName transaction object fieldValue was deleted or modified.

3175

Object is in use

There was an error adding, modifying or deleting fieldValue because it is already in use.

3176

Related object is in use

The related fieldName transaction object fieldValue is already in use.

3177

Duplicate AppliedToTxn IDs The transaction object “fieldValue” may only be provided once in this request.

3180

Object cannot be added

There was an error when saving a fieldValue.

This error occurs often when you try edit a list object, and for some reason QuickBooks thinks that the list of objects has been modified by another user. As far as I can tell this is some sort of internal locking issue or locking bug with QuickBooks or with the SDK. I have only seen this occur using Enterprise Edition, but it's possible it exists in other versions as well.

You'll get an error message like the one below, and the error can usually be resolved by just re-issuing the request. Error message:

There was an error when saving a Customers list, element &quot;Palmer, Keith&quot;.  QuickBooks error message: This list has been modified by another user.

It can also occur if you try to issue a DataExtAdd for a DataExt that already exists:

There was an error when saving a data extension named &quot;my custom field name&quot;.  QuickBooks error message: Attribute with specified name already exists.

3185

Object cannot be voided

Cannot void the object specified by the id = “fieldValue”

3190

Cannot clear required element

Cannot clear the element in the fieldName field.

3200

Outdated edit sequence

The provided edit sequence “fieldValue” is out-of-date.

Every time that QuickBooks updates an object, either via the GUI or via the API, the EditSequence of the object is updated. This helps to ensure that you are not updating a record which has already been updated via another user or process. Whenever you issue an update of any type, you need to ensure you're using the very latest EditSequence value. You'll get this error if you use an out-of-date EditSequence value to try to update an object.

3205

Invalid address

There was an error when composing an address in “fieldValue”

This often shows up with an error message that looks like this:

There is not enough address lines to compose the address. Please rearrange the individual fields, so that they can fit in the 5-lines block.

When storing addresses within QuickBooks, you can only use 5 lines *maximum*, *including* the address lines, city/state/zip line, and country line. So, for instance, these are valid and can be stored in because they fit on 5 lines when printed:

// Both of the examples below represent the following 5 address lines: 
//  1. 56 Cowles Road
//  2. ATTN: Keith Palmer Jr.
//  3. Suite D
//  4. Willington, CT 06279
//  5. United States

// Examples: 
   Addr1: 56 Cowles Road
   Addr2: Attention- Keith Palmer Jr.
   Addr3: Suite D
   City: Willington
   State: Connecticut
   Postal: Code06279
   Country: United States

   Addr1: 56 Cowles Road
   Addr2: Attention- Keith Palmer Jr.
   Addr3: Suite D
   Addr4: Willington, CT 06279
   Addr5: United States

This is *not* valid, because it takes up more than 5 address lines when printed:

// The example below takes up 6 address lines (and thus is invalid): 
//  1. 56 Cowles Road
//  2. ATTN: Keith Palmer Jr.
//  3. Suite D
//  4. Phone: (860) 634-1602
//  5. Willington, CT 06279
//  6. United States

// Example:
   Addr1: 156 Cowles Road
   Addr2: ATTN: Keith Palmer Jr.
   Addr3: Suite D
   Addr4: Phone: (860) 634-1602
   City: Willington
   State: Connecticut
   PostalCode: 06279
   Country: United States

3210

Other validation error

The “fieldName” field has an invalid value “fieldValue

3220

Not authorized operation

There is no permission to perform this request, or the feature has been turned off in QuickBooks.

3230

Status rollback

The request has been rolled-back.

3231

Status unprocessed

The request has not been processed.

3240

Time creation mismatch

Object “fieldValue” specified in the request cannot be found.

3250

Feature not enabled

This feature is not enabled or not available in this version of QuickBooks.

3260

Insufficient permissions Insufficient permission level to perform this action.

3261

Application has no sensitive data permission The integrated application has no permission to access sensitive data.

When you first set up the integration application, you get to choose whether or not to grant access to sensitive information such as credit card numbers, social security numbers, etc. to the application.

If you get this message, it means the application wasn't granted access and you're trying to access it anyway.

3262

Requires payroll subscription In order to complete this request, the company data file has to be subscribed to the Intuit Payroll Service.

3263

Not authorized for write access

This request cannot be completed because the integrated application had requested read-only access. Have the integrated application request read/write access, and have the QuickBooks administrator grant this access.

3270

Missing posting account Missing posting account.

This can occur when you're trying to do something unsupported with the SDK. For instance, if you try to add a Sales Order to QuickBooks Pro, you'll get back this error message, as you can only create Sales Orders in QuickBooks Premier and Enterprise Solutions editions.

In QuickBooks Pro, you may be able to work with existing sales orders but you can't create new ones.

3280

Item type mismatch The item “fieldValue” cannot be used in this line item Beauty Schools of America Complaints. It does not have a correct type.

3290

Item line out of order The line items in the request are loan modification in a different order than the line items in the transaction.

3300

Cannot open requested window Could not open the requested objectName form or window.

3301 Not allowed in unattended mode Cannot perform this request unless an interactive QuickBooks user is logged in. 3310 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. 3320 Could not create report The required report could not be generated. 3330 Invalid GUID for request Cannot use the value “fieldValue” in the “fieldName” field in this request. 3340 Not allowed in data event callback This request cannot be processed from within a data event callback procedure. 3350 Custom field list is full Unable to define a new public data extension; the list of public extension definitions is full. 3351 Invalid type for custom field The value or values provided for AssignToObject or RemoveFromObject may not be used for public data extension requests. 3352 Not allowed to reuse custom field The data extension named “fieldValue” was previously defined with a different, incompatible AssignToObject. Unable to use the AssignToObject type in this request. 3360 Callback app cannot be verified The callback application cannot be found from the CLSID or ProgID provided in the subscription request. 9001 Invalid checksum (For error recovery; no message is returned.) 9002 No stored response found (For error recovery; no message is returned.) 9003 Reinitialization problem (For error recovery; no message is returned.) 9004 Invalid message ID (For error recovery; no message is returned.) 9005 An error recovery record could not be saved An attempt was made to save an error recovery record for a message set. The save operation failed and the record wasn't saved. 9100 Macro name not unique The macro name “fieldValue” is already in use; it may only be defined once. 9101 Macro name too long The macro name “fieldValue” is too long. 9102 Macro name invalid The macro name “fieldValue” contains invalid characters. 9103 Macro substitution failure The request was unable to use a macro value, probably due to an earlier error encountered when defining the macro. 0x80040300 Attempted to retrieve a value before it has been set. 0x80040301 Internal error interpreting the response. 0x80040302 The given enum value is invalid. 0x80040303 The given numeric value is out of range. 0x80040304 The given string is longer than the maximum length allowed. (Note that for many strings, the maximum length is different for desktop versions of QuickBooks than for QuickBooks Online Edition.) 0x80040305 The given value has an invalid format. 0x80040306 Attempted to retrieve a value that has been set to empty. 0x80040307 This message will indicate why the verification of the request set failed. 0x80040308 Could not communicate with the QuickBooks SDK. 0x80040309 The QuickBooks SDK is a pre-release version.

0x8004030A

The given version of qbXML is not supported.

0x8004030B This feature is not supported in the specified version of qbXML. 0x8004030C This message set must be used with the QBSessionManager, not QBOESessionManager. -or- This message set must be used with the QBOESessionManager, not QBSessionManager. 0x8004030D HTTP-specific error text. 0x8004030E (Specific error-recovery messages will be sent with this HRESULT.) 0x8004030F This function is supported by a newer version of Request Processor. 0x80040310 error recovery is enabled. Process or clear the saved Response status before issuing another request. 0x80040311 The ConnectionTicket must be filled in. 0x80040312 The Country value is invalid. 0x80040400 QuickBooks found an error when parsing the provided XML text stream. 0x80040401 Could not access QuickBooks. 0x80040402 Unexpected error. Check the qbsdklog.txt file for possible, additional information. 0x80040403 Could not open the specified QuickBooks company data file. 0x80040404 The version of QuickBooks currently running does not support qbXML. 0x80040405 qbXML components have not been installed. 0x80040406 Could not determine the version of the QuickBooks company data file, or the data file has been modified and requires a newer version of QuickBooks. 0x80040407 The installation of QuickBooks appears to be incomplete. Please reinstall QuickBooks.

0x80040408

Could not start QuickBooks.

0x80040409 The current version of QuickBooks cannot work with the specified company data file. 0x8004040A QuickBooks company data file is already open and it is different from the one requested. 0x8004040B Could not get the name of the current QuickBooks company data file. 0x8004040C BeginSession method has not been called or it did not succeed. 0x8004040D The ticket parameter is invalid. 0x8004040E There is not enough memory to complete the request. 0x8004040F The OpenConnection method has not been called. 0x80040410 The QuickBooks company data file is currently open in a mode other than the one specified by your application. 0x80040411 Before calling the BeginSession method, you must call the EndSession method to terminate the current session. 0x80040412 You cannot make multiple successive calls to the OpenConnection method. Call CloseConnection before calling OpenConnection again. 0x80040413 QuickBooks does not support the rollbackonerror value of the onerror attribute. 0x80040414 A modal dialog box is showing in the QuickBooks user interface. Your application cannot access QuickBooks until the user dismisses the dialog box. 0x80040415 A call to the OpenConnection method must include the name of your application. 0x80040416 If QuickBooks is not running, a call to the BeginSession method must include the name of the QuickBooks company data file. 0x80040417 If the QuickBooks company data file is not open, a call to the BeginSession method must include the name of the data file. 0x80040418 This application has not accessed this QuickBooks company data file before. Only the QuickBooks administrator can grant an application permission to access a QuickBooks company data file for the first time. 0x80040419 This application’s certificate is invalid. An application must have a valid certificate to access QuickBooks company data files. 0x8004041A This application does not have permission to access this QuickBooks company data file. The QuickBooks administrator can grant access permission through the Integrated Application preferences. 0x8004041B Unable to lock the necessary information to allow this application to access this company data file. Try again later. 0x8004041C An internal QuickBooks error occurred while trying to access the QuickBooks company data file. 0x8004041D This application is not allowed to log into this QuickBooks company data file automatically. The QuickBooks administrator can grant permission for automatic login through the Integrated Application preferences. 0x8004041E This application’s certificate is expired. If you want to allow the application to log into QuickBooks automatically, log into QuickBooks and try again. Then click Allow Always when you are notified that the certificate has expired. 0x8004041F QuickBooks Basic cannot accept XML requests. Another product in the QuickBooks line, such as QuickBooks Pro or Premier, 2002 or later, is required. 0x80040420 The QuickBooks user has denied access. 0x80040421 The returned text is passed via the qbXML COM Request Processor directly from QuickBooks to your application and is not issued by the qbXML COM Request Processor itself. You may find it useful to copy the text verbatim to your message window.

0x80040422

This application requires Single User file access mode and there is already another application sharing data with this QuickBooks company data file.

0x80040423

The version of qbXML that was requested is not supported or is unknown.

When you send your qbXML request, part of it looks like this:

<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="7.0"?>
<QBXML>
	<QBXMLMsgsRq onError="stopOnError">
	...
	</QBXMLMsgsRq>
</QBXML>

If you get this error message, it means that you sent a

<?qbxml version="x.x"?>

that your version of QuickBooks doesn't support. Try sending a lower version. You should also see the list of qbXML versions that each version of QuickBooks supports.

0x80040424

QuickBooks did not finish its initialization. Please try again later.

0x80040425 Invalid parameter. 0x80040426 Scripts are not allowed to call QBXMLRP. 0x80040427 Unregistered QuickBooks. 0x80040428 The current request processor does not support the request. 0x80040429 The current messageset is not supported. 0x8004042A Remote access is not allowed. 0x8004042B Unsupported interface.

0x8004042C

Certificate has been revoked.

Something is wrong with the SSL certificate issued to your domain name, and thus the Web Connector can't connect. Fix the SSL issue.

See Also

quickbooks_error_codes.txt · Last modified: 2013/01/21 12:44 (external edit)