org.mule.modules

mule-module-quick-books-windows


Namespacehttp://www.mulesoft.org/schema/mule/quickbooks-windows
Schema Locationhttp://www.mulesoft.org/schema/mule/quickbooks-windows/current/mule-quickbooks-windows.xsd  (View Schema)
Schema Version2.0
Minimum Mule Version3.2

Module Overview

QuickBooks software provides an interface that allows you to use forms such as checks, deposit slips and invoices, making the accounting process more comfortable for the average business owner or manager. By using the built-in functions that pertain to your business, you are able to perform your company accounting by simply recording your vendor activities, customer activities, banking transactions, payroll checks and taxes. QuickBooks handles the accounting portion of each transaction behind the scenes. Read more: QuickBooks Accounting Tutorial | eHow.com http://www.ehow.com/way_5462311_quickbooks-accounting-tutorial.html#ixzz1csaydwxl

Summary

Configuration
<quickbooks-windows:config>
Configure an instance of this module
Message Processors
<quickbooks-windows:create>
Creates.
<quickbooks-windows:delete>
Deletes an object.
<quickbooks-windows:find-objects>
Lazily retrieves Objects For details on how to generate a query see: Retrieve Especification
<quickbooks-windows:generate-a-new-request-id>
Generate a new GUID for the requestId
<quickbooks-windows:get-object>
Retrieve objects by ID.
<quickbooks-windows:status>
Retrieve the Status

Retrieves information about the sync status of Quickbooks entities.

<quickbooks-windows:sync-activity>
Retrieve the SyncActivities

The SyncActivity object contains information about Quickbooks for Windows synchronizations.

<quickbooks-windows:update>
Updates.

Configuration

To use the this module within a flow the namespace to the module must be included. The resulting flow will look similar to the following:

<mule xmlns="http://www.mulesoft.org/schema/mule/core"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xmlns:quickbooks-windows="http://www.mulesoft.org/schema/mule/quickbooks-windows"
      xsi:schemaLocation="
               http://www.mulesoft.org/schema/mule/core
               http://www.mulesoft.org/schema/mule/core/current/mule.xsd
               http://www.mulesoft.org/schema/mule/quickbooks-windows
               http://www.mulesoft.org/schema/mule/quickbooks-windows/current/mule-quickbooks-windows.xsd">

      <!-- here goes your flows and configuration elements -->

</mule>

This module is configured using the config element. This element must be placed outside of your flows and at the root of your Mule application. You can create as many configurations as you deem necessary as long as each carries its own name.

Each message processor, message source or transformer carries a config-ref attribute that allows the invoker to specify which configuration to use.

Attributes
TypeNameDefault ValueDescription
xs:string name Optional. Give a name to this configuration so it can be later referenced.
xs:string baseUri https://services.intuit.com/sb Optional. The base uri of the quickbooks endpoint, used to fetch the company uri.
client Optional. Quick-Books client.

Message Processors

<quickbooks-windows:create>

Creates. For details of the supported objects and its fields: Supported Objects and Operations

XML Sample
<quickbooks-windows:create realmId="#[map-payload:realmId]"
                           appKey="#[map-payload:appKey]"
                           realmIdPseudonym="#[map-payload:realmIdPseudonym]"
                           authIdPseudonym="#[map-payload:authIdPseudonym]" 
                           type="#[map-payload:type]"
                           requestId="#[map-payload:requestId]"
                           draft="#[map-payload:draft]"
                           fullResponse="#[map-payload:fullResponse]">
    <quickbooks-windows:obj ref="#[map-payload:obj]"/>
</quickbooks-windows:create>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:create realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"                         
                           type="JOB"
                           requestId="#[payload]">
    <quickbooks-windows:obj>
        <typeOf>PERSON</typeOf>
        <name>Bathroom Remodel</name>
        <openBalance>#[groovy: [
            'currencyCode' : 'USD',
            'amount' : '100',
        ] ]</openBalance>
        <jobInfo>#[groovy: [
            'startDate' : '2010-01-01',
            'projectedEndDate' : '2010-11-12',
            'description' : 'remodel bathroom',
            'jobTypeName' : 'Residential'
        ] ]</jobInfo>
    </quickbooks-windows:obj>
</quickbooks-windows:create>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:create realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"                         
                           type="CHECK"
                           requestId="#[payload]">
    <quickbooks-windows:obj>
        <header>#[groovy: [ 
            'docNumber' : '33', 
            'txnDate' : '2010-11-18', 
            'bankAccountId' : '146',  
            'entityId' : '283',
            'totalAmt' : '7000'        
        ] ]</header> 
        <line>#[groovy: [ [
            'desc' : 'Test',
            'amount' : '2000',
            'accountId' : [
                'value' : '146' ]   
        ] ] ]</line>
    </quickbooks-windows:obj>
