Customer Component
Properties Methods Events Configuration Settings Errors
A Customer is anyone who buys goods or services from the QuickBooks company.
Syntax
nsoftware.InQB.Customer
Remarks
A Customer is anyone who buys goods or services from the QuickBooks company. A Customer may also be used to represent a sub-customer or Job.
Required Fields (Add): CustomerName
Supported Methods: Add, Update (contact info only), Get (Id/Name), Delete
Example (Adding a customer to QuickBooks)
Customer1.CustomerName = "John Doe" Customer1.Add()Contact Information: Contact information may be added, retrieved, or changed. The key property is CustomerName. CompanyName, ContactName, and AltContactName may be used to specify additional names/contacts for the customer. BillingAddress, ShippingAddress, Fax, Email, Phone, and AltPhone may all be set or changed as well.
Categorization and Financial Information: the following properties are not used in Update operations, and may only be modified from within the QuickBooks UI.
CustomerType* | The type of customer: residential, commercial, etc. |
SalesRep* | A sales rep for the customer. |
TaxItem*, TaxCode* | Taxation information for the customer. |
Terms* | Terms on which the customer will be billed. |
Tracking Customer Balances:
The Customer component may be used to track the outstanding balances of customers. After invoking Get, simply inspect the Balance property;. The ObjSearch component can be used to find unpaid and paid Invoices tied to this customer.
When a customer is added to QuickBooks, the CreditLimit may be set, and the OpeningBalance (special field) may be set, if there is one. Once a customer is added to QuickBooks, there is no way to modify Balance directly! Instead, Invoices or CreditMemos should be added referencing this customer.
Sub-Customers (Jobs)
QuickBooks allows the user to define customers hierarchically. This allows the QuickBooks user to track transactions involving the Job separately.
To add a job to QuickBooks, set the Parent* property to the parent customer. Then, detailed job information may be provided using Config. When a job is retrieved from QuickBooks, Parent* will refer to the parent customer.
Property List
The following is the full list of the properties of the component with short descriptions. Click on the links for further details.
AccountNumber | Account number for this entity. |
AltContactName | Alternate contact person for entity. |
AltPhone | Alternate phone number of entity. |
Balance | Money owed by this Customer , including sub-customers. |
BillingAddress | Billing address for customer. |
CompanyName | Company name of customer or vendor. |
ContactName | Contact person for a customer or vendor. |
CreditCard | Customer's credit card information. |
CreditLimit | Credit limit for this entity. |
CustomerName | Customer's name. |
CustomerTypeId | Reference to type of customer. |
CustomerTypeName | Reference to type of customer. |
Email address of entity. | |
Fax | Fax number of entity. |
IsActive | Whether or not entity is active. |
Notes | Notes for this transaction. |
ParentId | Reference to parent Customer . |
ParentName | Reference to parent Customer . |
Phone | Phone number of entity. |
QBConnectionString | An aggregate consisting of various QuickBooks connection properties. |
QBRequestAggregate | The request aggregate. |
QBRequestId | The Id of the next message to be sent to QuickBooks. |
QBRequestMode | Defines whether the request is made online or stored offline. |
QBResponseAggregate | The last QBXML response aggregate received from QuickBooks. |
QBXMLVersion | The version of QBXML used in the outgoing message. |
RefId | An alphanumerical identifier generated by the server. |
ResaleNumber | Resale number. |
SalesRepId | Reference to (initials of) sales rep. |
SalesRepName | Reference to (initials of) sales rep. |
ShippingAddress | Shipping address for customer. |
TaxCodeId | Whether or not transactions with customer are taxable. |
TaxCodeName | Whether or not transactions with customer are taxable. |
TaxItemId | Reference to detailed taxation information. |
TaxItemName | Reference to detailed taxation information. |
TermsId | Reference to terms of payment. |
TermsName | Reference to terms of payment. |
Method List
The following is the full list of the methods of the component with short descriptions. Click on the links for further details.
Add | Adds the record into QuickBooks. |
CheckRequestStatus | Checks whether or not the specified request was processed by QuickBooks. |
CloseQBConnection | Closes a persistent connection to QuickBooks. |
Config | Sets or retrieves a configuration setting . |
Delete | Deletes the record from QuickBooks. |
Get | Gets a single record from QuickBooks. |
GetByName | Gets a single record from QuickBooks. |
GetCustomField | Gets a custom field value from QuickBooks. |
ImportQBXML | Imports a QBXML response aggregate. |
OpenQBConnection | Opens a persistent connection to QuickBooks. |
Reset | Resets all properties to their defaults. |
SetCustomField | Sets a custom field value within QuickBooks. |
Update | Updates the entity object in QuickBooks. |
Event List
The following is the full list of the events fired by the component with short descriptions. Click on the links for further details.
Error | Information about errors during data delivery. |
SSLServerAuthentication | Fired after the server presents its certificate to the client. |
SSLStatus | Shows the progress of the secure connection. |
Status | Shows the progress of the QuickBooks connection. |
Warning | Fired when a warning occurs. |
Configuration Settings
The following is a list of configuration settings for the component with short descriptions. Click on the links for further details.
SendRawXML | Sends specified XML to quickbooks without modification. |
AppendAfter | Appends an XML tag after the specified QBXML element. |
TimeCreated | The time the object was created. |
TimeModified | The time the object was created. |
EditSequence | An identifier for this copy of the object. |
FullName | The name of the customer. |
Sublevel | The number of ancestors this Customer has. |
NonInclusiveBalance | The Balance of the Customer, not including sub-customers. |
JobStatus | The status of the job. |
JobStartDate | Start date of the job, YYYY-MM-DD. |
JobProjectedEndDate | Projected end date of the job, YYYY-MM-DD. |
JobEndDate | Actual end date of the job, YYYY-MM-DD. |
JobDescription | Description of the job. |
JobTypeName | Reference to the type of job. |
JobTypeId | Reference to the type of job. |
PriceLevelName | Reference to a price level for the customer. |
PriceLevelId | Reference to a price level for the customer. |
PreferredDeliveryMethod | The preferred delivery method. |
IncludePreferredDeliveryMethod | Whether to include the preferred delivery method. |
PreferredPaymentMethodName | The preferred method of payment. |
PreferredPaymentMethodId | The preferred method of payment. |
CurrencyName | The type of currency to use. |
CurrencyId | The type of currency to use. |
IsActive | Indicates whether the object is currently enabled for use by QuickBooks. |
Salutation | A salutation, such as Mr., Mrs., etc. |
FirstName | A first name. |
MiddleInitial | A middle initial. |
LastName | A last name. |
SeparateContact | A contact person other than the person specified by Salutation, FirstName, MiddleInitial, and LastName. |
OpeningBalance | The opening balance for the customer or vendor. Not used in Update operations. |
OpeningBalanceDate | The opening balance date for the customer or vendor. Not used in Update operations. |
StopOnError | Specifies how QuickBooks is to proceed if an error occurs in processing of the current request. |
SSLAcceptServerCert | The SSL certificate being used by the Remote Connector. |
SSLAcceptServerCertFile | The SSL certificate file being used by the Remote Connector. |
EnforceMaxLength | Indicates whether to enforce max lengths for QB Fields. |
AuthFlags | Connection Flags (use for QuickBooks Simple Start). |
GetHighestVersion | Highest QBXMLVersion supported by the installed instance of QuickBooks. |
GetSupportedVersions | Returns a list of QBXMLVersions that are supported by QuickBooks. |
GetRequestProcessorDLLVersion | Returns the version of the QB Request Processor that is installed on your system. |
IsReadOnly | This causes the QuickBooks authorization dialog to display text informing the user that its access will be read-only. |
UnattendedModePref | Whether connecting while QuickBooks is closed is required or optional for the user. |
PersonalDataPref | Whether the connecting application will require access to personal data such as SSN or credit card information. |
QBOpenCompanyFile | The file currently open in QuickBooks. |
QBConnectionMode | The mode of connection to QuickBooks. |
QBFileStatus | The status of the company file as it pertains to accepting connections. |
WarningCodes | A comma-separated list of QuickBooks warning codes that should not result in an exception. |
CodePage | The system code page used for Unicode to Multibyte translations. |