How to Build an App for QuickBooks Online Using Intuit Developer Portal Chintan Prajapati February 20, 2026 8 min read IntroductionQuickBooks Online requires no introduction.It is one of the most widely used cloud-based accounting applications across industries. Businesses and accountants rely on the QuickBooks Online app for its ease of use, strong security features, and ability to support remote work.QuickBooks Online has earned a reputation among businesses and accountants for its user-friendliness, security features, and remote work capability.The Intuit QuickBooks app ecosystem further enhances this experience by allowing developers and businesses to extend its functionality.Also, with the QuickBooks API integration feature, you can expand QuickBooks’ features. With this software, you can leverage many QuickBooks Online APIs to do much more.However, you must first create a QuickBooks Online app to integrate QuickBooks APIs.We will discuss the process in detail to give you a clear understanding of developing a QuickBooks Online app with the Intuit Portal.Before we delve into the process, let’s understand the importance of building a QuickBooks Online App.Why Build a QuickBooks Online App? Do you want to automate workflows? Do you want to create seamless financial integrations with your QuickBooks Online software for uninterrupted operations? Do you want to mitigate manual errors? Do you want to streamline tax preparation and compliance?If the answers to these questions are affirmative, you must build a QuickBooks Online app.To get more features, you can connect multiple QuickBooks Online APIs.📌 Before you start building your QBO app, it’s crucial to understand key API limitations on tags, custom fields, and bill payments.Read: Top 5 QuickBooks API LimitationsHow to Build a QuickBooks Online App: A Comprehensive GuideThe answer is straightforward if you ask me how to create a QuickBooks Online app using Intuit Developer Portal. Just follow this write-up to create an app without any hurdles.Let’s go through the steps in detail.Step 1: Create an Intuit Developer Account To begin with, you need to have an Intuit Developer account. Visit developer.intuit.com Click on sign up and then fill in the details on the Create Your Account form. You will get a confirmation email on your official email ID. Verify your account and follow any additional setup instructions. If you already have a QuickBooks developer account, simply sign in using your Intuit developer login.What You Can Build with QuickBooks APIsExample: Accounting automation tools SaaS integrations Payment synchronization ERP integrations Financial reporting dashboardsStep 2: Create a New AppThis is the 2nd step of the QuickBooks Online app development tutorial. Now, sign in to your Intuit Developer account. Once you are on the dashboard, click on Apps and Resources in the top navigation and then select My Apps. Click on Create an App. Now, the system will ask you to choose the platform. Select QuickBooks Online as your platform. Enter your app details (e.g., app name, country). Follow the Naming Guidelines to avoid issues. (https://developer.intuit.com/app/developer/qbo/docs/go-live/list-on-the-app-store/naming-and-logo-guidelines)Step 3: Configuring API Scopes and PermissionsThe next step is of utmost importance as it will determine the scope and impact of your app’s activities within QuickBooks Online.Selecting the correct API scopes for your app is imperative, as this will determine its functionality and security.Your chosen API scopes will be the gatekeepers, defining the data and operations your app can access within a QuickBooks Online account.If you choose unnecessary scopes, it could lead to privacy and other concerns. On the other hand, if you miss essential scopes, you might face limited functionalities. Choose com.intuit.quickbooks.accounting (Read & Write) if you need access to your financial data. You can integrate the app with the QuickBooks Accounting API with this scope. Similarly, if you want to access payment processing and transactions, you can choose com.intuit.quickbooks.payment. With this scope, you can integrate the app with the QuickBooks Payment API.Step 4: Select and Confirm the Right PermissionsThe next step in QuickBooks Online App development is to choose the correct permissions. As you can see in the image, you can set up various required permissions. Once you are done with it, a confirmation box will show up. Before clicking on it, make sure that you review your permissions twice, as once you add these permissions, you cannot remove them. Once you have checked, click on Confirm to continue.Step 5: Setting Up OAuth and API Credentials The next step is to set up your app credentials. You can access them in your App Dashboard by clicking Keys & Credentials under Development Settings. Now, note down your Client ID and Client Secret for the development environment. The final step in this process is to define the redirect URI for the OAuth authorization flow.How QuickBooks OAuth Authentication WorksQuickBooks Online APIs use OAuth 2.0 authentication to securely connect applications with user data. Instead of sharing login credentials, users authorize the application through the Intuit authorization screen.The OAuth process typically follows these steps:User clicks “Connect to QuickBooks”↓Application redirects user to Intuit Authorization Page↓User grants permission to the application↓Intuit sends Authorization Code to Redirect URI↓Application exchanges code for Access Token↓Application calls QuickBooks API using Access TokenAPI Code ExamplesExample: Calling QuickBooks APIOnce authentication is completed and an access token is obtained, the application can call QuickBooks Online APIs to fetch or update data.Example request to fetch customer data using Node.js: const axios = require("axios"); const accessToken = "YOUR_ACCESS_TOKEN"; const realmId = "COMPANY_ID"; axios.get( `https://quickbooks.api.intuit.com/v3/company/${realmId}/query?query=select * from Customer`, { headers: { Authorization: `Bearer ${accessToken}`, Accept: "application/json" } } ) .then(response => { console.log(response.data); }) .catch(error => { console.error(error); }); Example: Fetch Company Information GET https://quickbooks.api.intuit.com/v3/company/<realmId>/companyinfo/<realmId> Step 6: Testing QuickBooks Online APIs in Sandbox The next step is to test the app thoroughly within the environment. The Sandbox Environment can test API calls without affecting accurate data.(QuickBooks Online API Documentation, 2024) You can use OAuth 2.0 for API authentication and authorization. You can also make API calls to QuickBooks Online APIs with your credentials.Step 7: Explore Your App DashboardThe QuickBooks Developer Portal provides a centralized dashboard where you can You can read guides to understand the platform and app settings. You can get production keys for production access. You can access SDKs and sample apps with code to speed up development. You can access the forum where developers contribute knowledge. It also helps discuss your development issues and queries with developers.Step 8: Publish Your QuickBooks Online AppTo publish your app on the QuickBooks App Store, you must follow specific guidelines, such as You have complied with the naming and logo rules.(https://developer.intuit.com/app/developer/qbo/docs/go-live/list-on-the-app-store/naming-and-logo-guidelines) You must have production API keys and have completed the review process of Intuit. You must have implemented OAuth 2.0 Authentication for data security and privacy.Once you have fulfilled all these requirements, you have an approved app that users can start exploring.Final ThoughtsQuickBooks API Integration allows businesses to automate different processes, such as accounting, bookkeeping, invoicing, and others.It also has other advantages, such as improved data management, error mitigation, and data accuracy.While QuickBooks Online app development is straightforward, it’s crucial to pay close attention to detail.By leveraging API integration, you can: Simplify complex accounting processes. Improve data management Reduce errorsEnsure you have set the correct permissions and tested the integration properly.The Intuit Developer Portal offers an intuitive interface that even new developers can use confidently to build QuickBooks Online apps.Need expert help? Our team specializes in QuickBooks API integration and custom QuickBooks app development.Common Issues When Creating a QuickBooks AppWhile working with the Intuit Developer Portal, developers may encounter some common issues during authentication or API integration.1. Invalid Redirect URIIf the redirect URI configured in your application does not match the URI used during authentication, QuickBooks will reject the request.Solution:Ensure the redirect URI in the developer portal matches your application configuration exactly.2. Invalid Grant ErrorThis error usually occurs when the authorization code is expired or reused.Solution: Generate a new authorization code Ensure it is used only once3. Access Token ExpirationQuickBooks access tokens expire after a limited time.Solution:Use the refresh token to generate a new access token without requiring the user to reauthorize.4. Sandbox vs Production ConfusionQuickBooks provides sandbox environments for testing integrations.Solution:Make sure you are using the correct environment: Sandbox API endpoint for testing Production endpoint for live integrations5. Insufficient API ScopesIf required scopes are not enabled during app configuration, API requests may fail.Solution:Verify that the required QuickBooks API scopes are enabled in your developer portal settings.FAQs About QuickBooks Online App Development What is the Intuit Developer Portal used for? The Intuit Developer Portal is the official platform provided by Intuit for developers who want to build applications that integrate with QuickBooks Online. It allows developers to create apps, configure API permissions, generate client credentials, and manage OAuth authentication required to access QuickBooks data securely. Do I need coding knowledge to build a QuickBooks Online app? Yes, basic programming knowledge is required to build a QuickBooks Online app. Developers typically use languages such as Node.js, Python, Java, or .NET to interact with QuickBooks APIs. You also need to understand REST APIs and OAuth authentication to securely connect your application with QuickBooks. What APIs are available in QuickBooks Online? QuickBooks Online provides several APIs that allow developers to interact with accounting data. These include APIs for: Customers and vendors Invoices and payments Bills and expenses Company information Financial reports Using these APIs, developers can automate accounting workflows and synchronize data between QuickBooks and external applications. What is the QuickBooks Sandbox environment? The QuickBooks Sandbox is a testing environment provided by Intuit that allows developers to test their applications without affecting real accounting data. Developers can simulate API calls, test OAuth authentication, and verify integrations before deploying their app to production. How long does it take to publish a QuickBooks app on the App Store? Publishing a QuickBooks app on the Intuit App Store typically involves a review process where Intuit checks security, authentication setup, and compliance with platform guidelines. The review process may take several days to a few weeks depending on the complexity of the app and whether it meets all approval requirements. What are the common challenges when integrating with QuickBooks APIs? Developers often face challenges such as: Incorrect OAuth configuration API rate limits Access token expiration Incorrect API scopes Differences between sandbox and production environments Understanding these issues early can help avoid integration failures and speed up development. What is the difference between QuickBooks Online API and QuickBooks Desktop API? The QuickBooks Online API is designed for cloud-based integrations and allows developers to connect web or SaaS applications to QuickBooks Online using REST APIs and OAuth 2.0 authentication. In contrast, the QuickBooks Desktop API is used for locally installed QuickBooks Desktop software and relies on the QuickBooks SDK and QBXML through the Web Connector. In simple terms, QuickBooks Online API supports modern cloud integrations, while QuickBooks Desktop API is intended for on-premise systems where QuickBooks is installed on a local machine.