</quickbooks-windows:create>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:create realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"                         
                           type="BILL"
                           requestId="#[payload]">
    <quickbooks-windows:obj>
        <header>#[groovy: [
            'docNumber' : '1001',
            'txnDate' : '2010-09-27',
            'note' : '4 Pens',
            'vendorId' : [
                    'idDomain' : 'QB',
                    'value' : '272' ]
            'vendorName' : 'Seirra',
            'totalAmt' : '50',
            'salesTermId' : [ 
                    'idDomain' : 'QB',
                    'value' : '9' ],
            'salesTermName' : '30thDateDriven',
            'dueDate' : '2010-10-02'
        ] ]</header>
        <line>#[groovy: [ [
            'desc' : 'Pens',
            'amount' : '25',
            'billableStatus' : 'NOT_BILLABLE'
        ] ] ]</line>
    </quickbooks-windows:obj>
</quickbooks-windows:create>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:create realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"                         
                           type="EMPLOYEE"
                           requestId="#[payload]">
    <quickbooks-windows:obj>
        <typeOf>PERSON</TypeOf>
        <name>John Simpson</Name>
        <address>#[groovy: [ [
          'line1' : '21215 Burbank Boulevard, Ste. 100',
          'city' : 'Woodland Hills',
          'countrySubDivisionCode' : 'CA',
          'postalCode' : '91367',
          'tag' : ['Billing']
        ] ] ]</address>
        <phone>#[groovy: [ [
          'deviceType' : 'Mobile',
          'freeFormNumber' : '(818) 936-7800',
          'tag' : ['Mobile']
        ] ] ]</phone>
        <email>#[groovy: [ [
          'address' : 'john.simpson@mint.com',
          'tag' : ['Business']
        ] ] ]</email>
        <givenName>John</givenName>
        <familyName>Simpson</familyName>
    </quickbooks-windows:obj>
</quickbooks-windows:create>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:create realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"                         
                           type="PAYMENT"
                           requestId="#[payload]">
    <quickbooks-windows:obj>
         <header>#[groovy: [
             'docNumber' : '543216789',
             'txnDate' : '2010-10-20',
             'currency' : 'USD',
             'customerId' : [
                    'idDomain' : 'QB',
                    'value' : '283' ],
             'totalAmt' : '100'
         ] ]</header>
         <line>#[groovy: [ [
             'desc' : 'Line 1 of payment',
             'amount' : '200',
             'txnId' : [ 
                    'idDomain' : 'QB',
                    'value' : '64134' ]
         ] ] ]</line>
    </quickbooks-windows:obj>
</quickbooks-windows:create>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:create realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"                         
                           type="ITEM"
                           requestId="#[payload]"
                           draft="false"
                           fullResponse="true">
    <quickbooks-windows:obj>
        <name>Dusting</name>
        <desc>Dusting labor</desc>
        <taxable>false</taxable>
        <active>true</active>
        <unitPrice>#[groovy: [
           'currencyCode' : 'USD',
           'amount' : '55'
        ] ]</unitPrice>
        <type>Service</type>
        <incomeAccountRef>#[groovy: [
           'accountId' : [ 
                'idDomain': 'QB',
                'value' : '25' ],
           'accountName' : 'Labor Income',
           'accountType' : 'REVENUE'
        ] ]</incomeAccountRef>
        <purchaseCost>#[groovy: [
           'currencyCode' : 'USD',
           'amount' : '0'
        ] ]</purchaseCost>
        <avgCost>#[groovy: [
           'currencyCode' : 'USD',
           'amount' : '0'
        ] ]</avgCost>
    </quickbooks-windows:obj>
</quickbooks-windows:create>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:create realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"                         
                           type="CUSTOMER"
                           requestId="#[payload]"
                           draft="false"
                           fullResponse="true">
    <quickbooks-windows:obj>
        <typeOf>PERSON</typeOf>
        <name>Jane Doe</name>
        <address>#[groovy: [ [
            'line1' : '5720 Peachtree Pkwy. 1',
            'line2' : 'Norcross',
            'city' : 'Mountain View, CA 94043, CA 940',
            'country' : 'USA',
            'countrySubDivisionCode' : 'ON',
            'postalCode' : '94043',
            'tag' : ['Billing']
        ] ] ]</address>
        <DBAName>Mint</DBAName>
        <acctNum>23423423</acctNum>
    </quickbooks-windows:obj>
</quickbooks-windows:create>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:create realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"                         
                           type="ACCOUNT"
                           requestId="#[payload]"
                           draft="false"
                           fullResponse="true">
    <quickbooks-windows:obj>
        <name>Test Account QW 91</name>
        <active>true</active>
        <type>EXPENSE<type>
        <subtype>expense</subtype>
        <acctNum>9919823</acctNum>
        <openingBalance>0</openingBalance>
        <openingBalanceDate>2012-02-02T00:00:00Z</openingBalanceDate>
    </quickbooks-windows:obj>
</quickbooks-windows:create>

