<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Intuit Developer - Medium]]></title>
        <description><![CDATA[Official blog for Intuit Developer Group - Medium]]></description>
        <link>https://medium.com/intuitdev?source=rss----0e7e7c9af933---4</link>
        <image>
            <url>https://cdn-images-1.medium.com/proxy/1*TGH72Nnw24QL3iV9IOm4VA.png</url>
            <title>Intuit Developer - Medium</title>
            <link>https://medium.com/intuitdev?source=rss----0e7e7c9af933---4</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Thu, 05 Nov 2026 20:18:38 GMT</lastBuildDate>
        <atom:link href="https://medium.com/feed/intuitdev" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[Introducing the Solution Center: Build a Complete QuickBooks Workflow, Not Just One API Call]]></title>
            <link>https://medium.com/intuitdev/introducing-the-solution-center-build-a-complete-quickbooks-workflow-not-just-one-api-call-7233f5e7f8db?source=rss----0e7e7c9af933---4</link>
            <guid isPermaLink="false">https://medium.com/p/7233f5e7f8db</guid>
            <category><![CDATA[new-features]]></category>
            <category><![CDATA[partner-program]]></category>
            <dc:creator><![CDATA[Shirley Song]]></dc:creator>
            <pubDate>Wed, 21 Oct 2026 17:43:46 GMT</pubDate>
            <atom:updated>2026-10-21T17:43:44.908Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*P6WEwbcTvVc7z3WtKvKMkQ.png" /></figure><p>Building a QuickBooks Online integration usually means the same routine: read the entity docs, work out which calls to make, guess at the order, and hope the books come out right. We wanted to shorten that path — a lot.</p><p>That’s why we built the Solution Center, a new experience in the Intuit Developer Portal designed to help you set up and build a working integration with guidance.</p><p><strong>Here’s how it works:</strong></p><p><strong>1. Start from a workflow, not an endpoint.</strong></p><p>Open an accelerator — Accounts Receivable, Accounts Payable, Sales Tax — and you get the whole arc: create the customer, create the invoice, record the payment, check the balance. All the core calls for the workflow, in order, with the dependencies made explicit.</p><p><strong>2. Set your language and your sandbox company once.</strong></p><p>Each accelerator has a language selector: Node.js, Python, Java, .NET, or PHP. Every code sample on the page rewrites itself. Pick your sandbox company there too, and the samples fill in with your own values instead of placeholders.</p><p><strong>3. Run each step as you read it.</strong></p><p>You don’t have to leave the page to see whether a call works. Send the request, read the response, and move to the next step with a real object ID rather than a guess.</p><p><strong>4. Read the accounting, not only the API.</strong></p><p>Each accelerator shows the journal entries your calls produce. Recording the payment typically debits cash and credits accounts receivable. Two lines, and now you know why the balance moves the way it does — and what your integration looks like to the accountant or bookkeeper who reviews it.</p><p><strong>5. Keep building.</strong></p><p>From there, start with Quickstart if you’re new to the platform, browse the rest of the catalog, or head straight to your dashboard. Quickstart is open to every tier. All other accelerators are only available with a paid tier.</p><p><strong>Building with an AI coding tool?</strong></p><p>Every accelerator includes a Copy for AI option that puts the whole page on your clipboard as structured markdown. Paste it into the tool of your choice and and gives it grounding instead of a guess..General-purpose AI coding assistants are trained on broad web data, which can lag behind recent API changes.</p><p>Our markdown carries the current endpoint paths with the correct implementation steps. Whether you click through it yourself or prompt your way there, the Solution Center is here to guide you through it all.</p><p>Whether it’s your first QuickBooks Online integration or your fifth, the Solution Center answers one question fast: what does each use case actually do to your books? Now you can find out before you build the integration.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=7233f5e7f8db" width="1" height="1" alt=""><hr><p><a href="https://medium.com/intuitdev/introducing-the-solution-center-build-a-complete-quickbooks-workflow-not-just-one-api-call-7233f5e7f8db">Introducing the Solution Center: Build a Complete QuickBooks Workflow, Not Just One API Call</a> was originally published in <a href="https://medium.com/intuitdev">Intuit Developer</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Build with Intuit Developer AI plugin]]></title>
            <link>https://medium.com/intuitdev/build-with-intuit-developer-ai-plugin-64a14c40d12f?source=rss----0e7e7c9af933---4</link>
            <guid isPermaLink="false">https://medium.com/p/64a14c40d12f</guid>
            <category><![CDATA[app-development]]></category>
            <category><![CDATA[quickbooks-developers]]></category>
            <category><![CDATA[intuit]]></category>
            <category><![CDATA[mcp-server]]></category>
            <category><![CDATA[ai-plugin]]></category>
            <dc:creator><![CDATA[Meet Mehta]]></dc:creator>
            <pubDate>Wed, 21 Oct 2026 17:38:55 GMT</pubDate>
            <atom:updated>2026-10-21T17:38:54.124Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*F8UVvGvDBVXjEmzUrGp_Wg.png" /></figure><h3>Introducing Intuit Developer Plugin for Claude</h3><p>If you’ve integrated a new API before, you know the drill: research the API, set up an app in the portal, sort out credentials and OAuth, pick the right scopes, and track down the right endpoint.</p><p>An hour later, you finally get a 200 back from a sandbox company, and you haven’t written a line of your actual product yet.</p><p>As a developer, I’ve been through this loop with many APIs, including our own. Your AI assistant can already write the integration code in seconds. What slows you down is everything before that code can run.</p><p>So we built an Intuit Developer Plugin to let your assistant handle that part too.</p><h3>What we’re releasing</h3><p><strong>Intuit Developer Plugin</strong>, powered by the <strong>Intuit Developer MCP</strong> server, connects Claude directly to the Intuit Developer platform. Instead of Claude guessing your setup from docs, it works with your actual developer account: your workspaces, your apps, your sandbox companies, and the live QuickBooks Online API catalog.</p><p>You describe what you’re building. Claude handles the setup and gives you a working request to drop into your code. For example:</p><pre>I want to pull customer invoices from QuickBooks into my app.<br>Set me up so I can make that call in the sandbox.</pre><p>From that single prompt, Claude finds your workspace, creates or reuses an app, recommends the scopes you need, guides you through OAuth, creates a sandbox company with sample data, and builds the request. It confirms with you before making any changes.</p><h3>Install it</h3><p><strong>What you need:</strong> an Intuit Developer account. If you don’t have one, sign up at <a href="https://developer.intuit.com/">developer.intuit.com</a>. A workspace is created for you by default.</p><p><strong>1. Add the plugin in Claude</strong></p><p>You can add the plugin directly from the <a href="https://claude.ai/customize/plugins/id/b5c9f70a-c9d5-4f6d-ac54-06afa90dd90c%40anthropic-plugin-directory">Claude Plugin Directory</a> and follow OAuth setup when prompted.</p><p>For detailed technical instructions and integration guides, check out our <a href="https://developer.intuit.com/app/developer/qbo/docs/get-started/mcp-connector">Intuit Developer Plugin Documentation</a>.</p><p><strong>2. Sign in</strong></p><p>Once you have added the plugin and installed the server, Claude prompts you to sign in with your Intuit Developer account. Authentication is handled by the plugin, so you never paste a client secret or token into the chat.</p><p><strong>3. Check the connection</strong></p><pre>Am I connected to Intuit Developer?</pre><p>Once Claude confirms your account is connected, you’re ready to start building.</p><h3>How it fast-tracks your build</h3><h3>Choose the right scopes the first time</h3><p>Scope names are technical, and mapping “I want invoices” to the right one usually means another trip to the docs. Instead, ask Claude:</p><pre>Which scopes do I need to read invoices and customers?</pre><p>Claude recommends the least-privilege set, explains what each one grants in plain language, and applies it to your app once you approve.</p><h3>Complete OAuth setup with guidance</h3><p>OAuth is where many first integrations stall. Redirect URIs, authorization codes, access and refresh tokens all need to line up, and a 401 error rarely tells you which one is wrong.</p><pre>Help me get an access token for my sandbox app.</pre><p>Claude registers your redirect URI, gives you the correct authorize and token endpoints for your environment, and walks you through exchanging the code for tokens and refreshing them. When you need your client secret, Claude gives you a direct link to it in the Developer Portal, so you can copy it yourself and it never passes through the chat. If you receive a 401 later, ask Claude to investigate. It reviews your scopes and token state and explains how to resolve the issue.</p><h3>Set up a sandbox in one step</h3><pre>Create a sandbox company for testing.</pre><p>You get a sandbox with sample data, ready for test calls. You can also list, reset, or delete sandboxes from the same conversation whenever you need a clean test environment.</p><h3>Find the right API by describing what you want</h3><pre>I need to find all open invoices for a customer. Which endpoint should I use?</pre><p>Claude searches the QuickBooks Online API catalog by intent and pulls the full schema for the endpoint: parameters, required scopes, and an example cURL. You no longer need to cross-reference the API reference against the scopes documentation.</p><h3>From first call to your codebase</h3><p>Once your app, scopes, and sandbox are ready, choose how far you want to go. Ask for a quick cURL to test the call:</p><pre>Give me a cURL request to list invoices from my sandbox company.</pre><p>Or have Claude wire the entire flow, including OAuth, directly into your app:</p><pre>Integrate the QuickBooks OAuth flow and an invoice list call into my Node.js app.</pre><p>Claude writes the code with the right endpoints, scopes, and base URL for your environment. Add your client secret from the Developer Portal, run it, and keep building.</p><h3>Built for development, with the same guardrails</h3><p>The plugin gets you building faster. It doesn’t change how access works.</p><ul><li><strong>Sandbox only.</strong> It’s built for development and testing. It doesn’t make production API calls or generate production keys.</li><li><strong>No extra permissions.</strong> Your app’s scopes and OAuth authorization control what it can access, exactly as they do in the Developer Portal.</li><li><strong>You stay in control.</strong> Claude explains app and scope changes and asks before applying them.</li><li><strong>Secrets stay out of the chat.</strong> Keep client secrets and tokens out of prompts, source code, and logs.</li></ul><p>AI-generated output can contain mistakes, so review generated requests and code before you ship them. When you’re ready for production, complete the review and compliance steps in the <a href="https://developer.intuit.com/app/developer/dashboard">Intuit Developer Portal</a>. Claude can point you to the next step.</p><h3>What’s under the hood</h3><p>The plugin exposes a focused set of connector tools:</p><p><strong>Connection</strong></p><ul><li>Intuit_developer_connectivity_status: confirms your identity and connection</li></ul><p><strong>Workspaces and apps</strong></p><ul><li>Intuit_developer_workspace_read: reads your workspace details</li><li>Intuit_developer_app_read: gets app details</li><li>Intuit_developer_app_create: creates a new app</li><li>Intuit_developer_app_update: updates redirect URIs, name, or scopes</li></ul><p><strong>OAuth</strong></p><ul><li>Intuit_developer_oauth_details: returns the OAuth endpoints for you to configure</li></ul><p><strong>Sandbox</strong></p><ul><li>Intuit_developer_sandbox_list: lists your sandbox companies</li><li>Intuit_developer_sandbox_create: creates a sandbox company</li><li>Intuit_developer_sandbox_reset: resets sandbox test data</li><li>Intuit_developer_sandbox_delete: deletes a sandbox company</li></ul><p><strong>API discovery</strong></p><ul><li>Intuit_quickbooks_api_search: searches QuickBooks API operations by intent</li><li>Intuit_quickbooks_api_describe: returns the schema, scope, base URL, and example cURL</li></ul><h3>Try it and tell us what you think</h3><p>Install the plugin, open Claude, and ask it to set you up for your first QuickBooks API call. Setup that once meant switching between the portal, docs, and your IDE now happens in a single conversation.</p><p>We’re starting with Claude and plan to support more AI development environments. If there’s a workflow you want the plugin to handle, we want to hear about it. Submit a <a href="https://developer.intuit.com/s/contactsupport">ticket</a> or post on our <a href="https://help.developer.intuit.com/">forums</a>.</p><p><em>Claude is a trademark of Anthropic, PBC. This integration is developed by Intuit and is not sponsored, endorsed, or affiliated with Anthropic</em></p><p><em>Claude is a third-party service provided by Anthropic. Anthropic does not sponsor or endorse this plugin. Features and results may vary. Review and test generated outputs before use.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=64a14c40d12f" width="1" height="1" alt=""><hr><p><a href="https://medium.com/intuitdev/build-with-intuit-developer-ai-plugin-64a14c40d12f">Build with Intuit Developer AI plugin</a> was originally published in <a href="https://medium.com/intuitdev">Intuit Developer</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[We’re excited to announce the launch of the Sales Order API, giving you direct access to create…]]></title>
            <link>https://medium.com/intuitdev/were-excited-to-announce-the-launch-of-the-sales-order-api-giving-you-direct-access-to-create-2d394fe32bf6?source=rss----0e7e7c9af933---4</link>
            <guid isPermaLink="false">https://medium.com/p/2d394fe32bf6</guid>
            <dc:creator><![CDATA[Intuit Developer]]></dc:creator>
            <pubDate>Tue, 20 Oct 2026 17:26:50 GMT</pubDate>
            <atom:updated>2026-10-20T17:26:51.873Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/991/1*ObYGxHw8l7u_bxYBAWyefQ.png" /></figure><p>We’re excited to announce the launch of the Sales Order API, giving you direct access to create, read, update, and delete sales orders in QuickBooks Online and Intuit Enterprise Suite. This includes:</p><ol><li>A new GraphQL API to create, retrieve, update, and delete sales orders, including line items, tax details, shipping, and billing information.</li><li>Support for both US and global (non-US) tax models, so apps built on the API work consistently whether a company uses sales tax groups or VAT-style header/line tax treatment.</li><li>Interoperability with existing linked transactions, invoices, and purchase orders, so you can build end-to-end order-to-cash and order-to-procurement workflows.</li></ol><p>Together, these enhancements enable you to build richer order management and fulfillment experiences directly into your apps. As non-posting transactions, sales orders allow businesses to reserve inventory items without impacting financial records. Once fulfillment begins, these records can be seamlessly converted into invoices or purchase orders to facilitate end-to-end accounting workflows.</p><h3>What’s included in this release</h3><h3>Create a sales order</h3><p>Use the salesCreateSalesOrder mutation to create a sales order, setting the customer reference, line items, and optional shipping address and project reference attributes. This resource supports both US tax groups (set at the header, with lines marked taxable/non-taxable) and global VAT-style tax treatment (tax type at the header, tax group per line).</p><p>API type: GraphQL</p><h3>Read a sales order</h3><p>Use the salesSalesOrder query to retrieve a single sales order by ID, including its line items, tax detail, shipping and billing addresses, and order status.</p><p>API type: GraphQL</p><h3>Update a sales order</h3><p>Use the salesUpdateSalesOrder mutation to update an existing sales order. The line array uses full-replace behavior — any line present in the stored record but omitted from the update request is deleted, so apps must re-include every line they want to retain, along with the current syncToken.</p><p>API type: GraphQL</p><h3>Delete a sales order</h3><p>Use the salesDeleteSalesOrder mutation to delete an existing sales order.</p><p>API type: GraphQL</p><h3>Feature support by product</h3><p>Sales orders and the Sales Order API are supported for QuickBooks Online Plus, QuickBooks Online Advanced, and Intuit Enterprise Suite. Support is also available in QuickBooks Online Simple Start and Essentials with the Inventory Add-on purchase. Sales orders can be converted and linked to invoices and to purchase orders, so integrations can trace an order through fulfillment and billing.</p><h3>How to get access</h3><p>The Sales Order API is available to Silver, Gold, and Platinum tier partners within the <a href="https://static.developer.intuit.com/resources/Intuit_App_Partner_Program_Guide.pdf">Intuit App Partner Program</a>. To get access:</p><ol><li>Sign in to your developer account at <a href="http://developer.intuit.com">developer.intuit.com</a>.</li><li>Navigate to My Hub and select your app under App Dashboard.</li><li>Go to the Permissions section in your app settings and enable the <em>sales.sales-order.read </em>and<em> sales.sales-order.write</em> scopes under Restricted scopes.</li><li>Add the enabled scope to your OAuth authorization requests, alongside the default <em>com.intuit.quickbooks.accounting</em> scope for linked transactions such as invoices and purchase orders. Then make API calls to the GraphQL endpoint.</li><li>Enable the Sales Orders feature in the QuickBooks company (Settings &gt; Account and Settings &gt; Sales, or the applicable feature toggle for Sales Orders).</li></ol><p><strong>Endpoints:</strong></p><ul><li>Production: <a href="https://qb.api.intuit.com/graphql">https://qb.api.intuit.com/graphql</a></li><li>Sandbox: <a href="https://qb-sandbox.api.intuit.com/graphql">https://qb-sandbox.api.intuit.com/graphql</a></li><li>Accounting REST API (for linked transactions): <a href="https://quickbooks.api.intuit.com/v3/company/entityname/">https://quickbooks.api.intuit.com/v3/company/entityname/</a></li></ul><p>Note: If you’re already on a paid tier and still don’t have access, <a href="https://help.developer.intuit.com/s/contactsupport">open a support ticket</a>.</p><h3>What’s next?</h3><p>Explore the new Sales Order API today using the <a href="https://developer.intuit.com/app/developer/gql/docs/api/qbexternal/mutations/salesCreateSalesOrder">GraphQL API Explorer</a> and the <a href="https://developer.intuit.com/app/developer/qbo/docs/workflows/manage-sales-orders/get-started">Get Started</a> and <a href="https://developer.intuit.com/app/developer/qbo/docs/workflows/manage-sales-orders/use-cases">Use Cases</a> documentation.</p><p>We’ll be sharing sample code and prompts for common sales order workflows shortly to help you get started. In the meantime, you can begin integrating the create, read, update, and delete use cases into your app using the reference queries and mutations in the documentation.</p><p>We’d love to see what you build with the Sales Order API.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=2d394fe32bf6" width="1" height="1" alt=""><hr><p><a href="https://medium.com/intuitdev/were-excited-to-announce-the-launch-of-the-sales-order-api-giving-you-direct-access-to-create-2d394fe32bf6">We’re excited to announce the launch of the Sales Order API, giving you direct access to create…</a> was originally published in <a href="https://medium.com/intuitdev">Intuit Developer</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Intuit Connect 2026: Partner Track]]></title>
            <link>https://medium.com/intuitdev/intuit-connect-2026-partner-track-24884bf75156?source=rss----0e7e7c9af933---4</link>
            <guid isPermaLink="false">https://medium.com/p/24884bf75156</guid>
            <category><![CDATA[intuit-connect]]></category>
            <category><![CDATA[events]]></category>
            <category><![CDATA[developer]]></category>
            <category><![CDATA[intuit-events]]></category>
            <dc:creator><![CDATA[Intuit Developer]]></dc:creator>
            <pubDate>Fri, 09 Oct 2026 22:35:02 GMT</pubDate>
            <atom:updated>2026-10-09T22:35:01.940Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*uLABqKXfMXLQMWOLOrpLfA.jpeg" /></figure><p><a href="https://www.intuit.com/intuitconnect/">Intuit Connect</a>, the premier accounting event, is almost here. Starting October 26, 2026, thousands of accounting professionals and Intuit partners will gather at the <a href="https://aria.mgmresorts.com/en.html">ARIA Las Vegas</a> and immerse themselves in all things Intuit.</p><p>For three days, they’ll:</p><ul><li>Receive exclusive product announcements directly from the team building the Intuit platform.</li><li>Participate in — and earn CPE credits from — their choice of 73 (and counting) interactive sessions.</li><li>Learn from industry and keynote experts whose individualized perspectives open the door to new and exciting insights.</li><li>Discover the latest updates to Intuit’s core releases along with the innovative third-party applications in the Expo Hall.</li><li>Engage directly with peers, industry experts, and Intuit team executives to grow community connections and their businesses.</li></ul><blockquote>We’re excited to provide our entire community with world-class knowledge and experiences that drive thriving businesses, but that’s not all we’re excited about. This year, we’re offering our invaluable partners an expanded connected experience, bringing our distributors, resellers, and integrators together in one place and giving them an inside track into Intuit’s vision, roadmap, and new <a href="https://medium.com/intuitdev/all?topic=partner-program">partner program</a> designed to ensure continued partner success.</blockquote><p><strong>Intuit Connect 2026 Partner Opportunities</strong></p><p>At Intuit, our mission to Power Prosperity Around the World is fundamentally supported by the relationships we’ve built with our partners. Every partner, whether an ISV, Developer, Mid-Market Partner, or VAR, is essential to delivering, scaling and supporting Intuit along with our shared customers. That’s why the theme for our new Connect Partner Track <strong><em>Customers First, Partners Always</em></strong>. Here’s what to expect as part of Partner Track:</p><p><strong>Partner Appreciation Reception:</strong></p><p>Kicking off Intuit Connect 2026 will be our Partner Appreciation Reception on Sunday, October 25 from 6:00 PM — 8:00 PM. We want to thank our partners for their inexhaustible support and efforts on our behalf while also taking a moment to look back on FY26, ahead to FY27, and at the role our partners play as we move forward. And this year, we’ve added something new: Partner awards for those with outstanding achievements.</p><p>Recognizing partners for going above and beyond is just one way to show our appreciation.</p><p><strong>Partner 1:1 Meetings:</strong></p><p>Another way is by providing Partner 1:1 Meetings with Intuit Leadership during Connect. These 30-minute meetings, which take place on Monday, October 26 and Tuesday, October 27 and are set up in advance through Intuit account managers, enable partners to speak directly with the leaders driving Intuit’s roadmap. During the individual conversations, partners can share details about their business as well as discuss topics such as growth, go-to-market, customer adoption, product, AI, API integration, and so much more.</p><p><strong>Partner Track:</strong></p><p>Perhaps most exciting for partners who attend Intuit Connect 2026 is our Dedicated Partner Track. From 9:00 AM to 2:00 PM on Wednesday, October 28, this unified Partner Track will dive deep into Intuit’s next steps and provide opportunities for partners to give their opinions on what those steps should be. They’ll learn about our FY27 partner commitments and get hands-on with our MCP tools right alongside the solution engineers.</p><p>We’ll also have the featured session: <em>Ahead of the Curve — Reading Where AI Is Taking Accounting and How Partners Stay Essential. </em>Taking place during the Partner Track, this session is led by <a href="https://us.list-manage.com/2jD1tEUGE5Q?e=f1827bccac&amp;c2id=ef2a10d21f025573db7a5a3eed86d7bb">Roman Villard</a>, CPA and Founder of <a href="https://us.list-manage.com/trJ13mBd2FK?e=f1827bccac&amp;c2id=ef2a10d21f025573db7a5a3eed86d7bb">Full Send</a> who “takes the customer’s seat for an audience-driven Q&amp;A on where AI is heading in accounting, and what scaling businesses will need from partners next.”</p><p>Whether they’re a partner who builds, resells, implements, or advises, they should plan to bring their hardest questions. And expect to walk away with insightful, business-growing answers.</p><p><strong>Intuit Connect 2026: A truly do-not-miss event</strong></p><p>Intuit Connect 2026 is Intuit’s accounting event of the year, and we invite our partners to <a href="https://www.intuit.com/intuitconnect/">register</a> today for a full conference pass.</p><p>With the pass, they’ll enjoy main-stage keynotes and informative breakout sessions. They’ll also have access to the Expo Hall where they can experience the Mid-Market Growth Hub (a 15-minute consultation with a hand-selected Intuit Enterprise Suite expert) and access to the Partner Program Info Desk to get all their technical and API integration as well as Intuit App Partner Program (and more) questions answered. Most importantly, the full conference pass will open the door to the dedicated Partner Track sessions with two audience-specific breakouts mid-day.</p><p>Learning, shaping Intuit’s future, and connecting with the Intuit community is on tap for partners who attend Intuit Connect 2026.</p><p><em>“Connect is like a festival: high energy, amazing people, meaningful conversations, with sessions on point,” says K.C. Eames, Director of Clients Accounting Services Dark Horse CPAS.</em></p><p>We couldn’t have said it better ourselves, and we can’t wait to see you there!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=24884bf75156" width="1" height="1" alt=""><hr><p><a href="https://medium.com/intuitdev/intuit-connect-2026-partner-track-24884bf75156">Intuit Connect 2026: Partner Track</a> was originally published in <a href="https://medium.com/intuitdev">Intuit Developer</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[From invoice to payment: a step-by-step walkthrough]]></title>
            <link>https://medium.com/intuitdev/from-invoice-to-payment-a-step-by-step-receive-payment-walkthrough-42befe253f96?source=rss----0e7e7c9af933---4</link>
            <guid isPermaLink="false">https://medium.com/p/42befe253f96</guid>
            <category><![CDATA[quickbooks-api]]></category>
            <category><![CDATA[payments]]></category>
            <dc:creator><![CDATA[Denise Onukwue]]></dc:creator>
            <pubDate>Fri, 18 Sep 2026 17:46:54 GMT</pubDate>
            <atom:updated>2026-09-21T18:01:57.502Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*lI0J-cRYAnmvbTN_knCLMA.jpeg" /></figure><p>Getting paid is always one of the best parts of running a business and QuickBooks Online makes it easy to keep track of those payments. In this tutorial, we will simulate the Receive Payment functionality via the API to help you invoice, charge a card (securely) and record that a customer has made a payment. You will need to have the <em>com.intuit.quickbooks.accounting</em> and <em>com.intuit.quickbooks.payment</em> scopes enabled in order to accurately follow this tutorial.</p><h4>Step 1: <a href="https://developer.intuit.com/app/developer/qbo/docs/api/accounting/most-commonly-used/invoice#create-an-invoice">Create an invoice</a> using the Accounting API</h4><p>To make this request you must:</p><ul><li><strong>Have at least one sales item (item for sale)<br>- </strong>If <strong>Type=Inventory</strong> you must include the Quantity (Qty) in order to create an invoice.<br>- This <a href="https://developer.intuit.com/app/developer/qbo/docs/learn/learn-basic-bookkeeping/manage-inventory">article</a> explains more in detail</li><li><strong>Know the CustomerRef (Customer ID)<br>- </strong>If you do not know the id you can <a href="https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/customer#query-a-customer">query a customer</a> to find the id<br><em>SELECT * FROM Customer WHERE givenname = ‘REPLACEWITHCUSTOMERFIRSTNAME’</em><strong><br>- </strong>Make a note of the <strong>Customer.Id </strong>value</li></ul><p>Request</p><p><strong><em>POST </em></strong><em>/v3/company/&lt;realmId&gt;/invoice?minorversion=75</em></p><pre>{<br>  &quot;Line&quot;: [<br>    {<br>      &quot;DetailType&quot;: &quot;SalesItemLineDetail&quot;,<br>      &quot;Amount&quot;: 500,<br>      &quot;SalesItemLineDetail&quot;: {<br>        &quot;ItemRef&quot;: {<br>          &quot;name&quot;: &quot;Sprinkler Pipes&quot;,<br>          &quot;value&quot;: &quot;17&quot;<br>        },<br>        &quot;Qty&quot;: 20<br>      }<br>    }<br>  ],<br>  &quot;CustomerRef&quot;: {<br>    &quot;value&quot;: &quot;&lt;insert customer id&gt;&quot;<br>  }<br>}</pre><p>Response</p><pre>{<br>  &quot;Invoice&quot;: {<br>    &quot;AllowIPNPayment&quot;: false,<br>    &quot;AllowOnlinePayment&quot;: false,<br>    &quot;AllowOnlineCreditCardPayment&quot;: true,<br>    &quot;AllowOnlineACHPayment&quot;: true,<br>    &quot;domain&quot;: &quot;QBO&quot;,<br>    &quot;sparse&quot;: false,<br>    &quot;Id&quot;: &quot;***&quot;,<br>    &quot;SyncToken&quot;: &quot;0&quot;,<br>    &quot;MetaData&quot;: {<br>      &quot;CreateTime&quot;: &quot;2025-10-20T14:34:58-07:00&quot;,<br>      &quot;LastModifiedByRef&quot;: {<br>        &quot;value&quot;: &quot;*****************&quot;<br>      },<br>      &quot;LastUpdatedTime&quot;: &quot;2025-10-20T14:34:58-07:00&quot;<br>    },<br>    &quot;CustomField&quot;: [],<br>    &quot;DocNumber&quot;: &quot;1074&quot;,<br>    &quot;TxnDate&quot;: &quot;2025-10-20&quot;,<br>    &quot;CurrencyRef&quot;: {<br>      &quot;value&quot;: &quot;USD&quot;,<br>      &quot;name&quot;: &quot;United States Dollar&quot;<br>    },<br>    &quot;LinkedTxn&quot;: [],<br>    &quot;Line&quot;: [<br>      {<br>        &quot;Id&quot;: &quot;1&quot;,<br>        &quot;LineNum&quot;: 1,<br>        &quot;Amount&quot;: 500,<br>        &quot;DetailType&quot;: &quot;SalesItemLineDetail&quot;,<br>        &quot;SalesItemLineDetail&quot;: {<br>          &quot;ItemRef&quot;: {<br>            &quot;value&quot;: &quot;17&quot;,<br>            &quot;name&quot;: &quot;Sprinkler Pipes&quot;<br>          },<br>          &quot;Qty&quot;: 20,<br>          &quot;ItemAccountRef&quot;: {<br>            &quot;value&quot;: &quot;**&quot;,<br>            &quot;name&quot;: &quot;Sales of Product Income&quot;<br>          },<br>          &quot;TaxCodeRef&quot;: {<br>            &quot;value&quot;: &quot;NON&quot;<br>          }<br>        },<br>        &quot;CustomExtensions&quot;: []<br>      },<br>      {<br>        &quot;Amount&quot;: 500,<br>        &quot;DetailType&quot;: &quot;SubTotalLineDetail&quot;,<br>        &quot;SubTotalLineDetail&quot;: {}<br>      }<br>    ],<br>    &quot;TxnTaxDetail&quot;: {<br>      &quot;TotalTax&quot;: 0<br>    },<br>    &quot;CustomerRef&quot;: {<br>      &quot;value&quot;: &quot;58&quot;,<br>      &quot;name&quot;: &quot;****** *****&quot;<br>    },<br>    &quot;BillAddr&quot;: {<br>      &quot;Id&quot;: &quot;96&quot;<br>    },<br>    &quot;ShipAddr&quot;: {<br>      &quot;Id&quot;: &quot;96&quot;<br>    },<br>    &quot;FreeFormAddress&quot;: true,<br>    &quot;ShipFromAddr&quot;: {<br>      &quot;Id&quot;: &quot;137&quot;,<br>      &quot;Line1&quot;: &quot;Expressway Auto 2628 Mistletoe Dr.  North Pole, AK  9970&quot;,<br>      &quot;Line2&quot;: &quot;North Pole, AK  99700&quot;<br>    },<br>    &quot;DueDate&quot;: &quot;2025-11-19&quot;,<br>    &quot;TotalAmt&quot;: 500,<br>    &quot;ApplyTaxAfterDiscount&quot;: false,<br>    &quot;PrintStatus&quot;: &quot;NeedToPrint&quot;,<br>    &quot;EmailStatus&quot;: &quot;NotSet&quot;,<br>    &quot;Balance&quot;: 500<br>  },<br>  &quot;time&quot;: &quot;2025-10-20T14:34:57.712-07:00&quot;<br>}</pre><h4>Step 2: <a href="https://developer.intuit.com/app/developer/qbpayments/docs/api/resources/all-entities/tokens#create-a-token">Create a card token</a> using the Payments API</h4><p>This step will allow you to create a token that will allow you to “mask” the customer’s card details for privacy reasons and is the preferred method to capture this information.</p><p>We provide <a href="https://developer.intuit.com/app/developer/qbpayments/docs/workflows/test-your-app">mock</a> credit card info for testing and processing payments purposes.</p><ul><li><strong>If you are using Postman you can create the request-Id parameter by</strong>:<br>- Passing request-id: {{$randomUUID}} to auto-generate a unique UUID</li><li><strong>Take a note of the response value </strong>— that is your token that you will use in the next step</li></ul><p>Request</p><p><em>POST </em><a href="https://sandbox.api.intuit.com/quickbooks/v4/payments/tokens"><em>/quickbooks/v4/payments/tokens</em></a></p><pre><br>{<br>  &quot;card&quot;: {<br>    &quot;name&quot;: &quot;emulate=0&quot;,<br>    &quot;number&quot;: &quot;4111111111111111&quot;,<br>    &quot;expMonth&quot;: &quot;02&quot;,<br>    &quot;address&quot;: {<br>      &quot;postalCode&quot;: &quot;94086&quot;,<br>      &quot;country&quot;: &quot;US&quot;,<br>      &quot;region&quot;: &quot;CA&quot;,<br>      &quot;streetAddress&quot;: &quot;1130 Kifer Rd&quot;,<br>      &quot;city&quot;: &quot;Sunnyvale&quot;<br>    },<br>    &quot;expYear&quot;: &quot;2029&quot;,<br>    &quot;cvc&quot;: &quot;123&quot;<br>  }<br>}</pre><ul><li>The <strong>“name” </strong>parameter reflects the customer name on the card.</li><li>Make sure the <strong>expYear </strong>parameter is a future year</li></ul><p>Response</p><pre>{<br>    &quot;value&quot;: &quot;********-****-****-****-************&quot;<br>}</pre><h4>Step 3: <a href="https://developer.intuit.com/app/developer/qbpayments/docs/api/resources/all-entities/charges#create-a-charge">Create and capture a charge</a> using the Payments API</h4><p>Using the response value from Step 2, send a request with the:</p><ul><li><strong>Amount </strong>— amount/total of the transaction</li><li><strong>Currency </strong>— the currency the charge was made in</li><li><strong>Capture </strong>— set to true; default is false</li><li><strong>Token </strong>— response value from Step 2</li><li><strong>Context</strong> — additional information included in the request<br>- Mobile — was this charge made from a mobile device [ keyed, swiped, dipped or tapped on the merchant’s POS device]?<br>- isEcommerce — was this transaction made over the internet?</li></ul><p><strong>NOTE:</strong> <strong>Mobile and isEcommerce cannot be the same value</strong></p><p>Request</p><p><em>POST /quickbooks/v4/payments/charges</em></p><pre>{<br>  &quot;amount&quot;: &quot;500.00&quot;,<br>  &quot;currency&quot;: &quot;USD&quot;,<br>  &quot;capture&quot;: &quot;true&quot;,<br>  &quot;token&quot;: &quot;&lt;token value from previous step&quot;,<br>  &quot;context&quot;: {<br>    &quot;mobile&quot;: &quot;true&quot;,<br>    &quot;isEcommerce&quot;: &quot;false&quot;<br>  }<br>}</pre><p>Response</p><pre>{<br>  &quot;id&quot;: &quot;MT11111111111&quot;,<br>  &quot;created&quot;: &quot;2025-07-04T18:20:10Z&quot;,<br>  &quot;status&quot;: &quot;CAPTURED&quot;,<br>  &quot;amount&quot;: &quot;500.00&quot;,<br>  &quot;currency&quot;: &quot;USD&quot;,<br>  &quot;token&quot;: &quot;10164ea35c491a8478215c1c6a6d54ffe1801&quot;,<br>  &quot;card&quot;: {<br>    &quot;number&quot;: &quot;xxxxxxxxxxxx1111&quot;,<br>    &quot;expMonth&quot;: &quot;02&quot;,<br>    &quot;expYear&quot;: &quot;2029&quot;,<br>    &quot;cvc&quot;: &quot;xxx&quot;,<br>    &quot;name&quot;: &quot;emulate=10301&quot;,<br>    &quot;address&quot;: {<br>      &quot;streetAddress&quot;: &quot;1130 Kifer Rd&quot;,<br>      &quot;city&quot;: &quot;Sunnyvale&quot;,<br>      &quot;region&quot;: &quot;CA&quot;,<br>      &quot;country&quot;: &quot;US&quot;,<br>      &quot;postalCode&quot;: &quot;94086&quot;<br>    },<br>    &quot;cardType&quot;: &quot;Visa&quot;<br>  },<br>  &quot;context&quot;: {<br>    &quot;mobile&quot;: true,<br>    &quot;isEcommerce&quot;: false,<br>    &quot;recurring&quot;: false,<br>    &quot;deviceInfo&quot;: {},<br>    &quot;clientTransID&quot;: &quot;&lt;clientTransIDvalue&gt;&quot;<br>  },<br>  &quot;capture&quot;: true,<br>  &quot;authCode&quot;: &quot;tst940&quot;,<br>  &quot;avsStreet&quot;: &quot;Pass&quot;,<br>  &quot;avsZip&quot;: &quot;Pass&quot;,<br>  &quot;cardSecurityCodeMatch&quot;: &quot;NotAvailable&quot;<br>}</pre><p>Take note of the <strong>clientTransID</strong> value as you will need it for Step 4.</p><h4>Step 4: Link the Payment to the Invoice using the Accounting API</h4><p>For this final step, you will need to link the payment to the invoice using the <a href="https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/salesreceipt">SalesReceipt</a> endpoint.</p><ul><li><strong>Line </strong>— all details should match the invoice created in Step 1</li><li><strong>Customer Ref </strong>— matches the customer of the invoice from Step 1</li><li><strong>CreditCardPayment -</strong><br>- <strong>Process Payment</strong> : set to true<br>- <strong>CC TransId </strong>: matches the clientTransId value from Step 3: Create a Charge</li><li><strong>TxnSource: </strong>Intuit Payment ; this signifies originating source of the payment transaction</li></ul><p>Request</p><p><em>POST /v3/company/&lt;realm Id&gt;/salesreceipt</em></p><pre>{<br>  &quot;Line&quot;: [<br>    {<br>      &quot;Id&quot;: &quot;1&quot;,<br>      &quot;LineNum&quot;: 1,<br>      &quot;Description&quot;: &quot;Sprinkler Pipes&quot;,<br>      &quot;Amount&quot;: 500,<br>      &quot;DetailType&quot;: &quot;SalesItemLineDetail&quot;,<br>      &quot;SalesItemLineDetail&quot;: {<br>        &quot;ItemRef&quot;: {<br>          &quot;value&quot;: &quot;17&quot;,<br>          &quot;name&quot;: &quot;Sprinkler Pipes&quot;<br>        },<br>        &quot;UnitPrice&quot;: 25,<br>        &quot;Qty&quot;: 20<br>      }<br>    }<br>  ],<br>  &quot;CustomerRef&quot;: {<br>    &quot;value&quot;: &quot;58&quot;,<br>    &quot;name&quot;: &quot;Denise Test&quot;<br>  },<br>  &quot;CreditCardPayment&quot;: {<br>    &quot;CreditChargeInfo&quot;: {<br>      &quot;ProcessPayment&quot;: &quot;true&quot;<br>    },<br>    &quot;CreditChargeResponse&quot;: {<br>      &quot;CCTransId&quot;: &quot;&lt;clientTransIDvalue from previous step&gt;&quot;<br>    }<br>  },<br>  &quot;TxnSource&quot;: &quot;IntuitPayment&quot;<br>}</pre><p>Response</p><pre>{<br>  &quot;SalesReceipt&quot;: {<br>    &quot;domain&quot;: &quot;QBO&quot;,<br>    &quot;sparse&quot;: false,<br>    &quot;Id&quot;: &quot;151&quot;,<br>    &quot;SyncToken&quot;: &quot;0&quot;,<br>    &quot;MetaData&quot;: {<br>      &quot;CreateTime&quot;: &quot;2025-09-04T12:03:03-07:00&quot;,<br>      &quot;LastUpdatedTime&quot;: &quot;2025-09-04T12:03:03-07:00&quot;<br>    },<br>    &quot;CustomField&quot;: [],<br>    &quot;DocNumber&quot;: &quot;1044&quot;,<br>    &quot;TxnDate&quot;: &quot;2025-09-04&quot;,<br>    &quot;CurrencyRef&quot;: {<br>      &quot;value&quot;: &quot;USD&quot;,<br>      &quot;name&quot;: &quot;United States Dollar&quot;<br>    },<br>    &quot;Line&quot;: [<br>      {<br>        &quot;Id&quot;: &quot;1&quot;,<br>        &quot;LineNum&quot;: 1,<br>        &quot;Description&quot;: &quot;Sprinkler Pipes&quot;,<br>        &quot;Amount&quot;: 500,<br>        &quot;DetailType&quot;: &quot;SalesItemLineDetail&quot;,<br>        &quot;SalesItemLineDetail&quot;: {<br>          &quot;ItemRef&quot;: {<br>            &quot;value&quot;: &quot;17&quot;,<br>            &quot;name&quot;: &quot;Landscaping:Sprinklers:Sprinkler Pipes&quot;<br>          },<br>          &quot;Qty&quot;: 20,<br>          &quot;ItemAccountRef&quot;: {<br>            &quot;value&quot;: &quot;79&quot;,<br>            &quot;name&quot;: &quot;Sales of Product Income&quot;<br>          },<br>          &quot;TaxCodeRef&quot;: {<br>            &quot;value&quot;: &quot;NON&quot;<br>          }<br>        },<br>        &quot;CustomExtensions&quot;: []<br>      },<br>      {<br>        &quot;Amount&quot;: 500,<br>        &quot;DetailType&quot;: &quot;SubTotalLineDetail&quot;,<br>        &quot;SubTotalLineDetail&quot;: {}<br>      }<br>    ],<br>    &quot;TxnTaxDetail&quot;: {<br>      &quot;TotalTax&quot;: 0<br>    },<br>    &quot;TxnSource&quot;: &quot;IntuitPayment&quot;,<br>    &quot;CustomerRef&quot;: {<br>      &quot;value&quot;: &quot;58&quot;,<br>      &quot;name&quot;: &quot;Denise Test&quot;<br>    },<br>    &quot;BillAddr&quot;: {<br>      &quot;Id&quot;: &quot;96&quot;<br>    },<br>    &quot;ShipAddr&quot;: {<br>      &quot;Id&quot;: &quot;96&quot;<br>    },<br>    &quot;FreeFormAddress&quot;: true,<br>    &quot;ShipFromAddr&quot;: {<br>      &quot;Id&quot;: &quot;103&quot;,<br>      &quot;Line1&quot;: &quot;123 Sierra Way&quot;,<br>      &quot;Line2&quot;: &quot;San Pablo, CA  87999&quot;<br>    },<br>    &quot;TotalAmt&quot;: 500,<br>    &quot;ApplyTaxAfterDiscount&quot;: false,<br>    &quot;PrintStatus&quot;: &quot;NeedToPrint&quot;,<br>    &quot;EmailStatus&quot;: &quot;NotSet&quot;,<br>    &quot;Balance&quot;: 0,<br>    &quot;CreditCardPayment&quot;: {<br>      &quot;CreditChargeInfo&quot;: {<br>        &quot;ProcessPayment&quot;: true<br>      },<br>      &quot;CreditChargeResponse&quot;: {<br>        &quot;CCTransId&quot;: &quot;&lt;clientTransIDvalue from previous step&gt;&quot;,<br>        &quot;Status&quot;: &quot;Completed&quot;,<br>        &quot;CardSecurityCodeMatch&quot;: &quot;NotAvailable&quot;,<br>        &quot;AvsStreet&quot;: &quot;Fail&quot;,<br>        &quot;AvsZip&quot;: &quot;Fail&quot;<br>      }<br>    },<br>    &quot;DepositToAccountRef&quot;: {<br>      &quot;value&quot;: &quot;4&quot;,<br>      &quot;name&quot;: &quot;Undeposited Funds&quot;<br>    }<br>  },<br>  &quot;time&quot;: &quot;2025-09-04T12:03:02.972-07:00&quot;<br>}</pre><h4>Troubleshooting</h4><ul><li><a href="https://quickbooks.intuit.com/learn-support/en-us/banking/im-getting-this-invalid-reference-id-an-item-in-this-transaction/00/1466812">Invalid Reference Id : An item in this transaction is set up as a category instead of a product or service.</a></li><li>Token is invalid/not associated with payment data : Tokens are only valid for 15 mins. You may need to generate a new token and update the value to create a charge</li></ul><h4>Resources</h4><ul><li><a href="https://help.developer.intuit.com/s/article/What-is-RequestId-and-its-usage">What is a requestId and how to use it</a></li><li><a href="https://toolsqa.com/postman/guid-in-postman/">Create a dynamic requestId using Postman</a></li><li><a href="https://developer.intuit.com/app/developer/qbpayments/docs/workflows/test-your-app">Practice processing payments using mock data</a></li><li><a href="https://developer.intuit.com/app/developer/qbpayments/docs/workflows/process-a-payment#creating-the-sales-receipt-3136">Process a payment</a></li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=42befe253f96" width="1" height="1" alt=""><hr><p><a href="https://medium.com/intuitdev/from-invoice-to-payment-a-step-by-step-receive-payment-walkthrough-42befe253f96">From invoice to payment: a step-by-step walkthrough</a> was originally published in <a href="https://medium.com/intuitdev">Intuit Developer</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Introducing “Try It Out”: Make your first API call, without writing a line of code]]></title>
            <link>https://medium.com/intuitdev/introducing-try-it-out-make-your-first-api-call-without-writing-a-line-of-code-9e56a9162e10?source=rss----0e7e7c9af933---4</link>
            <guid isPermaLink="false">https://medium.com/p/9e56a9162e10</guid>
            <category><![CDATA[quickbooks-online]]></category>
            <category><![CDATA[apps]]></category>
            <category><![CDATA[api-development]]></category>
            <category><![CDATA[software-development]]></category>
            <category><![CDATA[oauth2]]></category>
            <dc:creator><![CDATA[Intuit Developer]]></dc:creator>
            <pubDate>Fri, 04 Sep 2026 20:48:37 GMT</pubDate>
            <atom:updated>2026-09-04T20:48:39.033Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/991/1*HlqOHMOZTEHsnSQCWV_UEQ.png" /></figure><p>Getting started with a new API often means the same routine: read the docs, spin up a project, wrestle with OAuth, and hope your first request doesn’t 401. We wanted to shorten that path — a lot.</p><p>That’s why we built Try It Out, a new guided experience in the Developer Portal that takes you from sign-up to a successful sandbox API call without writing a single line of code. Here’s how it works:</p><p><strong>1. Your app is ready — in seconds. </strong>The moment you <a href="https://accounts.intuit.com/app/sign-in?app_group=ExternalDeveloperPortal&amp;asset_alias=Intuit.devx.devx&amp;iux_target_aal=25&amp;iux_sso_mfa=true&amp;start_screen_hint=SignUp&amp;redirect_uri=https%3A%2F%2Fdeveloper.intuit.com%2Fpartners%2Fapp%2Fdeveloper%2Fqbo%2Fdocs%2Fget-started">sign up</a>, we provision an app for you: client ID, client secret, and a sandbox environment, all set up and waiting. Nothing to configure.</p><p><strong>2. Get an access token, step by step.</strong> Try It Out walks you through the OAuth 2.0 authorization code flow right in the browser. Authorize your app, pick a sandbox test company, and exchange your code for a token. At each step, we show you the actual HTTP request and response, so you can see exactly what’s happening under the hood instead of taking it on faith.</p><p><strong>3. Make a real API call.</strong> Pick a sample call, such as GET Company Info, and run it against your sandbox company. You’ll get a full response with real sandbox data, proof that your credentials, token, and request all work together.</p><p><strong>4. Keep building.</strong> From there, jump into our <a href="https://developer.intuit.com/app/developer/qbo/docs/get-started">Get Started</a>, explore <a href="https://developer.intuit.com/app/developer/qbo/docs/develop/sdks-and-samples">example integrations</a>, or head straight to your <a href="https://developer.intuit.com/dashboard">dashboard</a>.</p><p><strong>Building with an AI coding tool?</strong> The new Try It Out flow is built with AI tools in mind and works with popular AI coding tools. Don’t want to use the browser? Hit <strong>Copy for AI</strong> to bring your app’s credentials and context straight into the tool of your choice and start building in an instant. Whether you prefer to click through it yourself or prompt your way there, Try It Out meets you where you already are.</p><p>Whether you’re evaluating our platform for the first time or onboarding a new team member, Try It Out is designed to answer one question fast: <em>does this actually work?</em> Now you can find out before you write a single line of code.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=9e56a9162e10" width="1" height="1" alt=""><hr><p><a href="https://medium.com/intuitdev/introducing-try-it-out-make-your-first-api-call-without-writing-a-line-of-code-9e56a9162e10">Introducing “Try It Out”: Make your first API call, without writing a line of code</a> was originally published in <a href="https://medium.com/intuitdev">Intuit Developer</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Retrying the Right Way: 4XX vs 5XX]]></title>
            <link>https://medium.com/intuitdev/retrying-the-right-way-4xx-vs-5xx-9f4e2a61d5c4?source=rss----0e7e7c9af933---4</link>
            <guid isPermaLink="false">https://medium.com/p/9f4e2a61d5c4</guid>
            <category><![CDATA[retry-logic]]></category>
            <category><![CDATA[api-throttling]]></category>
            <category><![CDATA[quickbooks-api]]></category>
            <category><![CDATA[error-handling]]></category>
            <category><![CDATA[api-design]]></category>
            <dc:creator><![CDATA[Vaishnavi Davuluri]]></dc:creator>
            <pubDate>Tue, 01 Sep 2026 17:10:07 GMT</pubDate>
            <atom:updated>2026-09-02T18:44:22.216Z</atom:updated>
            <content:encoded><![CDATA[<p>Not all API errors are worth retrying. This article breaks down when to retry (and when not to) and how to do it safely with backoff and jitter.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*U5ppTAFCx6gOxqC-1TePtA.png" /></figure><h3>Why this matters</h3><p>Retries are a useful tool, but they’re also easy to get wrong. If you retry a failing request repeatedly with no backoff or cooldown, you’re not helping your app recover, you’re piling more load onto a service that’s already struggling. That drives error rates up further and can trigger rate limiting that affects other callers as well.</p><p>The good news is there’s a simple, well-known way to avoid this by knowing when to retry and when not to retry. This post covers when to retry, when not to, and how to do it safely, focusing on the difference between 4XX and 5XX errors.</p><h3>Not every error is worth retrying</h3><p>The first question to ask before retrying is simple: can a retry actually change the outcome? The status code usually tells you.</p><p>For most 4XX error codes, you do not want to retry. For 5XX error codes, you typically will. This 4XX vs 5XX split is standard HTTP practice, not specific to any company or API. The differences between these two types of errors are described in detail below. Further down, we’ll look at how it plays out in Intuit’s own published QuickBooks Online API limits.</p><h3>4XX: fix the request, don’t just retry it</h3><p>A 4XX status code indicates that the problem is with the request itself, typically caused by a bad payload, missing field, expired token, or resource that doesn’t exist. The server looked at what you sent and rejected it.</p><p>Sending the same request again won’t help. A problem that causes a 400 error will send a 400 error later, no matter how many times you try. Retrying just adds load to the API for no benefit.</p><ul><li>400 Bad Request: fix the payload or parameters, then send it again. Don’t resend it as is.</li><li>401 Unauthorized: refresh the credentials and retry once. Don’t loop on this.</li><li>403 Forbidden: a permissions issue. Retrying won’t grant access.</li><li>404 Not Found: the resource isn’t there. Retrying won’t create it.</li><li>409 Conflict: re-check the current state and fix the request rather than resending it.</li><li>429 Too Many Requests: this is the one exception. Retry, but only after honoring the Retry-After header or cooldown period the server gives you.</li></ul><h3>5XX: usually transient, worth retrying with care</h3><p>A 5XX error code means something went wrong on the server side. Your request may have been fine. These errors are often temporary, caused by a deploy, failover, or brief spike in load, and they tend to clear up on their own within seconds or minutes. That’s why retrying can work here, unlike with most 4XX errors.</p><ul><li>500 Internal Server Error: generally safe to retry with backoff.</li><li>502/504 Bad Gateway or Gateway Timeout: usually a transient infrastructure issue. Retry with backoff.</li><li>503 Service Unavailable: often the service is shedding load or under maintenance. Retry, but don’t hammer it. Back off meaningfully.</li></ul><h3>How to retry safely</h3><ul><li>Only retry what’s actually retryable: 5XX and 429. Ignore other 4XX errors until the request itself is fixed.</li><li>Back off exponentially. Wait longer between each attempt (1s, then 2s, then 4s, and so on) instead of retrying immediately or at a fixed interval.</li><li>Add some jitter, a bit of randomness in the wait time, so a bunch of clients that failed at the same moment don’t all retry in lockstep.</li><li>Cap the retries. Pick a max (3 to 5 is typical), and after that, fail loudly instead of retrying forever.</li><li>Honor Retry-After when it’s present. If the server tells you how long to wait, use that instead of your own timer.</li><li>Consider a circuit breaker for anything that keeps failing. If a dependency is clearly down, stop calling it for a while instead of retrying request after request.</li><li>Use idempotency keys where they’re supported, especially for anything that creates a resource, so a retry can’t accidentally create a duplicate. This is where the <a href="http://help.developer.intuit.com/s/article/What-is-RequestId-and-its-usage">RequestId</a> field helps. Send it as a query parameter on your request, and if the same RequestId comes in again, the service returns the original response instead of re-running the operation. This prevents a retry from creating a duplicate.</li></ul><h3>Before and after</h3><p>Before: a request fails with a 400, you retry the same broken payload right away, it fails again, and you keep going. Nothing succeeds, and you’ve just added unnecessary load to the API.</p><p>After: a request fails with a 400, so you log it, fix the payload, and send a corrected request. A request fails with a 503, so you back off with jitter, retry up to a set limit, respect any Retry-After hint, and if it still fails after that, you stop and raise an alert instead of continuing to hammer the API.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=9f4e2a61d5c4" width="1" height="1" alt=""><hr><p><a href="https://medium.com/intuitdev/retrying-the-right-way-4xx-vs-5xx-9f4e2a61d5c4">Retrying the Right Way: 4XX vs 5XX</a> was originally published in <a href="https://medium.com/intuitdev">Intuit Developer</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Enabling Affirm and PayPal online payments on invoices]]></title>
            <link>https://medium.com/intuitdev/enabling-affirm-and-paypal-online-payments-on-invoices-1d8969ec681e?source=rss----0e7e7c9af933---4</link>
            <guid isPermaLink="false">https://medium.com/p/1d8969ec681e</guid>
            <category><![CDATA[quickbooks-api]]></category>
            <dc:creator><![CDATA[Khushbu Kathiria]]></dc:creator>
            <pubDate>Mon, 10 Aug 2026 22:30:34 GMT</pubDate>
            <atom:updated>2026-07-30T20:01:40.911Z</atom:updated>
            <content:encoded><![CDATA[<h3>Overview</h3><p>The <a href="https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/invoice">Invoice API</a> now returns two new boolean fields on the Invoice object:</p><ul><li><strong>AllowOnlineAffirmPayment</strong></li><li><strong>AllowOnlinePayPalPayment</strong></li></ul><p>These sit alongside the two existing online-payment fields already on the Invoice object:</p><ul><li><strong>AllowOnlineACHPayment</strong> — bank/ACH online payment</li><li><strong>AllowOnlineCreditCardPayment</strong> — credit card online payment</li></ul><p>All four fields work the same way: each corresponds to a payment-method toggle on the Invoice screen in QuickBooks Online, and each can be set explicitly on create/update or left to default from the company’s payment settings.</p><h3>What these fields do</h3><p>Each of these four fields controls whether a specific online payment method is offered on an invoice, matching the corresponding toggle in the QuickBooks Online invoice screen.</p><p><strong>The four fields:</strong></p><ul><li>AllowOnlineCreditCardPayment - customer can pay with a credit/debit card</li><li>AllowOnlineACHPayment - customer can pay directly from their bank account</li><li>AllowOnlinePayPalPayment<strong>new</strong> - customer can pay with PayPal or Venmo</li><li>AllowOnlineAffirmPayment<strong>new</strong> - customer can pay using Affirm, splitting the invoice into installments (&quot;buy now, pay later&quot;)</li></ul><p>Credit Card and ACH have been available for some time; PayPal and Affirm are the two newest additions, following the same pattern.</p><p>Setting a field to true doesn&#39;t guarantee the method is offered - the company must also be eligible (payments-enabled, onboarded, active subscription). An explicit value always overrides the company&#39;s Sales-settings toggle, in either direction, as long as the company remains eligible - the toggle only determines the default, used when the field is omitted.</p><ul><li>true → method enabled (toggle on)</li><li>false → method disabled (toggle off)</li><li>omitted → defaults to the company’s current setting</li></ul><p>Worked example: what happens if a company has PayPal or Affirm “disabled”?</p><ul><li>Not subscribed to Affirm/PayPal, field set to true → Result: false — can&#39;t override a missing subscription</li><li>Subscribed, but toggle is off, field set to true → Result: true — explicit value wins</li></ul><p>This override is symmetric — an explicit false also overrides a toggle that&#39;s switched on - and applies to all four fields: AllowOnlineCreditCardPayment, AllowOnlineACHPayment, AllowOnlinePayPalPayment, and AllowOnlineAffirmPayment.</p><h3>Company UI setting that activates these fields</h3><p>The underlying eligibility is driven by the company’s Sales/Invoice payment settings, in the same place as the existing ACH and credit card options:</p><p><strong>QuickBooks Online → Gear icon → Account and Settings → Sales → Invoice payments</strong></p><p>From here, a company that is payments-enabled and onboarded to Affirm and/or PayPal will see those options available to toggle on invoices, same as the existing Credit Card and Bank Transfer (ACH) toggles.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*wpyA72ve19Z1MybDVikbqg.png" /></figure><h3>Creating an Invoice with these fields</h3><p>Both fields are passed the same way as the existing AllowOnlineACHPayment / AllowOnlineCreditCardPayment fields — as top-level boolean properties on the Invoice payload.</p><h3>REST request</h3><pre>POST https://sandbox-quickbooks.api.intuit.com/v3/company/{realmId}/invoice<br>Authorization: Bearer {access_token}<br>Accept: application/json<br>Content-Type: application/json</pre><pre>{<br>  &quot;Line&quot;: [<br>    {<br>      &quot;DetailType&quot;: &quot;SalesItemLineDetail&quot;,<br>      &quot;Amount&quot;: 100.00,<br>      &quot;SalesItemLineDetail&quot;: {<br>        &quot;ItemRef&quot;: { &quot;value&quot;: &quot;1&quot;, &quot;name&quot;: &quot;Services&quot; }<br>      }<br>    }<br>  ],<br>  &quot;CustomerRef&quot;: { &quot;value&quot;: &quot;1&quot; },<br>  &quot;AllowOnlineAffirmPayment&quot;: true,<br>  &quot;AllowOnlinePayPalPayment&quot;: true,<br>  &quot;AllowOnlineACHPayment&quot;: true,<br>  &quot;AllowOnlineCreditCardPayment&quot;: true<br>}</pre><h3>Node.js</h3><pre>// assumes qbo is an already-authenticated node-quickbooks client:<br>// const QuickBooks = require(&#39;node-quickbooks&#39;);<br>// const qbo = new QuickBooks(consumerKey, consumerSecret, oauth_token, oauth_token_secret, realmId, useSandbox, debug, minorVer, oAuthVer, refresh_token);</pre><pre>const invoice = {<br>  Line: [<br>    {<br>      DetailType: &quot;SalesItemLineDetail&quot;,<br>      Amount: 100.00,<br>      SalesItemLineDetail: { ItemRef: { value: &quot;1&quot;, name: &quot;Services&quot; } }<br>    }<br>  ],<br>  CustomerRef: { value: &quot;1&quot; },<br>  AllowOnlineAffirmPayment: true,<br>  AllowOnlinePayPalPayment: true<br>};</pre><pre>qbo.createInvoice(invoice, (err, createdInvoice) =&gt; {<br>  if (err) {<br>    console.error(err);<br>    return;<br>  }<br>  console.log(createdInvoice.AllowOnlineAffirmPayment, createdInvoice.AllowOnlinePayPalPayment);<br>});</pre><h3>Java</h3><pre>// assumes customerRef and lines (a List&lt;Line&gt;) are already built,<br>// and dataService is an authenticated DataService instance -<br>// see Intuit&#39;s QBOConceptsTutorial-Java for a full working example.<br>// add() throws FMSException - wrap in try/catch or declare it in production code.</pre><pre>Invoice invoice = new Invoice();<br>invoice.setCustomerRef(customerRef);<br>invoice.setLine(lines);<br>invoice.setAllowOnlineAffirmPayment(true);<br>invoice.setAllowOnlinePayPalPayment(true);</pre><pre>Invoice createdInvoice = dataService.add(invoice);</pre><p><strong>Reminder:</strong> if you omit these two fields entirely, QuickBooks Online will fall back to the company’s default eligibility (see “What these fields do” above) rather than defaulting to false.</p><h3>What the response and invoice UI look like</h3><p>A successful create/read response will include the two new fields alongside the existing ones:</p><pre>{<br>  &quot;Id&quot;: &quot;129&quot;,<br>  ...<br>  &quot;AllowOnlineACHPayment&quot;: true,<br>  &quot;AllowOnlineCreditCardPayment&quot;: true,<br>  &quot;AllowOnlineAffirmPayment&quot;: true,<br>  &quot;AllowOnlinePayPalPayment&quot;: true<br>}</pre><p>On the QuickBooks Online invoice screen, each true field shows up as an enabled toggle in the &quot;Payment options&quot; panel of the invoice - for example, the customer-facing invoice will show an <strong>Affirm</strong> and/or <strong>PayPal</strong> option next to the existing Credit Card / Bank Transfer options, letting the customer choose that method when paying online.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*eDkCH7GtPVSXbNEuOSvUvQ.png" /><figcaption>Invoice in QuickBooks Online</figcaption></figure><p>Here’s what this looks like in practice, from a real QuickBooks Online company with Affirm and PayPal enabled:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*2jQZlNhzR3A-X5_ASaeS_Q.png" /><figcaption>Payment options enabled on the invoice</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*HbKfAnXKbTB5FfyhortLyg.png" /><figcaption>Payment options available at the time of payment</figcaption></figure><h3>SDK availability</h3><p>Both fields are included in the latest QuickBooks Online SDKs. Older SDK versions that don’t recognize the new properties can throw deserialization errors when reading an Invoice response — for example, this exact error showed up in the PHP SDK before it was updated:</p><p>Property QuickBooksOnline\APIData\IPPinvoice::$AllowOnlineAffirmPayment does not exist. Class QuickBooksOnline\API\Data\IPPinvoice</p><p>Please update to the latest SDKs to avoid this error and utilize these fields:</p><p>If you use the Java SDK, please upgrade to <a href="https://github.com/intuit/QuickBooks-V3-Java-SDK/releases/tag/v6.5.5">version 6.5.5</a><br>If you use the.NET SDK, please upgrade to <a href="https://github.com/intuit/QuickBooks-V3-DotNET-SDK/releases/tag/V14.7.1.5">version 14.7.1.5</a><br>If you use the PHP SDK, please upgrade to <a href="https://github.com/intuit/QuickBooks-V3-PHP-SDK/releases/tag/v6.3.1">version 6.3.1</a></p><h3>References</h3><ul><li>Review <a href="https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/invoice#the-invoice-object">Invoice API reference</a></li><li>Review <a href="https://developer.intuit.com/app/developer/qbo/docs/release-notes/general-release-notes">General release notes</a></li><li><a href="https://quickbooks.intuit.com/r/product-update/affirm-buy-now-pay-later-how-it-works/">Learn more</a> about Affirm payments in QuickBooks Online</li><li><a href="https://quickbooks.intuit.com/learn-support/en-us/help-article/payment-processing/use-paypal-venmo-quickbooks-online/L99N5kW2Q_US_en_US">Learn more</a> about PayPal &amp; Venmo payments in QuickBooks Online</li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=1d8969ec681e" width="1" height="1" alt=""><hr><p><a href="https://medium.com/intuitdev/enabling-affirm-and-paypal-online-payments-on-invoices-1d8969ec681e">Enabling Affirm and PayPal online payments on invoices</a> was originally published in <a href="https://medium.com/intuitdev">Intuit Developer</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[See the newest apps in the QuickBooks App Store]]></title>
            <link>https://medium.com/intuitdev/see-the-newest-apps-in-the-quickbooks-app-store-7754a5cf5094?source=rss----0e7e7c9af933---4</link>
            <guid isPermaLink="false">https://medium.com/p/7754a5cf5094</guid>
            <category><![CDATA[quickbooks-app]]></category>
            <dc:creator><![CDATA[William Lorfing]]></dc:creator>
            <pubDate>Tue, 04 Aug 2026 15:09:50 GMT</pubDate>
            <atom:updated>2026-08-04T15:09:47.012Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*-N9xjvU7OUDbmAa_s-CvDQ.png" /></figure><p>There are 47 new reasons to love the QuickBooks App Store! Each new app added to our global marketplace extends the capabilities of QuickBooks for small and mid-market businesses. This quarter’s additions span everything from AI-powered AP/AR automation and construction job costing, to sales tax compliance, POS checkout, and manufacturing inventory.</p><ol><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/accrueasybyrenxaa/en-us/"><strong>Accrueasy</strong></a> — Automate accrual journal entries for QuickBooks month-end close with AI-powered categorization, no spreadsheets required.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/accuprice/en-us/"><strong>AccuPriceLists.com</strong></a> — Sync 1,200+ common electrical products and custom markups into QuickBooks for consistent, same-day field pricing.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/useappello/en-ca/"><strong>Appello</strong></a> — Manage scheduling, time tracking, job costing, and safety compliance for ICI contractors with real-time QuickBooks sync.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/arcollectorai/en-us/"><strong>AR Collector AI</strong></a> — Automatically call, text, and email customers to collect on overdue invoices, syncing status back to QuickBooks.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/aria_ai_collections/en-us/"><strong>ARiA Digital</strong></a> — Send AI-assisted, automated payment reminders based on live QuickBooks invoice data to get paid faster.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/bill360/en-us/"><strong>Bill360</strong></a> — Automate accounts receivable and get paid an average of 10 days faster with embedded payments for B2B companies.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/getbuildclarity/en-us/"><strong>buildclarity</strong></a> — Track job profitability, cash flow, and markup with a financial command center built for contractors.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/currencytransactions/en-us/"><strong>CastleFX</strong></a> — Send, receive, and convert currencies across 200+ countries with automatic exchange-rate reconciliation to QuickBooks.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/centid/en-us/"><strong>CentID</strong></a> — Print labels, RFID tags, invoices, and reports from iOS and Android with leading barcode and RFID printers.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/checkissuingllc/en-us/"><strong>Check Issuing</strong></a> — Print and mail checks directly from QuickBooks Online bills.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/clearboxfpa/en-us/"><strong>ClearBox FPA</strong></a> — Build three-statement forecasts and weekly cash flow plans with agentic AI, synced to your QuickBooks general ledger.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/efacturapty/en-pa/"><strong>efacturapty</strong></a> — Automate electronic invoicing (facturación electrónica) for Panama directly from QuickBooks. (Only available in Panama.)</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/emerald/en-us/"><strong>Emerald Solutions</strong></a> — Generate emissions, climate-risk, and regulatory compliance reports straight from your existing QuickBooks data.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/emergeapp/en-us/"><strong>EMERGE App</strong></a> — Manage orders, purchases, and inventory in real time across multiple sales channels with QuickBooks sync.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/fora/en-us/"><strong>Fora</strong></a> — Take mobile orders and market your business with a responsive website, synced to QuickBooks Online or Desktop.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/foresight/en-us/"><strong>Foresight</strong></a> — Get an AI CFO powered by your QuickBooks data for real-time P&amp;L insights, 12-month forecasts, and hiring analysis.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/fraudblock/en-us/"><strong>Fraudblock</strong></a> — Verify vendors and payment details with AI to stop fraud before it happens.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/fresho/en-us/"><strong>Fresho</strong></a> — Automate order entry for food wholesalers with AI, syncing invoices and daily payouts to QuickBooks.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/hingesai/en-us/"><strong>Hinges AI</strong></a> — Extract invoice data with 99.8% accuracy and link it to POs for faster, cleaner construction AP.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/idealallocations/en-us/"><strong>IdealAllocations</strong></a> — Allocate expenses in a few clicks with reusable templates that import journal entries directly into QuickBooks.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/uptodatesoft_jofotara/en-us/"><strong>Jofotara Integration</strong></a> — Submit invoices, sales receipts, and credit memos to Jordan’s JoFotara system for ISTD tax compliance.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/kintsugi/en-us/"><strong>Kintsugi</strong></a> — Automate sales tax, VAT, and GST compliance with free nexus monitoring and filings in 100+ countries.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/melkpm/en-us/"><strong>MelkPM</strong></a> — Manage leases, maintenance, and tenant communications with AI-powered property management synced to QuickBooks.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/mineraltree/en-us/"><strong>MineralTree TotalAP</strong></a> — Capture bills, route approvals, and pay vendors by ACH, check, or virtual card with two-way QuickBooks sync.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/missingtoolkitestimates/en-us/"><strong>Missing Toolkit: Estimates</strong></a> — Create detailed estimates with built-in calculations and sync them to QuickBooks with one click.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/missingtoolkittemplates/en-us/"><strong>Missing Toolkit: Templates</strong></a> — Generate custom Word and PDF documents from your QuickBooks invoice and estimate data.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/payablecephgate/en-us/"><strong>Payable by Cephgate</strong></a> — Process vendor invoices with AI directly from Gmail and save them to QuickBooks without switching apps.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/mipsinvoicepayments/en-mu/"><strong>Payment Links Integration</strong></a> — Add a payment link to every QuickBooks invoice automatically and reconcile payments with no manual matching. (Only available in Mauritius.)</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/planyfin/en-us/"><strong>Planyfin</strong></a> — Plan, track, and build consolidated P&amp;L presentations automatically from your QuickBooks data.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/profitoptimizerpro/en-us/"><strong>Profit Optimizer Pro</strong></a> — Turn your QuickBooks data into a real-time profit dashboard with break-even targets and margin-leak alerts.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/quellba/en-us/"><strong>Quellba</strong></a> — Bulk edit, import, and export QuickBooks transactions with built-in validation and one-click undo.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/gdrive/en-us/"><strong>QuickBooks AI connector for Google Drive</strong></a> — Turn your Google Drive files into QuickBooks-ready draft invoices automatically.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/register/en-us/"><strong>register by ability business</strong></a> — Ring up sales with a POS checkout app that syncs every line item to QuickBooks Online in real time.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/relancoinvoicereminders/en-ca/"><strong>Relanco</strong></a> — Send bilingual (English and French) SMS and email invoice reminders built for Canadian contractors.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/runbook/en-us/"><strong>Runbook</strong></a> — Automate custom reporting and analysis in Google Sheets with AI-generated variance explanations from your QuickBooks data.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/sanusbenefits/en-us/"><strong>Sanus Benefits</strong></a> — Quote, enroll, and administer employee benefit plans from hundreds of options.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/setell/en-us/"><strong>Setell</strong></a> — Turn customer requests into priced quotes in minutes with AI, then auto-invoice in QuickBooks the moment they sign.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/skylinepayments/en-us/"><strong>Skyline Payments</strong></a> — Send PayNow links, accept EMV/ACH/card payments, and reconcile invoices in QuickBooks with one click.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/spendifique/en-us/"><strong>Spendifique</strong></a> — Capture and clean expense data for batch review before it reaches QuickBooks.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/stocksmith/en-us/"><strong>Stocksmith</strong></a> — Track raw materials, batches, and finished goods with accurate inventory values and true COGS synced to QuickBooks.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/supportbee/en-gb/"><strong>SupportBee</strong></a> — Surface QuickBooks customer balances and profile links directly inside your support tickets.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/tabiriai/en-us/"><strong>Tabiri AI Accountant</strong></a> — Prepare bill entry, coding, and reconciliation work for your review with an AI accounting assistant.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/getwaave/en-us/"><strong>WAAVE Payment Request</strong></a> — Send compliant payment request links from QuickBooks for high-risk merchants, with payments syncing back automatically.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/wegotrade/en-ca/"><strong>WEGOTRADE</strong></a> — Sync invoices in real time between QuickBooks and the WEGOTRADE B2B trading platform.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/windingflow/en-us/"><strong>Windingflow</strong></a> — Automate purchase orders, supplier invoices, and payments across your supply chain with QuickBooks sync.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/workflowmax/en-us/"><strong>WorkflowMAX</strong></a> — Manage jobs from quote to invoice and track time and profitability with two-way QuickBooks sync.</li><li><a href="https://quickbooks.intuit.com/app/apps/appdetails/x2xlitemanufacturing/en-us/"><strong>x2x Lite Manufacturing</strong></a> — Add lightweight BOMs, production orders, and automated cost postings to QuickBooks Online.</li></ol><p>To learn more about listing your app on the QuickBooks App Store, go to <a href="https://developer.intuit.com/app/developer/qbo/docs/go-live/list-on-the-app-store">List your app on our marketplaces</a>. You can also read more about the publishing process in <a href="https://medium.com/intuitdev/speed-through-the-review-process-to-list-on-the-quickbooks-app-store-intuit-developer-community-b75b79d782ba">this article</a> on the Intuit Developer Blog.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=7754a5cf5094" width="1" height="1" alt=""><hr><p><a href="https://medium.com/intuitdev/see-the-newest-apps-in-the-quickbooks-app-store-7754a5cf5094">See the newest apps in the QuickBooks App Store</a> was originally published in <a href="https://medium.com/intuitdev">Intuit Developer</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Multi-Entity Sandbox Now Available for Intuit Enterprise Suite]]></title>
            <link>https://medium.com/intuitdev/multi-entity-sandbox-now-available-for-intuit-enterprise-suite-17fa5ad175aa?source=rss----0e7e7c9af933---4</link>
            <guid isPermaLink="false">https://medium.com/p/17fa5ad175aa</guid>
            <category><![CDATA[sandbox]]></category>
            <category><![CDATA[intuit-enterprise-suite]]></category>
            <category><![CDATA[quickbooks-api]]></category>
            <dc:creator><![CDATA[Intuit Developer]]></dc:creator>
            <pubDate>Mon, 22 Jun 2026 15:15:43 GMT</pubDate>
            <atom:updated>2026-06-22T15:15:42.106Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*5h-NkHZOPmuiE0q2k3Go8w.jpeg" /></figure><p>Earlier this year, we launched the <a href="https://medium.com/intuitdev/new-for-intuit-enterprise-suite-single-entity-sandbox-dimensions-api-b75b759178c0">single-entity sandbox</a> for Intuit Enterprise Suite, followed last month by a suite of <a href="https://medium.com/intuitdev/launch-alert-new-project-management-apis-and-custom-dimensions-enhancements-f9610448fbe7">Project Management and Custom Dimensions APIs</a> expanding what developers can build for our enterprise customers. Today, we’re taking the next step: the <strong>Multi-Entity Sandbox</strong> is now available for Intuit Enterprise Suite.</p><p><strong>What’s new</strong></p><p>You can now connect and test your app integrations in a fully isolated, non-production environment with support for multi-entity use cases built in. No more workarounds, no risk to production data.</p><p><strong>Getting started</strong></p><p>The walkthrough below shows how to access the Multi-Entity Sandbox directly from your developer account.</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FRtqH29BBaYs%3Ffeature%3Doembed&amp;display_name=YouTube&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DRtqH29BBaYs&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FRtqH29BBaYs%2Fhqdefault.jpg&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/3a1c452bf0a7443e61f6c1dba4a06624/href">https://medium.com/media/3a1c452bf0a7443e61f6c1dba4a06624/href</a></iframe><p><strong>What’s next</strong></p><p>Join us for a <a href="https://intuit.zoom.us/meeting/register/xC-6npO4R--h1AuYbLp31g">webinar on June 25, 2026</a> for a deep dive into the new sandbox capabilities, a recap of the recently launched APIs, and a live Q&amp;A with our engineering team.</p><p>We can’t wait to see what you build.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=17fa5ad175aa" width="1" height="1" alt=""><hr><p><a href="https://medium.com/intuitdev/multi-entity-sandbox-now-available-for-intuit-enterprise-suite-17fa5ad175aa">Multi-Entity Sandbox Now Available for Intuit Enterprise Suite</a> was originally published in <a href="https://medium.com/intuitdev">Intuit Developer</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>