Integration
Connect Google Sheets and QuickBooks Online
When Cell Range Values Changed fires in Google Sheets, your agent runs Find customer by name in QuickBooks Online, or New bill in QuickBooks Online to Add Row in Google Sheets. Describe the whole flow and it is built, tested on every scenario and kept running.
What the catalog holds today. Ask for anything missing and your agent reads the API documentation and adds it.
Build solutions, not workarounds.
What do you want Google Sheets and QuickBooks Online to do together?
Ask the assistant
Connect your AI client
Give your AI client this address.
https://mcp.apiant.aiOne connection does both: ask your client to act in an app once, or have it build an automation that keeps running. Any client that takes a remote MCP server. Nothing to install. Create your free account, then sign in once in your browser.
Set it up in your client
Claude Code
Run this in the directory you want to work in.
claude mcp add --transport http -s project apiant-ai https://mcp.apiant.aiStart Claude Code there, approve the server, and sign in in the browser page it opens.
Claude Code guide (opens in a new tab)Claude, web and desktop
Open Customize, then Connectors, then Add custom connector, and paste the address. On Team and Enterprise an owner adds it first.
Setup guide (opens in a new tab)Cursor
Add the address to your MCP configuration as a server URL. Cursor signs you in in your browser.
Setup guide (opens in a new tab)Zed
Open Settings, then AI, then MCP Servers, then Add Server, then Add Remote Server.
Setup guide (opens in a new tab)Codex and the ChatGPT desktop app
Open Settings, then MCP servers, then Add server, and choose Streamable HTTP. From the terminal, Codex takes the address with its own add command and then signs you in.
Setup guide (opens in a new tab)Any other MCP client
Paste the address where the client asks for a remote MCP server URL, and name the server apiant-ai where it lets you. APIANT's skills reach the client over the same connection.
Setup guide (opens in a new tab)Teams that keep working lists in Google Sheets and their books in QuickBooks Online usually retype the same rows twice. Connecting them lets a new sheet row create a customer, vendor, invoice or bill in QuickBooks Online, and lets new bills, payments and paid invoices land back in a sheet tab. Lookups by name keep records matched to the right customer or item.
Example flows
What Google Sheets and QuickBooks Online can do together
From Google Sheets to QuickBooks Online
When Cell Range Values Changed in Google Sheets
then Find customer by name in QuickBooks Online
When New Rows in Google Sheets
then Create customer in QuickBooks Online
From QuickBooks Online to Google Sheets
When New bill in QuickBooks Online
then Add Row in Google Sheets
When New paid invoice in QuickBooks Online
then Upsert Row in Google Sheets
Starting points drawn from the triggers and actions in the catalog today. Describe the flow you need, at any depth, and your agent builds it and tests every scenario before it ships.
Everything your agent can do with Google Sheets and QuickBooks Online
Triggers and actions 27 triggers · 91 actions
Trigger
Aggregate Metric ChangedFires when an aggregate metric (sum/avg/count/…) over a column changes.
Trigger
Cell Range Values ChangedFires when the values in a specific cell range change.
Trigger
Conditional Format Rule ChangedFires when a conditional-format rule changes.
Trigger
Data Validation Rule ChangedFires when a data-validation rule changes.
Trigger
Developer Metadata ChangedFires when developer metadata changes.
Trigger
Filtered Range Values ChangedFires when the values in a filtered range change.
Trigger
New RowsFires when new rows are appended to a Google Sheet.
Trigger
New Sheet AddedFires when a new sheet (tab) is added to a spreadsheet.
Trigger
New Spreadsheet CreatedFires when a new spreadsheet is created in the account.
Trigger
Spreadsheet Metadata ChangedFires when spreadsheet metadata changes.
Trigger
Spreadsheet Properties ChangedFires when spreadsheet properties change.
Trigger
Spreadsheet Row ChangedFires when a row matching a query changes.
Trigger
Spreadsheet Search MatchFires when a spreadsheet matching search criteria is found.
Trigger
Table Query Result ChangedFires when the result of a SQL-style table query changes.
Trigger
Table Schema ChangedFires when a table's column schema changes.
Trigger
Worksheet Names ChangedFires when worksheet (tab) names change.
Action
Add RowAppend a row to a Google Sheet
Action
Aggregate Column DataRead a range and compute an aggregate (sum|avg|min|max|count) over one column, skipping blank/non-numeric cells (so a header row is skipped automatically).
Action
Auto-Resize Rows or ColumnsAuto-fit row heights or column widths over an index range via autoResizeDimensions.
Action
Change Sheet PropertiesUpdate a worksheet's grid properties (row/column count) using an explicit field mask.
Action
Clear Basic FilterRemove the basic filter from a sheet via clearBasicFilter.
Action
Clear Spreadsheet Row(s)Clear the values in a range (formatting preserved).
Action
Copy RangeCopy a source cell range to a destination range within the spreadsheet.
Action
Copy WorksheetCopy a worksheet into a destination spreadsheet.
Action
Create ChartAdd a basic embedded chart (column/bar/line/etc.) built from a domain range and a series range on a sheet. Returns the new chartId.
Action
Create Conditional Formatting RuleAdd a boolean conditional formatting rule (e.g. NUMBER_GREATER) that colors matching cells.
Action
Create Multiple Spreadsheet RowsAppend many rows in one call.
Action
Create SpreadsheetCreate a new Google Sheets spreadsheet with the given title.
Action
Create Spreadsheet ColumnInsert a blank column at a given index.
Action
Create Spreadsheet RowAppend a single row of values to a sheet range.
Action
Create Spreadsheet Row at TopInsert a blank row just below the header (row 2), then write the given values into it in one operation.
Action
Create WorksheetAdd a new worksheet (tab) to an existing spreadsheet.
Action
Delete ChartDelete an embedded chart via deleteEmbeddedObject.
Action
Delete SheetDelete a worksheet from a spreadsheet by sheetId (gid).
Action
Delete Spreadsheet Row(s)Delete a contiguous block of rows by index.
Action
Find and ReplaceFind and replace text across the spreadsheet. Supply EXACTLY ONE scope: all_sheets=true OR sheet_id. Leave the other unset (do not pass all_sheets=false together with sheet_id).
Action
Find SpreadsheetFind spreadsheets by exact name via the Drive API (cross-host through the googlesheets connection).
Action
Find WorksheetReturn the worksheet whose title matches the given title (sheet_id/index/found), reading the spreadsheet's sheet properties.
Action
Format Cell RangeApply background color and bold formatting to a cell range via repeatCell.
Action
Format Spreadsheet RowApply a background color across an entire row via repeatCell over a row range.
Action
Get Conditional Format RulesList all conditional-format rules on each sheet (paired with the sheetId so a follow-up update can target a rule by index).
Action
Get Data RangeRead all values in one or more ranges via batchGet.
Action
Get Data Validation RulesRead the data-validation rule set on every cell of a range (per-cell dataValidation, via includeGridData with a field mask).
Action
Get Many Spreadsheet Rows (Advanced)Read multiple ranges at once via batchGet.
Action
Get Row by IDRead a single row range. NOTE: Google Sheets has no row ID; the row number IS the identity.
Action
Get Sheet NamesReturn the titles of all sheets (tabs) in the spreadsheet.
Action
Get Spreadsheet by IDFetch spreadsheet metadata (title, sheets, gids, grid properties).
Action
List ChartsList all embedded charts (chartId + title) across every sheet in the spreadsheet.
Action
Lookup Spreadsheet RowRead a range and return the FIRST row whose cell at column_index equals match_value (Sheets has no server-side filter; this op filters the returned rows).
Action
Lookup Spreadsheet Rows (Advanced)Read multiple ranges via batchGet and return ALL rows whose cell at column_index equals match_value (Sheets has no server-side filter; this op filters the returned rows).
Action
Move ChartReposition an embedded chart to a new overlay anchor cell via updateEmbeddedObjectPosition.
Action
Rename SheetRename a worksheet's title.
Action
Search SpreadsheetsSearch spreadsheets by name substring (or full-text) via the Drive API, cross-host through the googlesheets connection.
Action
Set Basic FilterApply a basic filter to a range on a sheet via setBasicFilter.
Action
Set Data ValidationApply a ONE_OF_LIST dropdown data-validation rule to a cell range.
Action
Sort RangeSort a cell range by one column in ascending or descending order.
Action
Update ChartReplace an existing chart's spec (title, chart type, domain/series ranges) via updateChartSpec.
Action
Update Conditional Format RulesReplace an existing conditional-format rule (identified by its index on the sheet) with a new boolean rule.
Action
Update Data Validation RuleOverwrite the data-validation rule on a cell range with a ONE_OF_LIST dropdown (same endpoint as create; setDataValidation replaces whatever rule the range held).
Action
Update Spreadsheet RowOverwrite the values at a specific range.
Action
Update Spreadsheet Row(s)Update one or more disjoint ranges in a single batch.
Action
Upsert RowRead a range, find the row whose column_index cell equals match_value; UPDATE that row when found, otherwise APPEND a new row. One adaptive write request (method+path chosen by the match script).
Trigger
New billPolls for newly created bills (accounts payable), most recent first.
Trigger
New customerPolls for newly created customers, most recent first.
Trigger
New estimateFires when a new estimate is created in QuickBooks Online.
Trigger
New invoicePolls for newly created invoices, most recent first.
Trigger
New or updated customerFires when a QuickBooks customer is created or any of its details change.
Trigger
New or updated estimateFires when a QuickBooks estimate is created or edited.
Trigger
New or updated invoiceFires when a QuickBooks invoice is created or edited — line items, amounts, due date, or status.
Trigger
New or updated itemFires when a QuickBooks product or service item is created or edited.
Trigger
New or updated vendorFires when a QuickBooks vendor is created or any of its details change.
Trigger
New paid invoicePolls for invoices that are fully paid (Balance = 0), most recently updated first.
Trigger
New paymentPolls for newly created customer payments, most recent first.
Action
Create accountCreate an account in the QuickBooks chart of accounts — name, account type, and detail type.
Action
Create billCreates a new bill (accounts payable) for a vendor with a single account-based line item.
Action
Create credit memoCreates a new credit memo for a customer with a single line item.
Action
Create customerCreates a new customer in QuickBooks Online.
Action
Create estimateCreate a QuickBooks Online estimate (quote) for a customer.
Action
Create expense (purchase)Creates a new expense (Purchase) paid from a bank/credit-card account with one account-based line.
Action
Create invoiceCreates a new invoice for a customer with a single line item.
Action
Create item (product/service)Creates a new product or service item.
Action
Create journal entryCreate a QuickBooks journal entry with balanced debit and credit lines against the chart of accounts.
Action
Create paymentRecords a customer payment, optionally applied against a specific invoice.
Action
Create refund receiptCreates a new refund receipt for a customer with a single line item.
Action
Create sales receiptCreates a new sales receipt for a customer with a single line item.
Action
Create vendorCreates a new vendor in QuickBooks Online.
Action
Delete billPermanently delete a QuickBooks bill by Id.
Action
Delete credit memoPermanently delete a QuickBooks credit memo by Id.
Action
Delete estimatePermanently delete a QuickBooks estimate by Id.
Action
Delete invoicePermanently delete a QuickBooks invoice by Id. Unlike voiding, this removes the transaction entirely.
Action
Delete sales receiptPermanently delete a QuickBooks sales receipt by Id.
Action
Find account by nameLook up an account in the QuickBooks chart of accounts by its name.
Action
Find customer by nameSearches for a customer by display name and returns its Id and SyncToken.
Action
Find invoice by numberLook up a QuickBooks invoice by its document number (the invoice number customers see) rather than its internal Id.
Action
Find item by nameLook up a QuickBooks product or service item by its name.
Action
Find vendor by nameLook up a QuickBooks Online vendor by display name.
Action
Get bill balanceReturns the outstanding balance for a bill by its Id.
Action
Get customer by IDRetrieves a single customer by its Id.
Action
Get estimate by IDRetrieve a QuickBooks Online estimate by its ID.
Action
Get estimate PDFDownload the rendered PDF of a QuickBooks estimate by Id.
Action
Get invoice by IDRetrieves a single invoice by its Id, including its balance.
Action
Get invoice PDFDownload the rendered PDF of a QuickBooks invoice by Id, for emailing or archiving.
Action
List accountsList the accounts in the QuickBooks chart of accounts, with their type, detail type, and current balance.
Action
List attachmentsList the files attached to a QuickBooks transaction or record, with their download links.
Action
List employeesList employees recorded in QuickBooks Online.
Action
List itemsList products and services (items) defined in QuickBooks Online.
Action
Pay billRecords a bill payment against a vendor bill, paid from the specified bank/credit-card account.
Action
Run queryRuns an arbitrary read-only QuickBooks Online query (QBO SQL-like syntax) and returns the raw QueryResponse.
Action
Send estimateEmail a QuickBooks Online estimate to the customer.
Action
Send invoiceEmails an invoice to the supplied email address (or the invoice's billing email if omitted).
Action
Update customerUpdates an existing customer (sparse update). Requires the customer Id and current SyncToken.
Action
Update estimateUpdate an existing QuickBooks estimate by Id, changing only the fields supplied.
Action
Update invoiceUpdate an existing QuickBooks invoice by Id — a sparse update that changes only the fields supplied and leaves the rest of the invoice intact.
Action
Update itemUpdate an existing QuickBooks product or service item by Id — name, description, price, income account, or active flag.
Action
Update vendorUpdate an existing QuickBooks vendor by Id — contact details, billing address, terms, or active flag.
Action
Upload attachmentUpload a file to QuickBooks and attach it to a transaction or record — a receipt on an expense, a contract on an invoice.
Action
Void invoiceVoids an existing invoice. Requires the invoice Id and current SyncToken.
Action
Void paymentVoids an existing customer payment. Requires the payment Id and current SyncToken.
No trigger or action matches that. Ask your agent to add it: it reads the API documentation and builds what you describe.
Each app on its own
Reviews
What our customers say
More from Google Sheets
Google Sheets to StripeStripe is a payment processing platform for online businesses.
Google Sheets to NotionA new tool that blends your everyday work apps into one. It's the all-in-one workspace for you and your team.
Google Sheets to AirtableOrganize anything with Airtable, a modern database created for everyone.
Google Sheets to TrelloTrello is a visual collaboration tool that organizes projects into boards, lists, and cards.
Google Sheets to IntercomIntercom is a customer communications platform for support, engagement, and marketing.
Google Sheets to MINDBODYMINDBODY is a powerful business management software that combines your scheduling, task automation...
More into QuickBooks Online
HubSpot to QuickBooks OnlineHubSpot is your all-in-one stop for all of your marketing software needs.
Slack to QuickBooks OnlineSlack is a messaging platform for teams. Post messages, manage channels, users, reminders, and react to...
Gmail to QuickBooks OnlineGmail is Google’s email service, featuring spam protection, search functions, and seamless integration with...
Google Calendar to QuickBooks OnlineGoogle Calendar is a time management tool providing scheduling features, event reminders, and integration...
Google Drive to QuickBooks OnlineGoogle Drive is a cloud storage solution for uploading, sharing, and collaborating on files across devices...
Mailchimp to QuickBooks OnlineMailchimp marketing automation and email platform.
Questions
Google Sheets and QuickBooks Online, answered
How fast does a change in Google Sheets reach QuickBooks Online?
Google Sheets triggers such as New Rows or Cell Range Values Changed are polled on a schedule with a floor of about fifteen minutes, so work arrives in batches rather than instantly. QuickBooks Online triggers like New payment and New bill are also polled.
Can an invoice number from QuickBooks Online be written back into the sheet row that created it?
Yes. After Create invoice runs, the flow can use Update Spreadsheet Row or Upsert Row in Google Sheets to put the invoice number and status back on the matching row, so the sheet shows what was booked.
What can start an automation from Google Sheets?
Any of Google Sheets's 16 triggers in the catalog, including Cell Range Values Changed, New Rows, Spreadsheet Row Changed and Aggregate Metric Changed. Describe the moment in plain language and your agent picks the right one.
What can your agent do in QuickBooks Online when something happens in Google Sheets?
Any of QuickBooks Online's 45 actions, including Create vendor, Find customer by name, Update item and Create account. Your agent maps the data both ways and tests every scenario before it ships.
Can it also run from QuickBooks Online to Google Sheets?
Yes. When something happens in QuickBooks Online, your agent can act in Google Sheets too. This page covers both directions: QuickBooks Online's triggers and Google Sheets's actions are listed here as well.
Do I have to build a connector for Google Sheets or QuickBooks Online?
No. Both are in the catalog with their triggers and actions. You describe the automation; your agent builds it, tests every scenario and keeps it running.
Can my AI client use Google Sheets and QuickBooks Online without building an automation?
Yes. With your AI client connected to APIANT, ask it to do something in either app once and it runs that action on the spot. Ask for an automation and your agent builds it, tests every scenario and keeps it running. One connection covers both.
What happens when something fails?
Your agent works that out for you. It plans the failure paths along with the happy path, then tests every scenario before it ships.
Is there a free plan?
Yes. Every plan includes the agent, including free, and building from your own AI client spends no assistant credits.