Attributes
NameDefault ValueDescription
config-ref Optional. Specify which configuration to use.
realmId The realmID, also known as the Company ID, uniquely identifies the data for a company. In QuickBooks, the Company ID appears on the My Account page. In Data Services for QuickBooks, the realmID is required in the URL for most calls.
appKey Application Id.
realmIdPseudonym Pseudonym Realm Id, obtained from the gateway that represents the company.
authIdPseudonym Pseudonym Auth Id, obtained from the gateway that represents the user.
type WindowsEntityType of the object.
requestId The unique request Id
draft false Optional. Boolean draft

Saving an IDS object in a draft state prevents it from being synchronized with Quickbooks. Your app might want to save an object in a draft state if the user has not finished entering data, or for some other reason the user does not want to commit the object for synchronization. You may save an object in draft state during a create or update operation by specifying the draft="true" attribute. By default, the Draft attribute is false, which means that the saved object will be synchronized with Quickbooks.

fullResponse false Optional. Boolean fullResponse. If this flag is true, it will return the created object, otherwise, it will return an ObjectRef.
Child Elements
<quickbooks-windows:obj>
Map that represents the object to be created.
Return Payload
  • The created Object or an ObjectRef if the fullResponse flag was null of false.
Exception Payloads
Payload ClassDescription
QuickBooksRuntimeException when there is a problem with the server. It has a code and a message provided by quickbooks about the error.

<quickbooks-windows:delete>

Deletes an object.

Most objects cannot be deleted by calling Data Services.

If the obj map do not have the MetaData field or the SyncToken, internally, will retrieve the object at first, to delete it. So be careful, because it will need two request instead of one, which could make it slower.

For details of the supported objects and its fields: Supported Objects and Operations

XML Sample
<quickbooks-windows:delete realmId="#[map-payload:realmId]"
                           appKey="#[map-payload:appKey]"
                           realmIdPseudonym="#[map-payload:realmIdPseudonym]"
                           authIdPseudonym="#[map-payload:authIdPseudonym]" 
                           type="#[map-payload:type]"
                           requestId="#[map-payload:requestId]">
    <quickbooks-windows:obj ref="#[map-payload:obj]"/>

</quickbooks-windows:delete>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:delete realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"
                           type="ACCOUNT"
                           requestId="#[payload]">
    <quickbooks-windows:obj>
        <id>#[groovy: [
                'value' : '4042'
        ] ]</id>
        <syncToken>1</syncToken>
        <metaData>#[groovy: [
            'createdBy' : 'app',
            'createdById' : '1',
            'createTime' : '2010-06-18T02:17:29',
            'lastModifiedBy' : 'app',
            'lastModifiedById' : '1',
            'lastUpdatedTime' : '2010-06-18T02:17:291',
        ] ]</metaData>
        <synchronized>false</synchronized>
        <name>Test Account QW 91</name>
        <active>true</active>
        <type>EXPENSE<type>
        <subtype>expense</subtype>
        <acctNum>9919823</acctNum>
        <openingBalance>0</openingBalance>
        <openingBalanceDate>2012-02-02T00:00:00Z</openingBalanceDate>
    </quickbooks-windows:obj>

</quickbooks-windows:delete>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:delete realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"
                           type="CUSTOMER"
                           requestId="#[payload]">
    <quickbooks-windows:obj>
        <id>#[groovy: [
                'value' : '4042'
        ] ]</id>
        <syncToken>1</syncToken>
        <metaData>#[groovy: [
            'createdBy' : 'app',
            'createdById' : '1',
            'createTime' : '2010-06-18T02:17:29',
            'lastModifiedBy' : 'app',
            'lastModifiedById' : '1',
            'lastUpdatedTime' : '2010-06-18T02:17:291',
        ] ]</metaData>
        <synchronized>false</synchronized>
        <typeOf>PERSON</typeOf>
        <name>Jane Doe</name>
        <address>#[groovy: [ [
            'line1' : '5720 Peachtree Pkwy. 1',
            'line2' : 'Norcross',
            'city' : 'Mountain View, CA 94043, CA 940',
            'country' : 'USA',
            'countrySubDivisionCode' : 'ON',
            'postalCode' : '94043',
            'tag' : ['Billing']
        ] ] ]</address>
        <DBAName>Mint</DBAName>
        <acctNum>23423423</acctNum>
    </quickbooks-windows:obj>

