No Tags in QuickBooks Online API? 3 hacks to work around it!

Are you struggling with tags in QuickBooks Online due to API limitations, You’re not alone. QuickBooks Online’s most requested API feature is still missing – here’s how to work around it.

What are tags and tag groups?

QuickBooks Online allows users to assign tags to transactions ( invoices, expenses, and bills). These tags help provide deeper business insights into income and expenses.

Let’s say you run a business selling products through your eCommerce store. Then, you can tag expenses related to different product lines, allowing you to see the profitability of each line without altering your accounting records.

Tags in QuickBooks Online help various industries track and organize transactions.

  • E-commerce: Tag different product lines to analyze their profitability.
  • Construction: Tag expenses by project to monitor cost overruns.
  • Event Planning: Tag transactions for each event to understand event-specific earnings and expenses.
  • Healthcare: Tag services provided to track the profitability of each type.
    Screenshot of a tag group titled
    Tag Groups for events
    A table showing an expense of $550 tagged as

The Problem in QuickBooks Online API: No Support for Tags

While consulting a client, I found that they are using MS Power BI to connect with their CRM software (Salesforce) and Accounting Software (QuickBooks Online)… but they got stuck because the default connector within MS Power BI doesn’t show tags for each transaction.

In their business, they would like to track the income and expenses of each event and events happen on an ad hoc basis. So every time there is a new type of event with this problem in hand. They started looking for alternatives to MS Power BI to see if other Business intelligence software has a feature to retrieve the tags along with transactions, but the fact is that the root cause is not in the BI system; it’s the accounting system, QuickBooks online!! 

QuickBooks Online doesn’t support reading, writing, or deleting tags using API.

The second problem is that QuickBooks Online’s invoice, bill, and expense transactions don’t return the assigned tags. 

It seems like a limitation of QuickBooks API.

That was reported in the year 2020. Despite being one of the highest-voted issues in the Intuit Developer Forum, it remains unresolved. Check the below screenshot describing the same problem with 16 upvotes 

A user, Dominic Pouzin, asks about retrieving tags from QBO Online API. Intuit Developer Support responds with a negative answer and suggests requesting the feature.

Still, there is no API available in 2024 for Tags.

It is the highest voted (1210 votes) feature in the Intuit developer idea forum.

A suggestion board showing feature requests for QuickBooks Online API.

There must be some reason for QuickBooks Online not supporting tags via API!!

Let’s hope someday, Intuit developers make the API publicly available for retrieving tags and tag groups along with invoices, bills, and expenses.

For the time being, we will have to go with workarounds. 

Workarounds and Solutions for Tags in QuickBooks Online API

Custom Fields:

QuickBooks Online offers 3 to 10 custom fields depending on your edition. One workaround is setting the custom fields instead of using tags. 

Example of a custom field (string) named “tag”:


tag = event:charity gala

tag = productline:clothing

Here, “productline” acts as the TagGroup, and “clothing” is the tag value. 

This approach allows you to assign tags to transactions, similar to the functionality you would get with actual tags.

Very important: understand these custom field limitations too…

  1.  Field Type:  use only the custom field of type “string” only because API doesn’t allow to access select box-type of field.
  2. Field Limitations: Be aware that the QuickBooks API only supports accessing the first three custom string fields. QuickBooks limitation means that any additional custom fields or other field types (e.g., date, numeric) cannot be queried via the API

2. Categories and Classes:

 The second solution is using classes and locations instead of tags. 

Classes help categorize transactions by different departments or product lines, while locations track income and expenses by different business locations or territories. 

Using these features, you can organize your transactions neatly without relying on the limited tag functionality in the API. This provides a structured way to categorize and view financial data to monitor various side of your businesses.

Screenshot of a financial report interface showing a Profit and Loss by Class Report- QuickBooks

Additionally, QuickBooks Online has built-in facilities for viewing Profit & Loss (P&L) and Balance Sheet (BS) reports filtered by class and location, which helps in detailed financial analysis and reporting

However, in this case, the client was already using class and location for different purposes and still they wanted transactions to be filtered by event. it’s very obvious that if a client had got a solution by using class and location use of tags and exporting them via API would never have become a requirement.

Also, for further reading on overcoming QuickBooks Online API limitations, check out our blog on Solving QuickBooks Online API Limitations with RPA | Microsoft Power Automate to learn how Robotic Process Automation can help streamline your processes.

3. No-Code tools:

The third solution is to use no-code tools to modify transactions and assign tags outside of QuickBooks Online. These tools can help you gain better control over the data and streamline the tagging process. Once the tags are assigned to transactions, you can sync this data from the no-code tool to Power BI, ensuring all necessary transaction details are included for comprehensive analysis. This approach bypasses the API limitations and provides a flexible solution for your data integration needs. 

Tip: Using these tools means additional monthly subscription and integration costs. To reduce licensing costs, you can use open source no-code tools which already have integration with QuickBooks Online.

Recap

We looked at the issue with QuickBooks Online’s API limitations for tags. Tags and tag groups are important for various industries to track and organize transactions. But QuickBooks Online can’t read, write, or delete tags via the API. We discussed three workarounds: using custom fields, classes and locations, and no-code tools to get around this limitation.

Future Outlook

Keep yourself updated with Intuit’s latest developments and join forums to ask for better API features. This will help you to use new features as soon as they are rolled out.

Have you faced similar issues? Get our QuickBooks Integration solutions to fix the problem and optimize your workflows!

How did you solve them?

Share your experiences and any extra workarounds you found. reach out to me on chintan[ at ]satvasolutions.com. Your insights can help others deal with these limitations.

Article by

Chintan Prajapati

Chintan Prajapati, a seasoned computer engineer with over 20 years in the software industry, is the Founder and CEO of Satva Solutions. His expertise lies in Accounting & ERP Integrations, RPA, and developing technology solutions around leading ERP and accounting software, focusing on using Responsible AI and ML in fintech solutions. Chintan holds a BE in Computer Engineering and is a Microsoft Certified Professional, Microsoft Certified Technology Specialist, Certified Azure Solution Developer, Certified Intuit Developer, and Xero Developer.Throughout his career, Chintan has significantly impacted the accounting industry by consulting and delivering integrations and automation solutions that have saved thousands of man-hours. He aims to provide readers with insightful, practical advice on leveraging technology for business efficiency.Outside of his professional work, Chintan enjoys trekking and bird-watching. Guided by the philosophy, "Deliver the highest value to clients". Chintan continues to drive innovation and excellence in digital transformation strategies from his base in Ahmedabad, India.