Connect QuickBooks Online to Your AI Agent

Ask AI which invoices remain unpaid, record an agreed payment allocation, or prepare a financial summary for a specified period.

147 tools OAuth

Try a QuickBooks Online Task

Copy a prompt into your agent with the oo Skill installed. Add your page links and source notes before running it.

oo Skill QuickBooks Online

Review outstanding invoices

Identify open balances and due dates for a customer before following up.

/oo QuickBooks Online: Find customer [name] and list their invoices with open balances. Show invoice numbers, due dates, original amounts, and remaining balances. Separate overdue invoices as of [date].

Record received payment

Apply a received payment to the invoices you specify and check the remaining balance.

/oo QuickBooks Online: Record the [amount and currency] received from [customer] on [date], reference [reference]. Apply [amount] to invoice [number] and [amount] to invoice [number], then show the payment record and remaining invoice balances.

Create a customer invoice

Turn agreed quantities and prices into an invoice in the customer account.

/oo QuickBooks Online: Create an invoice for [customer] dated [date], due [date], for [product or service, quantity, and unit price]. Use the existing product or service records and include this customer memo: [memo].

Review monthly financial reports

Summarize profit and loss and the balance sheet for the same reporting period.

/oo QuickBooks Online: Run the profit and loss report for [month] and balance sheet as of [month end], using accrual accounting. Summarize revenue, expenses, net income, assets, and liabilities, preserving the report currency and dates.

Start Working with QuickBooks Online

  1. Install OOMOL

    Set up oo CLI and the oo Skill in your agent.

    Install OOMOL →
  2. Connect QuickBooks Online

    Connect with QuickBooks Online OAuth authorization.

    Connect QuickBooks Online →
  3. Give Your Agent a Task

    Use /oo with the pages to read, the changes to make, and where to save the result.

    Connection Guide →

Choose Your Agent

  • An account with access to the QuickBooks Online resources used in your task. Configure your own OAuth application credentials before authorization.

QuickBooks Online Tools

Work with customer and vendor records, invoices, payments, bills, attachments, and financial reports in the connected QuickBooks Online company. Give the assistant the dates, amounts, and accounting treatment for changes you want recorded.

Customers and invoices

Find customers, review open balances, and create or update invoices.

Customer payments

Inspect payments and record how received funds are applied to invoices.

Financial reports

Read profit and loss, balance sheet, cash flow, and receivables reports.

Bills and supporting files

Read vendor bills, record bills with supplied accounting details, and attach supporting files.

147 tools

Get Company Info

Get the connected company's profile: name, legal name, address, fiscal year start and country.

quickbooks.get_company_info

List Customers

List customers, optionally filtered by name or active status.

quickbooks.list_customers

Get Customer

Get one customer by ID, including its current SyncToken.

quickbooks.get_customer

Create Customer

Create a customer.

quickbooks.create_customer

Update Customer

Update a customer. Customers cannot be deleted in QuickBooks; set `additional_fields.Active` to false to deactivate one.

quickbooks.update_customer

List Invoices

List invoices, optionally filtered by customer, number, date range or open balance.

quickbooks.list_invoices

Get Invoice

Get one invoice by ID, including its lines, balance and current SyncToken.

quickbooks.get_invoice

Create Invoice

Create an invoice for a customer from one or more sales lines.

quickbooks.create_invoice

Update Invoice

Update an invoice. With the default sparse update only the supplied fields change; a supplied `lines` array replaces the invoice's lines.

quickbooks.update_invoice

Void Invoice

Void an invoice. QuickBooks keeps the record but zeroes its amounts, so the invoice no longer counts toward balances.

quickbooks.void_invoice

Delete Invoice

Permanently delete an invoice. This cannot be undone; void the invoice instead to keep a record.

quickbooks.delete_invoice

List Payments

List customer payments, optionally filtered by customer or date range.

quickbooks.list_payments

Get Payment

Get one payment by ID, including the invoices it was applied to.

quickbooks.get_payment

Create Payment

Record a customer payment, optionally applying it to specific invoices.

quickbooks.create_payment

List Accounts

List accounts from the chart of accounts, optionally filtered by type or name.

quickbooks.list_accounts

Get Account

Get one account by ID.

quickbooks.get_account

Ping

Check that the connection works by reading the company profile.

quickbooks.ping

Get Changes

List records of the given entities that changed since a point in time (change data capture). QuickBooks looks back at most 30 days and returns at most 1000 records per call.