</quickbooks-windows:delete>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:delete realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"
                           type="BILL"
                           requestId="#[payload]">
    <quickbooks-windows:obj>
        <id>#[groovy: [
                'value' : '4042'
        ] ]</id>
        <syncToken>1</syncToken>
        <metaData>#[groovy: [
            'createdBy' : 'app',
            'createdById' : '1',
            'createTime' : '2010-06-18T02:17:29',
            'lastModifiedBy' : 'app',
            'lastModifiedById' : '1',
            'lastUpdatedTime' : '2010-06-18T02:17:291',
        ] ]</metaData>
        <synchronized>false</synchronized>
        <header>#[groovy: [
            'docNumber' : '1001',
            'txnDate' : '2010-09-27',
            'note' : '4 Pens',
            'vendorId' : [
                    'idDomain' : 'QB',
                    'value' : '272' ]
            'vendorName' : 'Seirra',
            'totalAmt' : '50',
            'salesTermId' : [ 
                    'idDomain' : 'QB',
                    'value' : '9' ],
            'salesTermName' : '30thDateDriven',
            'dueDate' : '2010-10-02'
        ] ]</header>
        <line>#[groovy: [ [
            'desc' : 'Pens',
            'amount' : '25',
            'billableStatus' : 'NOT_BILLABLE'
        ] ] ]</line>
    </quickbooks-windows:obj>

</quickbooks-windows:delete>

Attributes
NameDefault ValueDescription
config-ref Optional. Specify which configuration to use.
realmId The realmID, also known as the Company ID, uniquely identifies the data for a company. In QuickBooks Online, the Company ID appears on the My Account page. In Data Services for QuickBooks Online, the realmID is required in the URL for most calls.
appKey Application Id.
realmIdPseudonym Pseudonym Realm Id, obtained from the gateway that represents the company.
authIdPseudonym Pseudonym Auth Id, obtained from the gateway that represents the user.
type WindowsEntityType of the object.
requestId The unique request Id
Child Elements
<quickbooks-windows:obj>
Map that represents the object to be created.
Exception Payloads
Payload ClassDescription
QuickBooksRuntimeException when there is a problem with the server. It has a code and a message provided by quickbooks about the error.

<quickbooks-windows:find-objects>

Lazily retrieves Objects For details on how to generate a query see: Retrieve Especification

XML Sample
<quickbooks-windows:find-objects realmId="#[map-payload:realmId]"
                           appKey="#[map-payload:appKey]"
                           realmIdPseudonym="#[map-payload:realmIdPseudonym]"
                           authIdPseudonym="#[map-payload:authIdPseudonym]" 
                           type="#[map-payload:type]">
    <quickbooks-windows:query ref="#[map-payload:query]"/>

</quickbooks-windows:find-objects>
XML Sample
<quickbooks-windows:find-objects realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c" 
                           type="BILL">
    <quickbooks-windows:query>
        <draftFilter>DRAFT_ONLY</draftFilter>
        <minimumAmount>230</minimumAmount>
        <minimumBalance>500</minimumBalance>
        <startCreatedTMS>2010-06-18T02:17:29</startCreatedTMS>
        <endCreatedTMS>2011-06-18T02:17:29</endCreatedTMS>
    </quickbooks-windows:query>

</quickbooks-windows:find-objects>
XML Sample
<!-- retrieves all the accounts -->
<quickbooks-windows:find-objects realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c" 
                           type="ACCOUNT" />
XML Sample
<quickbooks-windows:find-objects realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c" 
                           type="ACCOUNT">
    <quickbooks-windows:query>
        <listIdSet>#[groovy: [
            'id' : [
                [ 'value' : '12345',
                  'idDomain' : 'QB' ],
                [ 'value' : '8589'
                  'idDomain' : 'QB' ],
                [ 'value' : '5321'
                  'idDomain' : 'QB' ],
                [ 'value' : '51'
                  'idDomain' : 'QB' ],
                [ 'value' : '19822'
                  'idDomain' : 'QB' ] ]
        ] ]</listIdSet>
    </quickbooks-windows:query>

</quickbooks-windows:find-objects>

Attributes
NameDefault ValueDescription
config-ref Optional. Specify which configuration to use.
realmId The realmID, also known as the Company ID, uniquely identifies the data for a company. In QuickBooks Online, the Company ID appears on the My Account page. In Data Services for QuickBooks Online, the realmID is required in the URL for most calls.
appKey Application Id.
realmIdPseudonym Pseudonym Realm Id, obtained from the gateway that represents the company.
authIdPseudonym Pseudonym Auth Id, obtained from the gateway that represents the user.
type WindowsEntityType of the object.
Child Elements
<quickbooks-windows:query>
Optional. Map that represents every filter and sort for the objects retrieved. Each type of object to be retrieved, has a TheObjectQuery class that has the attributes for which it can be filtered

(To know which attributes are accepted in every ObjectQuery, you could follow the link in the documentation of the WindowsEntityType that you require, or you can follow the link changing the word OBJECT for the object that you required, for example Account:

https://ipp.developer.intuit.com/0010_Intuit_Partner_Platform/0050_Data_Services/ 0500_QuickBooks_Windows/0600_Object_Reference/OBJECT

).

Do not complete the fields chunkSize and startPage, because are need it for the "lazily retrieve".

If query is null, it will retrieve all the objects of that WindowsEntityType.
Return Payload
  • Iterable of the objects to be retrieved.
