4D Accounting SDK 2020 .NET Edition

Questions / Feedback?

Customer Component

Properties   Methods   Events   Configuration Settings   Errors  

A Customer is anyone who buys goods or services from the QuickBooks company.

Syntax

DPayments.DAccountingSDK.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.

AccountNumberAccount number for this entity.
AltContactNameAlternate contact person for entity.
AltPhoneAlternate phone number of entity.
BalanceMoney owed by this Customer , including sub-customers.
BillingAddressBilling address for customer.
CompanyNameCompany name of customer or vendor.
ContactNameContact person for a customer or vendor.
CreditCardCustomer's credit card information.
CreditLimitCredit limit for this entity.
CustomerNameCustomer's name.
CustomerTypeIdReference to type of customer.
CustomerTypeNameReference to type of customer.
EmailEmail address of entity.
FaxFax number of entity.
IsActiveWhether or not entity is active.
NotesNotes for this transaction.
ParentIdReference to parent Customer .
ParentNameReference to parent Customer .
PhonePhone number of entity.
QBConnectionStringAn aggregate consisting of various QuickBooks connection properties.
QBRequestAggregateThe request aggregate.
QBRequestIdThe Id of the next message to be sent to QuickBooks.
QBRequestModeDefines whether the request is made online or stored offline.
QBResponseAggregateThe last QBXML response aggregate received from QuickBooks.
QBXMLVersionThe version of QBXML used in the outgoing message.
RefIdAn alphanumerical identifier generated by the server.
ResaleNumberResale number.
SalesRepIdReference to (initials of) sales rep.
SalesRepNameReference to (initials of) sales rep.
ShippingAddressShipping address for customer.
TaxCodeIdWhether or not transactions with customer are taxable.
TaxCodeNameWhether or not transactions with customer are taxable.
TaxItemIdReference to detailed taxation information.
TaxItemNameReference to detailed taxation information.
TermsIdReference to terms of payment.
TermsNameReference 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.

AddAdds the record into QuickBooks.
CheckRequestStatusChecks whether or not the specified request was processed by QuickBooks.
CloseQBConnectionCloses a persistent connection to QuickBooks.
ConfigSets or retrieves a configuration setting.
DeleteDeletes the record from QuickBooks.
GetGets a single record from QuickBooks.
GetByNameGets a single record from QuickBooks.
GetCustomFieldGets a custom field value from QuickBooks.
ImportQBXMLImports a QBXML response aggregate.
OpenQBConnectionOpens a persistent connection to QuickBooks.
ResetResets all properties to their defaults.
SetCustomFieldSets a custom field value within QuickBooks.
UpdateUpdates 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.

ErrorInformation about errors during data delivery.
SSLServerAuthenticationFired after the server presents its certificate to the client.
SSLStatusShows the progress of the secure connection.
StatusShows the progress of the QuickBooks connection.
WarningFired 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.

AdditionalContactRefContactName[i]The name of the additional contact reference.
AdditionalContactRefContactValue[i]The value of the additional contact reference.
AdditionalContactRefCountThe count of additional contact references returned.
AppendAfterAppends an XML tag after the specified QBXML element.
AuthFlagsConnection Flags (use for QuickBooks Simple Start).
CurrencyIdThe type of currency to use.
CurrencyNameThe type of currency to use.
EditSequenceAn identifier for this copy of the object.
EnforceMaxLengthIndicates whether to enforce max lengths for QB Fields.
FirstNameA first name.
FullNameThe name of the customer.
GetHighestVersionHighest QBXMLVersion supported by the installed instance of QuickBooks.
GetRequestProcessorDLLVersionReturns the version of the QB Request Processor that is installed on your system.
GetSupportedVersionsReturns a list of QBXMLVersions that are supported by QuickBooks.
IncludePreferredDeliveryMethodWhether to include the preferred delivery method.
IsActiveIndicates whether the object is currently enabled for use by QuickBooks.
IsReadOnlyThis causes the QuickBooks authorization dialog to display text informing the user that its access will be read-only.
JobDescriptionDescription of the job.
JobEndDateActual end date of the job, YYYY-MM-DD.
JobProjectedEndDateProjected end date of the job, YYYY-MM-DD.
JobStartDateStart date of the job, YYYY-MM-DD.
JobStatusThe status of the job.
JobTypeIdReference to the type of job.
JobTypeNameReference to the type of job.
LastNameA last name.
MiddleInitialA middle initial.
NonInclusiveBalanceThe Balance of the Customer, not including sub-customers.
OpeningBalanceThe opening balance for the customer or vendor. Not used in Update operations.
OpeningBalanceDateThe opening balance date for the customer or vendor. Not used in Update operations.
PersonalDataPrefWhether the connecting application will require access to personal data such as SSN or credit card information.
PreferredDeliveryMethodThe preferred delivery method.
PreferredPaymentMethodIdThe preferred method of payment.
PreferredPaymentMethodNameThe preferred method of payment.
PriceLevelIdReference to a price level for the customer.
PriceLevelNameReference to a price level for the customer.
QBConnectionModeThe mode of connection to QuickBooks.
QBFileStatusThe status of the company file as it pertains to accepting connections.
QBOpenCompanyFileThe file currently open in QuickBooks.
SalutationA salutation, such as Mr., Mrs., etc.
SendRawXMLSends specified XML to quickbooks without modification.
SeparateContactA contact person other than the person specified by Salutation, FirstName, MiddleInitial, and LastName.
ShipToAddressAggregateA list of all shipping addresses associated with a customer.
ShipToAddressCountA count of all shipping addresses associated with a customer.
SSLAcceptServerCertThe SSL certificate being used by the Remote Connector.
SSLAcceptServerCertFileThe SSL certificate file being used by the Remote Connector.
StopOnErrorSpecifies how QuickBooks is to proceed if an error occurs in processing of the current request.
SublevelThe number of ancestors this Customer has.
TimeCreatedThe time the object was created.
TimeModifiedThe time the object was created.
UnattendedModePrefWhether connecting while QuickBooks is closed is required or optional for the user.
WarningCodesA comma-separated list of QuickBooks warning codes that should not result in an exception.
BuildInfoInformation about the product's build.
GUIAvailableTells the component whether or not a message loop is available for processing events.
LicenseInfoInformation about the current license.
UseInternalSecurityAPITells the component whether or not to use the system security libraries or an internal implementation.

 
 
Copyright (c) 2021 4D Payments Inc. - All rights reserved.
4D Accounting SDK 2020 .NET Edition - Version 20.0 [Build 7887]