You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/data-factory/connector-quickbooks.md
+84-5Lines changed: 84 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,7 +7,7 @@ ms.author: jianleishen
7
7
ms.subservice: data-movement
8
8
ms.topic: conceptual
9
9
ms.custom: synapse
10
-
ms.date: 10/20/2023
10
+
ms.date: 06/11/2025
11
11
---
12
12
13
13
# Copy data from QuickBooks Online using Azure Data Factory or Synapse Analytics (Preview)
@@ -16,7 +16,10 @@ ms.date: 10/20/2023
16
16
This article outlines how to use the Copy Activity in an Azure Data Factory or Synapse Analytics pipeline to copy data from QuickBooks Online. It builds on the [copy activity overview](copy-activity-overview.md) article that presents a general overview of copy activity.
17
17
18
18
> [!IMPORTANT]
19
-
> This connector is currently in preview. You can try it out and give us feedback. If you want to take a dependency on preview connectors in your solution, please contact [Azure support](https://azure.microsoft.com/support/).
19
+
> This connector version 1.0 is currently in preview. You can try it out and give us feedback. If you want to take a dependency on preview connectors in your solution, please contact [Azure support](https://azure.microsoft.com/support/).
20
+
21
+
> [!IMPORTANT]
22
+
> The QuickBooks connector version 2.0 (Preview) provides improved native QuickBooks support. If you are using QuickBooks connector version 1.0 in your solution, please [upgrade the QuickBooks connector](#upgrade-the-quickbooks-connector-from-version-10-to-version-20) before **August 31, 2025**. Refer to this [section](#quickbooks-connector-lifecycle-and-upgrade) for details on the difference between version 2.0 (Preview) and version 1.0.
20
23
21
24
## Supported capabilities
22
25
@@ -66,7 +69,53 @@ The following sections provide details about properties that are used to define
66
69
67
70
## Linked service properties
68
71
69
-
The following properties are supported for QuickBooks linked service:
72
+
The QuickBooks connector now supports version 2.0 (Preview). Refer to this [section](#upgrade-the-quickbooks-connector-from-version-10-to-version-20) to upgrade your QuickBooks connector version from version 1.0. For the property details, see the corresponding sections.
73
+
74
+
-[Version 2.0 (Preview)](#version-20)
75
+
-[Version 1.0](#version-10)
76
+
77
+
### <aname="version-20"></a>Version 2.0 (Preview)
78
+
79
+
The QuickBooks linked service supports the following properties when apply version 2.0 (Preview):
80
+
81
+
| Property | Description | Required |
82
+
|:--- |:--- |:--- |
83
+
| type | The type property must be set to: **QuickBooks**| Yes |
84
+
| version | The version that you specify. The value is `2.0`. | Yes |
85
+
| endpoint | The endpoint of the QuickBooks Online server. (that is, quickbooks.api.intuit.com) | Yes |
86
+
| companyId | The company ID of the QuickBooks company to authorize. For info about how to find the company ID, see [How do I find my Company ID](https://quickbooks.intuit.com/community/Getting-Started/How-do-I-find-my-Company-ID/m-p/185551). | Yes |
87
+
| consumerKey | The client ID of your QuickBooks Online application for OAuth 2.0 authentication. Learn more from [here](https://developer.intuit.com/app/developer/qbo/docs/develop/authentication-and-authorization/oauth-2.0#obtain-oauth2-credentials-for-your-app). | Yes |
88
+
| consumerSecret | The client secret of your QuickBooks Online application for OAuth 2.0 authentication. Mark this field as a SecureString to store it securely, or [reference a secret stored in Azure Key Vault](store-credentials-in-key-vault.md). | Yes |
89
+
| refreshToken | The OAuth 2.0 refresh token associated with the QuickBooks application. Learn more from [here](https://developer.intuit.com/app/developer/qbo/docs/develop/authentication-and-authorization/oauth-2.0#obtain-oauth2-credentials-for-your-app). Note refresh token will be expired after 180 days. Customers need to regularly update the refresh token. <br/>Mark this field as a SecureString to store it securely, or [reference a secret stored in Azure Key Vault](store-credentials-in-key-vault.md).| Yes |
90
+
91
+
**Example:**
92
+
93
+
```json
94
+
{
95
+
"name": "QuickBooksLinkedService",
96
+
"properties": {
97
+
"type": "QuickBooks",
98
+
"version": "2.0",
99
+
"typeProperties": {
100
+
"endpoint": "quickbooks.api.intuit.com",
101
+
"companyId": "<company id>",
102
+
"consumerKey": "<consumer key>",
103
+
"consumerSecret": {
104
+
"type": "SecureString",
105
+
"value": "<clientSecret>"
106
+
},
107
+
"refreshToken": {
108
+
"type": "SecureString",
109
+
"value": "<refresh token>"
110
+
}
111
+
}
112
+
}
113
+
}
114
+
```
115
+
116
+
### <aname="version-10"></a> Version 1.0
117
+
118
+
The following properties are supported for QuickBooks linked service when apply version 1.0:
70
119
71
120
| Property | Description | Required |
72
121
|:--- |:--- |:--- |
@@ -77,7 +126,7 @@ The following properties are supported for QuickBooks linked service:
77
126
| companyId | The company ID of the QuickBooks company to authorize. For info about how to find the company ID, see [How do I find my Company ID](https://quickbooks.intuit.com/community/Getting-Started/How-do-I-find-my-Company-ID/m-p/185551). | Yes |
78
127
| consumerKey | The client ID of your QuickBooks Online application for OAuth 2.0 authentication. Learn more from [here](https://developer.intuit.com/app/developer/qbo/docs/develop/authentication-and-authorization/oauth-2.0#obtain-oauth2-credentials-for-your-app). | Yes |
79
128
| consumerSecret | The client secret of your QuickBooks Online application for OAuth 2.0 authentication. Mark this field as a SecureString to store it securely, or [reference a secret stored in Azure Key Vault](store-credentials-in-key-vault.md). | Yes |
80
-
| refreshToken | The OAuth 2.0 refresh token associated with the QuickBooks application. Learn more from [here](https://developer.intuit.com/app/developer/qbo/docs/develop/authentication-and-authorization/oauth-2.0#obtain-oauth2-credentials-for-your-app). Note refresh token will be expired after 180 days. Customer need to regularly update the refresh token. <br/>Mark this field as a SecureString to store it securely, or [reference a secret stored in Azure Key Vault](store-credentials-in-key-vault.md).| Yes |
129
+
| refreshToken | The OAuth 2.0 refresh token associated with the QuickBooks application. Learn more from [here](https://developer.intuit.com/app/developer/qbo/docs/develop/authentication-and-authorization/oauth-2.0#obtain-oauth2-credentials-for-your-app). Note refresh token will be expired after 180 days. Customers need to regularly update the refresh token. <br/>Mark this field as a SecureString to store it securely, or [reference a secret stored in Azure Key Vault](store-credentials-in-key-vault.md).| Yes |
81
130
| useEncryptedEndpoints | Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true. | No |
82
131
83
132
**Example:**
@@ -152,7 +201,7 @@ To copy data from QuickBooks Online, set the source type in the copy activity to
152
201
| Property | Description | Required |
153
202
|:--- |:--- |:--- |
154
203
| type | The type property of the copy activity source must be set to: **QuickBooksSource**| Yes |
155
-
| query | Use the custom SQL query to read data. For example: `"SELECT * FROM "Bill" WHERE Id = '123'"`. | No (if "tableName" in dataset is specified) |
204
+
| query | Use the custom SQL query to read data. <br><br>For version 2.0 (Preview), you can only use QuickBooks native query with limitations. For more information, see [query operations and syntax](https://developer.intuit.com/app/developer/qbo/docs/learn/explore-the-quickbooks-online-api/data-queries). Note that the `tableName` specified in the query must match the `tableName` in the dataset. <br><br>For version 1.0, you can use SQL-92 query. For example: `"SELECT * FROM "Bill" WHERE Id = '123'"`. | No (if "tableName" in dataset is specified) |
156
205
157
206
**Example:**
158
207
@@ -189,9 +238,39 @@ To copy data from QuickBooks Online, set the source type in the copy activity to
189
238
190
239
The Copy Activity in the service cannot copy data directly from Quickbooks Desktop. To copy data from Quickbooks Desktop, export your Quickbooks data to a comma-separated-values (CSV) file and then upload the file to Azure Blob Storage. From there, you can use the service to copy the data to the sink of your choice.
191
240
241
+
## Data type mapping for Quickbooks
242
+
243
+
When you copy data from Quickbooks, the following mappings apply from Quickbooks's data types to the internal data types used by the service. To learn about how the copy activity maps the source schema and data type to the sink, see [Schema and data type mappings](copy-activity-schema-and-type-mapping.md).
244
+
245
+
| Quickbooks data type | Interim service data type (for version 2.0 (Preview)) | Interim service data type (for version 1.0) |
246
+
|:--- |:--- |:--- |
247
+
| String| string| string |
248
+
| Boolean | bool | bool |
249
+
| DateTime | datetime | datetime |
250
+
| Decimal | decimal (15,2) | decimal (15, 2) |
251
+
| Enum | string | string |
252
+
| Date | date | datetime |
253
+
| BigDecimal | decimal (15,2) | decimal (15, 2) |
254
+
| Integer | int | int |
255
+
192
256
## Lookup activity properties
193
257
194
258
To learn details about the properties, check [Lookup activity](control-flow-lookup-activity.md).
195
259
260
+
## Quickbooks connector lifecycle and upgrade
261
+
262
+
The following table shows the release stage and change logs for different versions of the QuickBooks connector:
263
+
264
+
| Version | Release stage | Change log |
265
+
| :----------- | :------- |:------- |
266
+
| Version 1.0 | End of support announced | / |
267
+
| Version 2.0 | Public Preview | • Support Quickbooks native query with limitations. GROUP BY clauses, JOIN clauses and Aggregate Function (Avg, Max, Sum) aren't supported. For more information, see [query operations and syntax](https://developer.intuit.com/app/developer/qbo/docs/learn/explore-the-quickbooks-online-api/data-queries). <br><br>• The `tableName` specified in the `query` must match the `tableName` in the dataset. <br><br>• Date is read as date data type. <br><br>• SQL-92 query is not supported. <br><br>• `useEncryptedEndpoints` is not supported. |
268
+
269
+
### <aname="upgrade-the-quickbooks-connector-from-version-10-to-version-20"></a> Upgrade the Quickbooks connector from version 1.0 to version 2.0 (Preview)
270
+
271
+
1. In **Edit linked service** page, select 2.0 (Preview) for version. For more information, see [linked service version 2.0 (Preview) properties](#version-20).
272
+
1. If you use SQL query in the copy activity source or the lookup activity that refers to the version 1.0 linked service, you need to convert them to the QuickBooks native query. Learn more about native query from [Quickbooks as a source type](#quickbooks-as-source) and [query operations and syntax](https://developer.intuit.com/app/developer/qbo/docs/learn/explore-the-quickbooks-online-api/data-queries).
273
+
1. The data type mapping for the Quickbooks linked service version 2.0 (Preview) is different from that for the version 1.0. To learn the latest data type mapping, see [Data type mapping for Quickbooks](#data-type-mapping-for-quickbooks).
274
+
196
275
## Related content
197
276
For a list of data stores supported as sources and sinks by the copy activity, see [supported data stores](copy-activity-overview.md#supported-data-stores-and-formats).
0 commit comments