Exception Payloads
Payload ClassDescription
QuickBooksRuntimeException when there is a problem with the server. It has a code and a message provided by quickbooks about the error.

<quickbooks-windows:generate-a-new-request-id>

Generate a new GUID for the requestId

XML Sample
<quickbooks-windows:generate-a-new-request-id />

Attributes
NameDefault ValueDescription
config-ref Optional. Specify which configuration to use.
Child Elements
Return Payload
  • a GUID for the requestId

<quickbooks-windows:get-object>

Retrieve objects by ID. For details of the supported objects: Supported Objects and Operations

XML Sample
<quickbooks-windows:get-object realmId="#[map-payload:realmId]"
                           appKey="#[map-payload:appKey]"
                           realmIdPseudonym="#[map-payload:realmIdPseudonym]"
                           authIdPseudonym="#[map-payload:authIdPseudonym]" 
                           type="#[map-payload:type]">
    <quickbooks-windows:id ref="#[map-payload:id]"/>

</quickbooks-windows:get-object>
XML Sample
<quickbooks-windows:get-object realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c" 
                           type="CUSTOMER">
    <quickbooks-windows:id>
        <idDomain>NG</idDomain>
        <value>1902</value>
    </quickbooks-windows:id>

</quickbooks-windows:get-object>
XML Sample
<quickbooks-windows:get-object realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c" 
                           type="ACCOUNT">
    <quickbooks-windows:id>
        <idDomain>QB</idDomain>
        <value>312312</value>
    </quickbooks-windows:id>

</quickbooks-windows:get-object>

Attributes
NameDefault ValueDescription
config-ref Optional. Specify which configuration to use.
realmId The realmID, also known as the Company ID, uniquely identifies the data for a company. In QuickBooks, the Company ID appears on the My Account page. In Data Services for QuickBooks, the realmID is required in the URL for most calls.
appKey Application Id.
realmIdPseudonym Pseudonym Realm Id, obtained from the gateway that represents the company.
authIdPseudonym Pseudonym Auth Id, obtained from the gateway that represents the user.
type WindowsEntityType of the object.
Child Elements
<quickbooks-windows:id>
Id which is assigned by Data Services when the object is created.
Return Payload
  • The object.
Exception Payloads
Payload ClassDescription
QuickBooksRuntimeException when there is a problem with the server. It has a code and a message provided by quickbooks about the error.

<quickbooks-windows:status>

Retrieve the Status

Retrieves information about the sync status of Quickbooks entities. You can also query specific entity types for either synchronized or unsynchronized objects with filters. You can get information on recent synchronizations using the syncActivity operation.

Note: Sync status information will be maintained for all operations in the cloud up to 30 days old. Of those operations older than 30 days, only the last operation's synch status will be maintained.

XML Sample
<quickbooks-windows:status realmId="#[map-payload:realmId]"
                                  appKey="#[map-payload:appKey]"
                                  realmIdPseudonym="#[map-payload:realmIdPseudonym]"
                                  authIdPseudonym="#[map-payload:authIdPseudonym]">
    <quickbooks-windows:sync-status-request ref="#[map-payload:syncStatusRequest]"/>
</quickbooks-windows:status>
XML Sample
<quickbooks-windows:status realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c" />
XML Sample
<quickbooks-windows:status realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c">
    <quickbooks-windows:sync-status-request>
        <ngIdSet>#[groovy: [ 
            [   'ngObjectType' : 'CUSTOMER',
                'ngId' : '2948729' ]
        ] ]</ngIdSet>
    </quickbooks-windows:sync-status-request>
</quickbooks-windows:status>
XML Sample
<quickbooks-windows:status realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c">
    <quickbooks-windows:sync-status-request>
        <requestId>#[groovy: [ 
            [   '81283818123912398123981723981239' ]
        ] ]</requestId>
    </quickbooks-windows:sync-status-request>
</quickbooks-windows:status>

Attributes
NameDefault ValueDescription
config-ref Optional. Specify which configuration to use.
realmId The realmID, also known as the Company ID, uniquely identifies the data for a company. In QuickBooks Online, the Company ID appears on the My Account page. In Data Services for QuickBooks Online, the realmID is required in the URL for most calls.
appKey Application Id.
realmIdPseudonym Pseudonym Realm Id, obtained from the gateway that represents the company.
authIdPseudonym Pseudonym Auth Id, obtained from the gateway that represents the user.
Child Elements
<quickbooks-windows:sync-status-request>
Optional. Map that represents a SyncStatusRequest object. It has the specifications of the syncStatuses to be retrieved. (like a filter)
Return Payload
  • list of SyncStatusResponse

<quickbooks-windows:sync-activity>

Retrieve the SyncActivities

The SyncActivity object contains information about Quickbooks for Windows synchronizations. To get the sync status of another type of object, for example, a customer, use the status operation. To filter a query based on whether or not an object is synchronized, use a filter.

Note: Sync status information will be maintained for all operations in the cloud up to 30 days old. Of those operations older than 30 days, only the last operation's synch status will be maintained.