quickbooks.get_changes

Batch

Run up to 30 operations in one request. Each item is either a read-only query or a create, update or delete of one entity. Items do not roll back each other when one fails.

quickbooks.batch

Get Exchange Rate

Get the exchange rate from a currency to the company's home currency.

quickbooks.get_exchange_rate

Get Preferences

Get the company preferences: accounting, sales, tax, currency and other settings.

quickbooks.get_preferences

Get Report

Run any QuickBooks report. Use `parameters` for report-specific options such as customer, vendor or account filters.

quickbooks.get_report

Upload Attachment

Upload a file to QuickBooks, optionally attached to a transaction or other record.

quickbooks.upload_attachment

List Attachments

List attachments, optionally only those linked to one record.

quickbooks.list_attachments

Get Attachment

Get an attachment's metadata by ID.

quickbooks.get_attachment

Get Attachment Download Url

Get a temporary URL to download an attachment's file.

quickbooks.get_attachment_download_url

Update Attachment

Update an attachment's metadata, such as its note or file name.

quickbooks.update_attachment

Delete Attachment

Permanently delete an attachment.

quickbooks.delete_attachment

Void Payment

Void a payment. QuickBooks keeps the record but zeroes its amounts.

quickbooks.void_payment

List Records

List records of any supported entity by name. Prefer the entity-specific list actions.

quickbooks.list_records

Get Record

Get one record of any supported entity by name and ID.

quickbooks.get_record

Create Record

Create a record of any supported entity by name.

quickbooks.create_record

Update Record

Update a record of any supported entity by name.

quickbooks.update_record

Delete Record

Delete a record of any supported entity by name. Entities QuickBooks cannot delete are deactivated instead.

quickbooks.delete_record

List Bills

List bills, optionally filtered.

quickbooks.list_bills

Get Bill

Get one bill by its ID.

quickbooks.get_bill

Create Bill

Create a bill.

quickbooks.create_bill

Update Bill

Update a bill. With the default sparse update only the supplied fields change.

quickbooks.update_bill

Delete Bill

Permanently delete a bill. This cannot be undone.

quickbooks.delete_bill

List Bill Payments

List bill payments, optionally filtered.

quickbooks.list_bill_payments

Get Bill Payment

Get one bill payment by its ID.

quickbooks.get_bill_payment

Create Bill Payment

Create a bill payment.

quickbooks.create_bill_payment

Update Bill Payment

Update a bill payment. With the default sparse update only the supplied fields change.

quickbooks.update_bill_payment

Delete Bill Payment

Permanently delete a bill payment. This cannot be undone.

quickbooks.delete_bill_payment

List Budgets

List budgets, optionally filtered.

quickbooks.list_budgets

List Classes

List classs, optionally filtered.

quickbooks.list_classes

List Credit Memos

List credit memos, optionally filtered.

quickbooks.list_credit_memos

Get Credit Memo

Get one credit memo by its ID.

quickbooks.get_credit_memo

Create Credit Memo

Create a credit memo.

quickbooks.create_credit_memo

Update Credit Memo

Update a credit memo. With the default sparse update only the supplied fields change.

quickbooks.update_credit_memo

Delete Credit Memo

Permanently delete a credit memo. This cannot be undone.

quickbooks.delete_credit_memo

List Credit Terms

List credit terms, optionally filtered.

quickbooks.list_credit_terms

Get Credit Term

Get one credit term by its ID.

quickbooks.get_credit_term

Create Credit Term

Create a credit term.

quickbooks.create_credit_term

Update Credit Term

Update a credit term. With the default sparse update only the supplied fields change.

quickbooks.update_credit_term

Delete Credit Term

Deactivate a credit term by setting Active to false. QuickBooks does not delete this kind of record.

quickbooks.delete_credit_term

List Currencies

List currencys, optionally filtered.

quickbooks.list_currencies

Delete Customer

Deactivate a customer by setting Active to false. QuickBooks does not delete this kind of record.

quickbooks.delete_customer

List Departments

List departments, optionally filtered.

quickbooks.list_departments

Get Department

Get one department by its ID.

quickbooks.get_department

Create Department

Create a department.

quickbooks.create_department

Update Department

Update a department. With the default sparse update only the supplied fields change.

quickbooks.update_department

Delete Department

Deactivate a department by setting Active to false. QuickBooks does not delete this kind of record.

quickbooks.delete_department