XML Sample
<quickbooks-windows:sync-activity realmId="#[map-payload:realmId]"
                                  appKey="#[map-payload:appKey]"
                                  realmIdPseudonym="#[map-payload:realmIdPseudonym]"
                                  authIdPseudonym="#[map-payload:authIdPseudonym]">
    <quickbooks-windows:sync-activity-request ref="#[map-payload:syncActivityRequest]"/>
</quickbooks-windows:sync-activity>
XML Sample
<quickbooks-windows:sync-activity realmId="33221157"
                                  appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                                  realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                                  authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c" />
XML Sample
<quickbooks-windows:sync-activity realmId="33221157"
                                  appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                                  realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                                  authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c" >
    <quickbooks-windows:sync-activity-request>
        <startCreatedTMS>2010-06-18T02:17:29</startCreatedTMS>
        <endCreatedTMS>2011-06-18T02:17:29</endCreatedTMS>
    </quickbooks-windows:sync-activity-request>
</quickbooks-windows:sync-activity>

Attributes
NameDefault ValueDescription
config-ref Optional. Specify which configuration to use.
realmId The realmID, also known as the Company ID, uniquely identifies the data for a company. In QuickBooks Online, the Company ID appears on the My Account page. In Data Services for QuickBooks Online, the realmID is required in the URL for most calls.
appKey Application Id.
realmIdPseudonym Pseudonym Realm Id, obtained from the gateway that represents the company.
authIdPseudonym Pseudonym Auth Id, obtained from the gateway that represents the user.
Child Elements
<quickbooks-windows:sync-activity-request>
Optional. Map that represents a SyncActivityRequest object. It has the specifications of the SyncActivities to be retrieved. (like a filter)
Return Payload
  • list of SyncActivityResponse

<quickbooks-windows:update>

Updates.

Specify all the parameters for the object, not just the new or changed elements. If you omit an element, it is removed from the object by the update operation.

For details of the supported objects and its fields: Supported Objects and Operations

When updating transaction objects (such as Estimate or Invoice), note the following:

* To retain existing line items, specify them in the request XML body and do not change their order.

* To remove a line item, omit it.

* To add a new line item, insert a new one in the list.

XML Sample
<quickbooks-windows:update realmId="#[map-payload:realmId]"
                           appKey="#[map-payload:appKey]"
                           realmIdPseudonym="#[map-payload:realmIdPseudonym]"
                           authIdPseudonym="#[map-payload:authIdPseudonym]" 
                           type="#[map-payload:type]"
                           requestId="#[map-payload:requestId]"
                           draft="#[map-payload:draft]"
                           fullResponse="#[map-payload:fullResponse]">
    <quickbooks-windows:obj ref="#[map-payload:obj]"/>

</quickbooks-windows:update>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:update realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"                         
                           type="JOB"
                           requestId="#[payload]">
    <quickbooks-windows:obj>
        <id>#[groovy: [
                'value' : '4042'
        ] ]</id>
        <syncToken>1</syncToken>
        <metaData>#[groovy: [
            'createdBy' : 'app',
            'createdById' : '1',
            'createTime' : '2010-06-18T02:17:29',
            'lastModifiedBy' : 'app',
            'lastModifiedById' : '1',
            'lastUpdatedTime' : '2010-06-18T02:17:291',
        ] ]</metaData>
        <synchronized>false</synchronized>
        <typeOf>PERSON</typeOf>
        <name>Bathroom Remodel Updated</name>
        <openBalance>#[groovy: [
            'currencyCode' : 'USD',
            'amount' : '100',
        ] ]</openBalance>
        <jobInfo>#[groovy: [
            'startDate' : '2010-01-01',
            'projectedEndDate' : '2010-11-12',
            'description' : 'remodel bathroom',
            'jobTypeName' : 'Residential'
        ] ]</jobInfo>
    </quickbooks-windows:obj>
</quickbooks-windows:update>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:update realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"                         
                           type="CHECK"
                           requestId="#[payload]">
    <quickbooks-windows:obj>
        <id>#[groovy: [
                'value' : '4042'
        ] ]</id>
        <syncToken>1</syncToken>
        <metaData>#[groovy: [
            'createdBy' : 'app',
            'createdById' : '1',
            'createTime' : '2010-06-18T02:17:29',
            'lastModifiedBy' : 'app',
            'lastModifiedById' : '1',
            'lastUpdatedTime' : '2010-06-18T02:17:291',
        ] ]</metaData>
        <synchronized>false</synchronized>
        <header>#[groovy: [ 
            'docNumber' : '33', 
            'txnDate' : '2010-11-18', 
            'bankAccountId' : '146',  
            'entityId' : '283',
            'totalAmt' : '7000'        
        ] ]</header> 
        <line>#[groovy: [ [
            'desc' : 'Test Updated',
            'amount' : 2000,
            'accountId' : [
                'value' : '146' ]  
        ] ] ]</line>
    </quickbooks-windows:obj>
</quickbooks-windows:update>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:update realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"                         
                           type="BILL"
                           requestId="#[payload]">
    <quickbooks-windows:obj>
        <id>#[groovy: [
                'value' : '4042'
        ] ]</id>
        <syncToken>1</syncToken>
        <metaData>#[groovy: [
            'createdBy' : 'app',
            'createdById' : '1',
            'createTime' : '2010-06-18T02:17:29',
            'lastModifiedBy' : 'app',
            'lastModifiedById' : '1',
            'lastUpdatedTime' : '2010-06-18T02:17:291',
        ] ]</metaData>
        <synchronized>false</synchronized>
        <header>#[groovy: [
            'docNumber' : '1001',
            'txnDate' : '2010-09-27',
            'note' : '4 Pens',
            'vendorId' : [
                    'idDomain' : 'QB',
                    'value' : '272' ]
            'vendorName' : 'Seirra',
            'totalAmt' : '50',
            'salesTermId' : [ 
                    'idDomain' : 'QB',
                    'value' : '9' ],
            'salesTermName' : '30thDateDriven',
            'dueDate' : '2010-10-02'
        ] ]</header>
        <line>#[groovy: [ [
            'desc' : 'Pens Updated',
            'amount' : '25',
            'billableStatus' : 'NOT_BILLABLE'
        ] ] ]</line>
    </quickbooks-windows:obj>
</quickbooks-windows:update>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:update realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"                         
                           type="EMPLOYEE"
                           requestId="#[payload]">
    <quickbooks-windows:obj>
        <id>#[groovy: [
                'value' : '4042'
        ] ]</id>
        <syncToken>1</syncToken>
        <metaData>#[groovy: [
            'createdBy' : 'app',
            'createdById' : '1',
            'createTime' : '2010-06-18T02:17:29',
            'lastModifiedBy' : 'app',
            'lastModifiedById' : '1',
            'lastUpdatedTime' : '2010-06-18T02:17:291',
        ] ]</metaData>
        <synchronized>false</synchronized>
        <typeOf>PERSON</TypeOf>
        <name>John Simpson Updated</Name>
        <address>#[groovy: [ [
          'line1' : '21215 Burbank Boulevard, Ste. 100',
          'city' : 'Woodland Hills',
          'countrySubDivisionCode' : 'CA',
          'postalCode' : '91367',
          'tag' : ['Billing']
        ] ] ]</address>
        <phone>#[groovy: [ [
          'deviceType' : 'Mobile',
          'freeFormNumber' : '(818) 936-7800',
          'tag' : ['Mobile']
        ] ] ]</phone>
        <email>#[groovy: [ [
          'address' : 'john.simpson@mint.com',
          'tag' : ['Business']
        ] ] ]</email>
        <givenName>John</givenName>
        <familyName>Simpson</familyName>
    </quickbooks-windows:obj>
</quickbooks-windows:update>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:update realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"                         
                           type="PAYMENT"
                           requestId="#[payload]">
    <quickbooks-windows:obj>
        <id>#[groovy: [
                'value' : '4042'
        ] ]</id>
        <syncToken>1</syncToken>
        <metaData>#[groovy: [
            'createdBy' : 'app',
            'createdById' : '1',
            'createTime' : '2010-06-18T02:17:29',
            'lastModifiedBy' : 'app',
            'lastModifiedById' : '1',
            'lastUpdatedTime' : '2010-06-18T02:17:291',
        ] ]</metaData>
        <synchronized>false</synchronized>
         <header>#[groovy: [
             'docNumber' : '543216789',
             'txnDate' : '2010-10-20',
             'currency' : 'USD',
             'customerId' : [
                    'idDomain' : 'QB',
                    'value' : '283' ],
             'totalAmt' : '100'
         ] ]</header>
         <line>#[groovy: [ [
             'desc' : 'Line 1 of payment Updated',
             'amount' : '200',
             'txnId' : [ 
                    'idDomain' : 'QB',
                    'value' : '64134' ]
         ] ] ]</line>
    </quickbooks-windows:obj>