List Deposits

List deposits, optionally filtered.

quickbooks.list_deposits

Get Deposit

Get one deposit by its ID.

quickbooks.get_deposit

Create Deposit

Create a deposit.

quickbooks.create_deposit

Update Deposit

Update a deposit. With the default sparse update only the supplied fields change.

quickbooks.update_deposit

Delete Deposit

Permanently delete a deposit. This cannot be undone.

quickbooks.delete_deposit

List Employees

List employees, optionally filtered.

quickbooks.list_employees

Get Employee

Get one employee by its ID.

quickbooks.get_employee

Create Employee

Create a employee.

quickbooks.create_employee

Update Employee

Update a employee. With the default sparse update only the supplied fields change.

quickbooks.update_employee

Delete Employee

Deactivate a employee by setting Active to false. QuickBooks does not delete this kind of record.

quickbooks.delete_employee

List Estimates

List estimates, optionally filtered.

quickbooks.list_estimates

Get Estimate

Get one estimate by its ID.

quickbooks.get_estimate

Create Estimate

Create a estimate.

quickbooks.create_estimate

Update Estimate

Update a estimate. With the default sparse update only the supplied fields change.

quickbooks.update_estimate

Delete Estimate

Permanently delete a estimate. This cannot be undone.

quickbooks.delete_estimate

List Journal Codes

List journal codes, optionally filtered.

quickbooks.list_journal_codes

Get Journal Code

Get one journal code by its ID.

quickbooks.get_journal_code

Create Journal Code

Create a journal code.

quickbooks.create_journal_code

Update Journal Code

Update a journal code. With the default sparse update only the supplied fields change.

quickbooks.update_journal_code

List Journal Entries

List journal entrys, optionally filtered.

quickbooks.list_journal_entries

Get Journal Entry

Get one journal entry by its ID.

quickbooks.get_journal_entry

Create Journal Entry

Create a journal entry.

quickbooks.create_journal_entry

Update Journal Entry

Update a journal entry. With the default sparse update only the supplied fields change.

quickbooks.update_journal_entry

Delete Journal Entry

Permanently delete a journal entry. This cannot be undone.

quickbooks.delete_journal_entry

Create Account

Create a account.

quickbooks.create_account

Delete Account

Deactivate a account by setting Active to false. QuickBooks does not delete this kind of record.

quickbooks.delete_account

List Payment Methods

List payment methods, optionally filtered.

quickbooks.list_payment_methods

Get Payment Method

Get one payment method by its ID.

quickbooks.get_payment_method

Create Payment Method

Create a payment method.

quickbooks.create_payment_method

Delete Payment Method

Deactivate a payment method by setting Active to false. QuickBooks does not delete this kind of record.

quickbooks.delete_payment_method

Update Payment

Update a payment. With the default sparse update only the supplied fields change.

quickbooks.update_payment

Delete Payment

Permanently delete a payment. This cannot be undone.

quickbooks.delete_payment

List Products

List product or services, optionally filtered.

quickbooks.list_products

Get Product

Get one product or service by its ID.

quickbooks.get_product

Create Product

Create a product or service.

quickbooks.create_product

Update Product

Update a product or service. With the default sparse update only the supplied fields change.

quickbooks.update_product

Delete Product

Deactivate a product or service by setting Active to false. QuickBooks does not delete this kind of record.

quickbooks.delete_product

List Purchase Orders

List purchase orders, optionally filtered.

quickbooks.list_purchase_orders

Get Purchase Order

Get one purchase order by its ID.

quickbooks.get_purchase_order

Create Purchase Order

Create a purchase order.

quickbooks.create_purchase_order

Update Purchase Order

Update a purchase order. With the default sparse update only the supplied fields change.

quickbooks.update_purchase_order

Delete Purchase Order

Permanently delete a purchase order. This cannot be undone.

quickbooks.delete_purchase_order

List Purchases

List purchase (expense, check or credit card charge)s, optionally filtered.

quickbooks.list_purchases

Get Purchase

Get one purchase (expense, check or credit card charge) by its ID.

quickbooks.get_purchase

Create Purchase

Create a purchase (expense, check or credit card charge).

quickbooks.create_purchase

Update Purchase

Update a purchase (expense, check or credit card charge). With the default sparse update only the supplied fields change.

quickbooks.update_purchase

Delete Purchase

Permanently delete a purchase (expense, check or credit card charge). This cannot be undone.