</quickbooks-windows:update>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:update realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"                         
                           type="ITEM"
                           requestId="#[payload]"
                           draft="false"
                           fullResponse="true">
    <quickbooks-windows:obj>
        <id>#[groovy: [
                'value' : '4042'
        ] ]</id>
        <syncToken>1</syncToken>
        <metaData>#[groovy: [
            'createdBy' : 'app',
            'createdById' : '1',
            'createTime' : '2010-06-18T02:17:29',
            'lastModifiedBy' : 'app',
            'lastModifiedById' : '1',
            'lastUpdatedTime' : '2010-06-18T02:17:291',
        ] ]</metaData>
        <synchronized>false</synchronized>
        <name>Dusting Updated</name>
        <desc>Dusting labor</desc>
        <taxable>false</taxable>
        <active>true</active>
        <unitPrice>#[groovy: [
           'currencyCode' : 'USD',
           'amount' : '55'
        ] ]</unitPrice>
        <type>Service</type>
        <incomeAccountRef>#[groovy: [
           'accountId' : [ 
                'idDomain': 'QB',
                'value' : '25' ],
           'accountName' : 'Labor Income',
           'accountType' : 'REVENUE'
        ] ]</incomeAccountRef>
        <purchaseCost>#[groovy: [
           'currencyCode' : 'USD',
           'amount' : '0'
        ] ]</purchaseCost>
        <avgCost>#[groovy: [
           'currencyCode' : 'USD',
           'amount' : '0'
        ] ]</avgCost>
    </quickbooks-windows:obj>
</quickbooks-windows:update>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:update realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"                         
                           type="CUSTOMER"
                           requestId="#[payload]"
                           draft="false"
                           fullResponse="true">
    <quickbooks-windows:obj>
        <id>#[groovy: [
                'value' : '4042'
        ] ]</id>
        <syncToken>1</syncToken>
        <metaData>#[groovy: [
            'createdBy' : 'app',
            'createdById' : '1',
            'createTime' : '2010-06-18T02:17:29',
            'lastModifiedBy' : 'app',
            'lastModifiedById' : '1',
            'lastUpdatedTime' : '2010-06-18T02:17:291',
        ] ]</metaData>
        <synchronized>false</synchronized>
        <typeOf>PERSON</typeOf>
        <name>Jane Doe Updated</name>
        <address>#[groovy: [ [
            'line1' : '5720 Peachtree Pkwy. 1',
            'line2' : 'Norcross',
            'city' : 'Mountain View, CA 94043, CA 940',
            'country' : 'USA',
            'countrySubDivisionCode' : 'ON',
            'postalCode' : '94043',
            'tag' : ['Billing']
        ] ] ]</address>
        <DBAName>Mint</DBAName>
        <acctNum>23423423</acctNum>
    </quickbooks-windows:obj>
</quickbooks-windows:update>
XML Sample
<quickbooks-windows:generate-a-new-request-id />
<quickbooks-windows:update realmId="33221157"
                           appKey="e52dixcj2r7s2buxrd6gdujhd7v"
                           realmIdPseudonym="5f729f9c-a2d6-4727-124e-ecad796da0a5"
                           authIdPseudonym="6f3d72f2-525b-4309-ac2b-f7c2dfbb903c"                         
                           type="ACCOUNT"
                           requestId="#[payload]"
                           draft="false"
                           fullResponse="true">
    <quickbooks-windows:obj>
        <id>#[groovy: [
                'value' : '4042'
        ] ]</id>
        <syncToken>1</syncToken>
        <metaData>#[groovy: [
            'createdBy' : 'app',
            'createdById' : '1',
            'createTime' : '2010-06-18T02:17:29',
            'lastModifiedBy' : 'app',
            'lastModifiedById' : '1',
            'lastUpdatedTime' : '2010-06-18T02:17:291',
        ] ]</metaData>
        <synchronized>false</synchronized>
        <name>Test Account QW 91 Updated</name>
        <active>true</active>
        <type>EXPENSE<type>
        <subtype>expense</subtype>
        <acctNum>9919823</acctNum>
        <openingBalance>0</openingBalance>
        <openingBalanceDate>2012-02-02T00:00:00Z</openingBalanceDate>
    </quickbooks-windows:obj>
</quickbooks-windows:update>

Attributes
NameDefault ValueDescription
config-ref Optional. Specify which configuration to use.
realmId The realmID, also known as the Company ID, uniquely identifies the data for a company. In QuickBooks Online, the Company ID appears on the My Account page. In Data Services for QuickBooks Online, the realmID is required in the URL for most calls.
appKey Application Id.
realmIdPseudonym Pseudonym Realm Id, obtained from the gateway that represents the company.
authIdPseudonym Pseudonym Auth Id, obtained from the gateway that represents the user.
type WindowsEntityType of the object.
requestId The unique request Id
draft false Optional. Boolean draft

Saving an IDS object in a draft state prevents it from being synchronized with Quickbooks. Your app might want to save an object in a draft state if the user has not finished entering data, or for some other reason the user does not want to commit the object for synchronization. You may save an object in draft state during a create or update operation by specifying the draft="true" attribute. By default, the Draft attribute is false, which means that the saved object will be synchronized with Quickbooks.

fullResponse false Optional. Boolean fullResponse. If this flag is true, it will return the created object, otherwise, it will return an ObjectRef.
Child Elements
<quickbooks-windows:obj>
Map that represents the object to be created.
Return Payload
  • The updated Object or an ObjectRef if the fullResponse flag was null of false.
Exception Payloads
Payload ClassDescription
QuickBooksRuntimeException when there is a problem with the server. It has a code and a message provided by quickbooks about the error.