quickbooks.delete_purchase

List Refund Receipts

List refund receipts, optionally filtered.

quickbooks.list_refund_receipts

Get Refund Receipt

Get one refund receipt by its ID.

quickbooks.get_refund_receipt

Create Refund Receipt

Create a refund receipt.

quickbooks.create_refund_receipt

Update Refund Receipt

Update a refund receipt. With the default sparse update only the supplied fields change.

quickbooks.update_refund_receipt

Delete Refund Receipt

Permanently delete a refund receipt. This cannot be undone.

quickbooks.delete_refund_receipt

List Sales Receipts

List sales receipts, optionally filtered.

quickbooks.list_sales_receipts

Get Sales Receipt

Get one sales receipt by its ID.

quickbooks.get_sales_receipt

Create Sales Receipt

Create a sales receipt.

quickbooks.create_sales_receipt

Update Sales Receipt

Update a sales receipt. With the default sparse update only the supplied fields change.

quickbooks.update_sales_receipt

Delete Sales Receipt

Permanently delete a sales receipt. This cannot be undone.

quickbooks.delete_sales_receipt

List Tax Agencies

List tax agencys, optionally filtered.

quickbooks.list_tax_agencies

Get Tax Agency

Get one tax agency by its ID.

quickbooks.get_tax_agency

Create Tax Agency

Create a tax agency.

quickbooks.create_tax_agency

List Tax Codes

List tax codes, optionally filtered.

quickbooks.list_tax_codes

Get Tax Code

Get one tax code by its ID.

quickbooks.get_tax_code

List Tax Rates

List tax rates, optionally filtered.

quickbooks.list_tax_rates

Get Tax Rate

Get one tax rate by its ID.

quickbooks.get_tax_rate

List Time Activities

List time activitys, optionally filtered.

quickbooks.list_time_activities

Get Time Activity

Get one time activity by its ID.

quickbooks.get_time_activity

Create Time Activity

Create a time activity.

quickbooks.create_time_activity

Update Time Activity

Update a time activity. With the default sparse update only the supplied fields change.

quickbooks.update_time_activity

Delete Time Activity

Permanently delete a time activity. This cannot be undone.

quickbooks.delete_time_activity

List Transfers

List transfers, optionally filtered.

quickbooks.list_transfers

Get Transfer

Get one transfer by its ID.

quickbooks.get_transfer

Create Transfer

Create a transfer.

quickbooks.create_transfer

Update Transfer

Update a transfer. With the default sparse update only the supplied fields change.

quickbooks.update_transfer

Delete Transfer

Permanently delete a transfer. This cannot be undone.

quickbooks.delete_transfer

List Vendor Credits

List vendor credits, optionally filtered.

quickbooks.list_vendor_credits

Get Vendor Credit

Get one vendor credit by its ID.

quickbooks.get_vendor_credit

Create Vendor Credit

Create a vendor credit.

quickbooks.create_vendor_credit

Update Vendor Credit

Update a vendor credit. With the default sparse update only the supplied fields change.

quickbooks.update_vendor_credit

Delete Vendor Credit

Permanently delete a vendor credit. This cannot be undone.

quickbooks.delete_vendor_credit

List Vendors

List vendors, optionally filtered.

quickbooks.list_vendors

Get Vendor

Get one vendor by its ID.

quickbooks.get_vendor

Create Vendor

Create a vendor.

quickbooks.create_vendor

Update Vendor

Update a vendor. With the default sparse update only the supplied fields change.

quickbooks.update_vendor

Delete Vendor

Deactivate a vendor by setting Active to false. QuickBooks does not delete this kind of record.

quickbooks.delete_vendor

Work Across Apps

Save a month-end summary in Notion

Keep the reporting period, accounting basis, and financial totals together in a review note.

Frequently Asked Questions

Does recording a payment charge the customer?

No. It creates an accounting record of a payment you have received. It does not charge a card or move money. Specify the customer, payment amount, date, and invoice allocation.

What is the difference between void and delete?

Voiding retains an invoice record with zeroed amounts; deletion permanently removes it.

Do I need my own OAuth app?

Yes. Configure your Intuit OAuth app and match production or sandbox credentials to the selected environment.

Can I choose the accounting basis for reports?

Yes. Specify cash or accrual accounting and the report period. Available reports and fields depend on the connected company and its QuickBooks configuration.

Connect QuickBooks Online

About QuickBooks Online ↗