QuickBooks Online

App · Accounting & Finance · 79 actions · 7 triggers

Invoice customers, record payments, bills and expenses, and run reports in QuickBooks Online.

Triggers

Start a workflow when something happens in QuickBooks Online. See how triggers work.

New QuickBooks customer

Runs when a customer is added in QuickBooks Online.

Event fields

What a run starts with. Later steps read each field with an @ reference.

idtext
display_nametext
company_nametext
emailtext
phonetext
balancenumber
created_attext
recordobject

New QuickBooks vendor

Runs when a vendor is added in QuickBooks Online.

Event fields

What a run starts with. Later steps read each field with an @ reference.

idtext
display_nametext
company_nametext
emailtext
phonetext
balancenumber
created_attext
recordobject

New QuickBooks invoice

Runs when an invoice is created in QuickBooks Online.

Event fields

What a run starts with. Later steps read each field with an @ reference.

idtext
doc_numbertext
customer_idtext
customer_nametext
totalnumber
balancenumber
txn_datetext
due_datetext
emailtext
currencytext
created_attext
recordobject

QuickBooks invoice paid

Runs when a customer payment pays off an invoice in QuickBooks Online.

Event fields

What a run starts with. Later steps read each field with an @ reference.

idtext
doc_numbertext
customer_idtext
customer_nametext
totalnumber
txn_datetext
due_datetext
currencytext
payment_idtext
payment_datetext
paid_attext
recordobject

New QuickBooks payment

Runs when a customer payment is recorded in QuickBooks Online.

Event fields

What a run starts with. Later steps read each field with an @ reference.

idtext
customer_idtext
customer_nametext
totalnumber
unappliednumber
txn_datetext
invoice_idslist
currencytext
created_attext
recordobject

New QuickBooks bill

Runs when a bill is entered in QuickBooks Online.

Event fields

What a run starts with. Later steps read each field with an @ reference.

idtext
doc_numbertext
vendor_idtext
vendor_nametext
totalnumber
balancenumber
txn_datetext
due_datetext
currencytext
created_attext
recordobject

New QuickBooks estimate

Runs when an estimate is created in QuickBooks Online.

Event fields

What a run starts with. Later steps read each field with an @ reference.

idtext
doc_numbertext
customer_idtext
customer_nametext
totalnumber
statustext
txn_datetext
expiration_datetext
emailtext
currencytext
created_attext
recordobject

Actions

ActionWhat it does
Add a note in QuickBooksAttach a text note to a transaction or contact.
Attach a file in QuickBooksUpload a file, such as a receipt or a signed contract, and attach it to a transaction or contact.
Convert a QuickBooks estimate to an invoiceInvoice an accepted estimate: creates an invoice with the estimate's customer and lines, linked back to it, and QuickBooks closes the estimate.
Create a QuickBooks accountAdd an account to the chart of accounts, such as a new bank account or expense category.
Create a QuickBooks billRecord a bill a vendor sent you, to pay later with 'Pay a QuickBooks bill'.
Create a QuickBooks credit memoGive a customer credit, for a return or an overcharge, that can be applied to their invoices with 'Create a QuickBooks payment'.
Create a QuickBooks customerCreate a new customer in QuickBooks Online.
Create a QuickBooks depositRecord a bank deposit.
Create a QuickBooks estimateCreate an estimate (quote) for a customer, with one line from the line fields or several from Line items.
Create a QuickBooks expenseRecord money already spent: a card charge, a check or a cash purchase.
Create a QuickBooks invoiceCreate an invoice for a customer, with one line from the line fields or several from Line items.
Create a QuickBooks itemAdd a product or service to sell or buy.
Create a QuickBooks journal entryPost a journal entry.
Create a QuickBooks paymentRecord a payment in QuickBooks Online, optionally linked to an invoice.
Create a QuickBooks purchase orderOrder goods or services from a vendor.
Create a QuickBooks refund receiptRefund a customer: record money paid back to them out of a bank account.
Create a QuickBooks sales receiptRecord a sale that was paid for at the time, so no invoice is needed.
Create a QuickBooks time activityLog time an employee or contractor worked, optionally billable to a customer.
Create a QuickBooks transferMove money between two of the company's accounts, such as checking to savings.
Create a QuickBooks vendorAdd a vendor (supplier) you buy from and pay bills to.
Create a QuickBooks vendor creditRecord a credit or refund a vendor owes you, which can be applied against their bills.
Deactivate a QuickBooks customerMake a customer inactive, which is how QuickBooks removes one: it disappears from lists and pickers, and its transactions stay on the books.
Deactivate a QuickBooks vendorMake a vendor inactive, which is how QuickBooks removes one: it disappears from lists and pickers, and its transactions stay on the books.
Delete a QuickBooks billDelete a bill permanently.
Delete a QuickBooks estimateDelete an estimate permanently.
Delete a QuickBooks invoiceDelete an invoice permanently.
Delete a QuickBooks transactionDelete any transaction, attachment or note permanently: a payment, expense, journal entry, deposit and so on.
Download a QuickBooks attachmentSave a file attached in QuickBooks so later steps can use it.
Get a QuickBooks accounts payable aging reportWhat the company owes vendors, bucketed by how overdue it is: one row per vendor, or per open bill when detailed.
Get a QuickBooks accounts receivable aging reportWhat customers owe, bucketed by how overdue it is: one row per customer, or per open invoice when detailed.
Get a QuickBooks balance sheetAssets, liabilities and equity as of the end date, as rows and totals by section.
Get a QuickBooks billRetrieve a single bill by ID, including its open balance.
Get a QuickBooks cash flow statementCash in and out over a period by operating, investing and financing activity, as rows and totals by section.
Get a QuickBooks customerRetrieve a single customer by ID from QuickBooks Online.
Get a QuickBooks estimateRetrieve a single estimate by ID, including its status.
Get a QuickBooks estimate PDFSave an estimate as the PDF a customer would receive.
Get a QuickBooks invoiceRetrieve a single invoice by ID from QuickBooks Online.
Get a QuickBooks invoice PDFSave an invoice as the PDF a customer would receive, styled by the company's invoice template.
Get a QuickBooks itemRetrieve a single product or service by ID, including its price, accounts and, for inventory, quantity on hand.
Get a QuickBooks paymentRetrieve a single customer payment by ID, including the invoices it paid.
Get a QuickBooks profit and loss reportIncome, expenses and net income for a period, as rows a workflow can loop over and totals by section (Income, Expenses, NetIncome...).
Get a QuickBooks purchase orderRetrieve a single purchase order by ID, including whether it's still open.
Get a QuickBooks sales receiptRetrieve a single sales receipt by ID.
Get a QuickBooks sales receipt PDFSave a sales receipt as the PDF a customer would receive.
Get a QuickBooks vendorRetrieve a single vendor (supplier) by ID.
Get QuickBooks company infoRead the connected company's name, legal name, address, contact details, country and fiscal year start.
List QuickBooks accountsList accounts from the chart of accounts, optionally narrowed by type, classification or name.
List QuickBooks attachmentsList the files and notes attached to one transaction or contact.
List QuickBooks billsList bills from vendors, optionally narrowed by vendor, payment status or date.
List QuickBooks changesEverything of the chosen kinds created, changed or deleted since a moment in the last 30 days, in one call.
List QuickBooks credit memosList credit memos, optionally narrowed by customer or date.
List QuickBooks customersList customers, optionally narrowed by name, email or when they last changed.
List QuickBooks estimatesList estimates (quotes), optionally narrowed by customer or date.
List QuickBooks expensesList expenses (checks, card charges and cash purchases), optionally narrowed by date.
List QuickBooks invoicesList invoices, optionally narrowed by customer, payment status, date or number.
List QuickBooks itemsList products and services, optionally narrowed by type, name or SKU.
List QuickBooks journal entriesList journal entries, optionally narrowed by date or number.
List QuickBooks paymentsList customer payments, optionally narrowed by customer or date.
List QuickBooks purchase ordersList purchase orders, optionally narrowed by date.
List QuickBooks sales receiptsList sales receipts (sales paid for on the spot), optionally narrowed by customer or date.
List QuickBooks time activitiesList logged time, optionally narrowed by date or billing status.
List QuickBooks vendorsList vendors (suppliers), optionally narrowed by name or when they last changed.
Pay a QuickBooks billRecord paying a bill, by check from a bank account or with a credit card.
Run a QuickBooks queryRun a query in QuickBooks' own query language, e.g. SELECT * FROM Invoice WHERE Balance > '0' ORDERBY DueDate MAXRESULTS 50.
Run a QuickBooks reportRun any QuickBooks report by name, with its options as Intuit documents them, such as a trial balance, general ledger or sales by customer.
Send a QuickBooks credit memoEmail a credit memo to the customer from QuickBooks.
Send a QuickBooks estimateEmail an estimate to the customer from QuickBooks.
Send a QuickBooks invoiceEmail an invoice to the customer from QuickBooks, with a link to pay it online when the company takes online payments.
Send a QuickBooks purchase orderEmail a purchase order to the vendor from QuickBooks.
Send a QuickBooks sales receiptEmail a sales receipt to the customer from QuickBooks.
Update a QuickBooks billChange a bill's dates, number, terms, memo or lines.
Update a QuickBooks customerChange a customer's details.
Update a QuickBooks estimateChange an estimate, or mark it accepted, closed or rejected.
Update a QuickBooks invoiceChange an invoice's dates, number, terms, messages or lines.
Update a QuickBooks itemChange a product or service.
Update a QuickBooks vendorChange a vendor's details.
Void a QuickBooks invoiceVoid an invoice: its amounts become zero and 'Voided' is added to its memo, but it stays on record, unlike deleting it.
Void a QuickBooks paymentVoid a payment: its amount becomes zero and the invoices it paid are open again.
Void a QuickBooks sales receiptVoid a sales receipt: its amounts become zero and 'Voided' is added to its memo, but it stays on record.

Add a note in QuickBooks

Attach a text note to a transaction or contact.

Inputs

Attach toentity_typetextRequired
The kind of record to attach to.One of: Invoice, Estimate, SalesReceipt (Sales receipt), CreditMemo (Credit memo), RefundReceipt (Refund receipt), Payment, Bill, BillPayment (Bill payment), Purchase (Expense), PurchaseOrder (Purchase order), and 9 more.
Record IDentity_idtextRequired
That record's Id, such as an invoice Id.
NotenotetextRequired
The note.

Outputs

Attachableobject
timetext
Example output
{
  "Attachable": {
    "AttachableRef": [
      {
        "EntityRef": {
          "type": "Invoice",
          "value": "130"
        }
      }
    ],
    "Id": "5000000000000123457",
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "Note": "Customer asked for net 45 terms.",
    "SyncToken": "0"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Attach a file in QuickBooks

Upload a file, such as a receipt or a signed contract, and attach it to a transaction or contact. Up to 100MB.

Inputs

FilefiletextRequired
The file to attach: upload one, or use a file from an earlier step.
Attach toentity_typetextRequired
The kind of record to attach to.One of: Invoice, Estimate, SalesReceipt (Sales receipt), CreditMemo (Credit memo), RefundReceipt (Refund receipt), Payment, Bill, BillPayment (Bill payment), Purchase (Expense), PurchaseOrder (Purchase order), and 9 more.
Record IDentity_idtextRequired
That record's Id, such as an invoice Id.
File namefile_nametext
The file's name in QuickBooks. Defaults to the uploaded file's name.
Notenotetext
A note shown with the attachment.
Include when sendinginclude_on_sendtrue/false
Send the file along when the transaction is emailed.

Outputs

Attachableobject
timetext
Example output
{
  "Attachable": {
    "AttachableRef": [
      {
        "EntityRef": {
          "type": "Invoice",
          "value": "130"
        },
        "IncludeOnSend": false
      }
    ],
    "ContentType": "application/pdf",
    "FileName": "receipt.pdf",
    "Id": "5000000000000123456",
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "Size": 48213,
    "SyncToken": "0",
    "TempDownloadUri": "https://intuit-qbo-prod-30.s3.amazonaws.com/receipt.pdf"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Convert a QuickBooks estimate to an invoice

Invoice an accepted estimate: creates an invoice with the estimate's customer and lines, linked back to it, and QuickBooks closes the estimate.

Inputs

Estimate IDestimate_idtextRequired
The estimate's Id, from 'Create a QuickBooks estimate' or 'List QuickBooks estimates'.
Datetxn_datedate
The transaction's date. Defaults to today.
Due datedue_datedate
When payment is due.
Invoice numberdoc_numbertext
The invoice's number. Leave blank to let QuickBooks number it.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

Invoiceobject
timetext
Example output
{
  "Invoice": {
    "Balance": 300.0,
    "BillEmail": {
      "Address": "ap@acme.example"
    },
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "DocNumber": "1037",
    "DueDate": "2026-10-30",
    "EmailStatus": "NotSet",
    "Id": "130",
    "Line": [
      {
        "Amount": 300.0,
        "Description": "Garden design",
        "DetailType": "SalesItemLineDetail",
        "Id": "1",
        "LineNum": 1,
        "SalesItemLineDetail": {
          "ItemRef": {
            "name": "Services",
            "value": "1"
          },
          "Qty": 2,
          "UnitPrice": 150
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks account

Add an account to the chart of accounts, such as a new bank account or expense category. QuickBooks accounts can't be deleted, only made inactive in QuickBooks.

Inputs

NamenametextRequired
The account's name. It can't contain double quotes or colons.
Account typeaccount_typetextRequired
What kind of account it is.One of: Bank, Other Current Asset, Fixed Asset, Other Asset, Accounts Receivable, Equity, Expense, Other Expense, Cost of Goods Sold, Accounts Payable, and 5 more.
Detail typeaccount_sub_typetext
A finer type within the account type, such as Checking for a Bank account or OfficeGeneralAdministrativeExpenses for an Expense account. Defaults to the type's most common one.
Numberaccount_numbertext
The account number, when the company numbers its accounts.
Descriptiondescriptiontext
What the account is for.
Parent accountparent_account_idtext
Make it a sub-account of this account (of the same type).
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

Accountobject
timetext
Example output
{
  "Account": {
    "AccountSubType": "Checking",
    "AccountType": "Bank",
    "Active": true,
    "Classification": "Asset",
    "CurrencyRef": {
      "name": "United States Dollar",
      "value": "USD"
    },
    "CurrentBalance": 1201.0,
    "FullyQualifiedName": "Checking",
    "Id": "35",
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "Name": "Checking",
    "SyncToken": "0"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks bill

Record a bill a vendor sent you, to pay later with 'Pay a QuickBooks bill'. Give one line by category or by product, or several in Line items.

Inputs

Vendorvendor_idtextRequired
The vendor. Pick one, or use an Id from 'Create a QuickBooks vendor' or 'List QuickBooks vendors'.
Amountline_amountnumber
The line's total.At least 0.
Categoryexpense_account_idtext
The category: the account the money went to, such as Office Supplies.
Descriptionline_descriptiontext
What the line is for.
Product/serviceitem_idtext
A product or service bought by the unit, instead of a category.
Quantityquantitynumber
How many, for a product or service.At least 0.
Unit costunit_pricenumber
The cost of one, for a product or service.
Billable to customerbillable_customer_idtext
A customer to pass this cost on to: the line is marked billable to them.
Tax codetax_code_idtext
The line's tax code, where the company tracks tax on purchases.
Line items (advanced)line_itemslist
Several lines instead of the single line above, e.g. [{"account_id": "20", "amount": 45, "description": "Paper"}]. Keys: amount, description, account_id (a category), or item_id with quantity and unit_price; customer_id and billable, class_id, tax_code_id. A line in QuickBooks' own shape (with a DetailType) is sent as given.
Datetxn_datedate
The transaction's date. Defaults to today.
Due datedue_datedate
When payment is due.
Bill no.doc_numbertext
The vendor's bill or invoice number.
Termsterms_idtext
Payment terms, such as Net 30, which set the due date when none is given.
Internal memoprivate_notetext
An internal memo. Customers and vendors never see it.
Locationdepartment_idtext
The location (QuickBooks' departments) to track this under, when the company uses locations.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

Billobject
timetext
Example output
{
  "Bill": {
    "APAccountRef": {
      "name": "Accounts Payable (A/P)",
      "value": "33"
    },
    "Balance": 45.0,
    "DocNumber": "INV-8812",
    "DueDate": "2026-10-30",
    "Id": "150",
    "Line": [
      {
        "AccountBasedExpenseLineDetail": {
          "AccountRef": {
            "name": "Office Expenses",
            "value": "15"
          },
          "BillableStatus": "NotBillable"
        },
        "Amount": 45.0,
        "Description": "Printer paper",
        "DetailType": "AccountBasedExpenseLineDetail",
        "Id": "1"
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 45.0,
    "TxnDate": "2026-09-30",
    "VendorRef": {
      "name": "Bob's Burger Joint",
      "value": "56"
    }
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks credit memo

Give a customer credit, for a return or an overcharge, that can be applied to their invoices with 'Create a QuickBooks payment'.

Inputs

Customercustomer_idtextRequired
The customer. Pick one, or use an Id from 'Create a QuickBooks customer' or 'List QuickBooks customers'.
Amountline_amountnumber
The line's total. Leave blank to use quantity times unit price.At least 0.
Descriptionline_descriptiontext
What the line is for, as the customer sees it.
Product/serviceitem_idtext
The product or service sold. Leave blank to use the company's 'Services' item: QuickBooks ignores the amount of a line without an item.
Quantityquantitynumber
How many.At least 0.
Unit priceunit_pricenumber
The price of one.
Service dateservice_datedate
When the work was done.
Tax codetax_code_idtext
The line's sales tax code. In US companies that's TAX or NON.
Line items (advanced)line_itemslist
Several lines instead of the single line above, e.g. [{"item_id": "1", "quantity": 2, "unit_price": 150, "description": "Design"}]. Keys: amount, description, item_id, quantity, unit_price, service_date, tax_code_id, class_id. A line in QuickBooks' own shape (with a DetailType) is sent as given.
Datetxn_datedate
The transaction's date. Defaults to today.
Numberdoc_numbertext
The document number. Leave blank to let QuickBooks number it, when the company numbers them automatically.
Email toemail_totext
The customer's email address for this document (its Bill Email).
Message to customermemotext
A message to the customer, printed on the document.
Internal memoprivate_notetext
An internal memo. Customers and vendors never see it.
Classclass_idtext
The class to track this under, when the company uses class tracking.
Locationdepartment_idtext
The location (QuickBooks' departments) to track this under, when the company uses locations.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

CreditMemoobject
timetext
Example output
{
  "CreditMemo": {
    "Balance": 300.0,
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "DocNumber": "1040",
    "Id": "190",
    "Line": [
      {
        "Amount": 300.0,
        "Description": "Garden design",
        "DetailType": "SalesItemLineDetail",
        "Id": "1",
        "LineNum": 1,
        "SalesItemLineDetail": {
          "ItemRef": {
            "name": "Services",
            "value": "1"
          },
          "Qty": 2,
          "UnitPrice": 150
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "RemainingCredit": 300.0,
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks customer

Create a new customer in QuickBooks Online.

Inputs

Display namedisplay_nametextRequired
The name QuickBooks shows. It must be unique across all customers, vendors and employees, including inactive ones.
First namegiven_nametext
First name.
Last namefamily_nametext
Last name.
Emailemailtext
Email address.
Phonephonetext
Main phone number.
Companycompany_nametext
Company name.
Mobilemobiletext
Mobile number.
Websitewebsitetext
Website address.
Address line 1address_line1text
Billing address, first line.
Address line 2address_line2text
Billing address, second line.
Citycitytext
City.
Statestatetext
State, province or region code, such as CA.
Postal codepostal_codetext
ZIP or postal code.
Countrycountrytext
Country.
Notesnotestext
Private notes about the customer.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

Customerobject
timetext
Example output
{
  "Customer": {
    "Active": true,
    "Balance": 0,
    "CompanyName": "Acme Corp",
    "DisplayName": "Acme Corp",
    "FamilyName": "Doe",
    "GivenName": "Jane",
    "Id": "58",
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "PrimaryEmailAddr": {
      "Address": "ap@acme.example"
    },
    "PrimaryPhone": {
      "FreeFormNumber": "(555) 555-0100"
    },
    "SyncToken": "0"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks deposit

Record a bank deposit. The simple form deposits an amount from an account such as an income account; Line items can also deposit payments waiting in Undeposited Funds.

Inputs

Deposit todeposit_to_account_idtextRequired
The bank account the money went into.
Amountamountnumber
The amount deposited.At least 0.
From accountfrom_account_idtext
The account the money came from, such as an income account.
Descriptiondescriptiontext
What the deposit is for.
Received fromreceived_from_customer_idtext
The customer it came from.
Payment methodpayment_method_idtext
How it was paid: cash, check, a card...
Check no.check_numtext
The check number, for a check.
Lines (advanced)line_itemslist
Several lines instead of the simple form. Keys: amount, account_id, description, entity_id (a customer) with entity_type, payment_method_id, check_num, class_id; or txn_id with txn_type (Payment or SalesReceipt) to deposit a payment waiting in Undeposited Funds.
Datetxn_datedate
The transaction's date. Defaults to today.
Internal memoprivate_notetext
An internal memo. Customers and vendors never see it.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

Depositobject
timetext
Example output
{
  "Deposit": {
    "DepositToAccountRef": {
      "name": "Checking",
      "value": "35"
    },
    "Id": "240",
    "Line": [
      {
        "Amount": 250.0,
        "DepositLineDetail": {
          "AccountRef": {
            "name": "Sales of Product Income",
            "value": "79"
          },
          "Entity": {
            "name": "Acme Corp",
            "value": "58"
          }
        },
        "DetailType": "DepositLineDetail",
        "Id": "1"
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 250.0,
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks estimate

Create an estimate (quote) for a customer, with one line from the line fields or several from Line items.

Inputs

Customercustomer_idtextRequired
The customer. Pick one, or use an Id from 'Create a QuickBooks customer' or 'List QuickBooks customers'.
Amountline_amountnumber
The line's total. Leave blank to use quantity times unit price.At least 0.
Descriptionline_descriptiontext
What the line is for, as the customer sees it.
Product/serviceitem_idtext
The product or service sold. Leave blank to use the company's 'Services' item: QuickBooks ignores the amount of a line without an item.
Quantityquantitynumber
How many.At least 0.
Unit priceunit_pricenumber
The price of one.
Service dateservice_datedate
When the work was done.
Tax codetax_code_idtext
The line's sales tax code. In US companies that's TAX or NON.
Line items (advanced)line_itemslist
Several lines instead of the single line above, e.g. [{"item_id": "1", "quantity": 2, "unit_price": 150, "description": "Design"}]. Keys: amount, description, item_id, quantity, unit_price, service_date, tax_code_id, class_id. A line in QuickBooks' own shape (with a DetailType) is sent as given.
Datetxn_datedate
The transaction's date. Defaults to today.
Expiration dateexpiration_datedate
When the estimate expires.
Numberdoc_numbertext
The document number. Leave blank to let QuickBooks number it, when the company numbers them automatically.
Email toemail_totext
The customer's email address for this document (its Bill Email).
Message to customermemotext
A message to the customer, printed on the document.
Internal memoprivate_notetext
An internal memo. Customers and vendors never see it.
Classclass_idtext
The class to track this under, when the company uses class tracking.
Locationdepartment_idtext
The location (QuickBooks' departments) to track this under, when the company uses locations.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

Estimateobject
timetext
Example output
{
  "Estimate": {
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "DocNumber": "1038",
    "EmailStatus": "NotSet",
    "ExpirationDate": "2026-10-30",
    "Id": "170",
    "Line": [
      {
        "Amount": 300.0,
        "Description": "Garden design",
        "DetailType": "SalesItemLineDetail",
        "Id": "1",
        "LineNum": 1,
        "SalesItemLineDetail": {
          "ItemRef": {
            "name": "Services",
            "value": "1"
          },
          "Qty": 2,
          "UnitPrice": 150
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30",
    "TxnStatus": "Pending"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks expense

Record money already spent: a card charge, a check or a cash purchase. Give one line by category, or several in Line items.

Inputs

Paid frompayment_account_idtextRequired
The bank or credit card account it was paid from.
Payment typepayment_typetext
Cash, Check or CreditCard. Defaults to Cash.One of: Cash, Check, CreditCard (Credit card). Default: Cash.
Amountline_amountnumber
The line's total.At least 0.
Categoryexpense_account_idtext
The category: the account the money went to, such as Office Supplies.
Descriptionline_descriptiontext
What the line is for.
Payee (vendor)vendor_idtext
Who was paid.
Billable to customerbillable_customer_idtext
A customer to pass this cost on to: the line is marked billable to them.
Tax codetax_code_idtext
The line's tax code, where the company tracks tax on purchases.
Line items (advanced)line_itemslist
Several lines instead of the single line above, e.g. [{"account_id": "20", "amount": 45, "description": "Paper"}]. Keys: amount, description, account_id (a category), or item_id with quantity and unit_price; customer_id and billable, class_id, tax_code_id. A line in QuickBooks' own shape (with a DetailType) is sent as given.
Datetxn_datedate
The transaction's date. Defaults to today.
Ref no.doc_numbertext
The check or reference number.
Payment methodpayment_method_idtext
How it was paid: cash, check, a card...
Internal memoprivate_notetext
An internal memo. Customers and vendors never see it.
Locationdepartment_idtext
The location (QuickBooks' departments) to track this under, when the company uses locations.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

Purchaseobject
timetext
Example output
{
  "Purchase": {
    "AccountRef": {
      "name": "Visa",
      "value": "42"
    },
    "EntityRef": {
      "name": "Bob's Burger Joint",
      "type": "Vendor",
      "value": "56"
    },
    "Id": "160",
    "Line": [
      {
        "AccountBasedExpenseLineDetail": {
          "AccountRef": {
            "name": "Office Expenses",
            "value": "15"
          },
          "BillableStatus": "NotBillable"
        },
        "Amount": 45.0,
        "Description": "Printer paper",
        "DetailType": "AccountBasedExpenseLineDetail",
        "Id": "1"
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "PaymentType": "CreditCard",
    "SyncToken": "0",
    "TotalAmt": 45.0,
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks invoice

Create an invoice for a customer, with one line from the line fields or several from Line items. It isn't emailed; use 'Send a QuickBooks invoice' for that.

Inputs

Customercustomer_idtextRequired
The customer. Pick one, or use an Id from 'Create a QuickBooks customer' or 'List QuickBooks customers'.
Amountline_amountnumber
The line's total. Leave blank to use quantity times unit price.At least 0.
Descriptionline_descriptiontext
What the line is for, as the customer sees it.
Product/serviceitem_idtext
The product or service sold. Leave blank to use the company's 'Services' item: QuickBooks ignores the amount of a line without an item.
Quantityquantitynumber
How many.At least 0.
Unit priceunit_pricenumber
The price of one.
Service dateservice_datedate
When the work was done.
Tax codetax_code_idtext
The line's sales tax code. In US companies that's TAX or NON.
Line items (advanced)line_itemslist
Several lines instead of the single line above, e.g. [{"item_id": "1", "quantity": 2, "unit_price": 150, "description": "Design"}]. Keys: amount, description, item_id, quantity, unit_price, service_date, tax_code_id, class_id. A line in QuickBooks' own shape (with a DetailType) is sent as given.
Due datedue_datedate
When payment is due.
Email toemail_totext
The customer's email address for this document (its Bill Email).
Datetxn_datedate
The transaction's date. Defaults to today.
Numberdoc_numbertext
The document number. Leave blank to let QuickBooks number it, when the company numbers them automatically.
Termsterms_idtext
Payment terms, such as Net 30, which set the due date when none is given.
Message to customermemotext
A message to the customer, printed on the document.
Internal memoprivate_notetext
An internal memo. Customers and vendors never see it.
Classclass_idtext
The class to track this under, when the company uses class tracking.
Locationdepartment_idtext
The location (QuickBooks' departments) to track this under, when the company uses locations.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

Invoiceobject
timetext
Example output
{
  "Invoice": {
    "Balance": 300.0,
    "BillEmail": {
      "Address": "ap@acme.example"
    },
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "DocNumber": "1037",
    "DueDate": "2026-10-30",
    "EmailStatus": "NotSet",
    "Id": "130",
    "Line": [
      {
        "Amount": 300.0,
        "Description": "Garden design",
        "DetailType": "SalesItemLineDetail",
        "Id": "1",
        "LineNum": 1,
        "SalesItemLineDetail": {
          "ItemRef": {
            "name": "Services",
            "value": "1"
          },
          "Qty": 2,
          "UnitPrice": 150
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks item

Add a product or service to sell or buy. Service and inventory items need an income account; inventory items also need an asset account, an expense account and a starting quantity.

Inputs

NamenametextRequired
The item's name, unique among items.
Typeitem_typetext
Service, non-inventory product, or inventory product. Defaults to Service.One of: Service, NonInventory (Non-inventory product), Inventory (Inventory product). Default: Service.
Sales descriptiondescriptiontext
The description on sales forms.
Sales priceunit_pricenumber
The sales price.
Income accountincome_account_idtext
The income account sales of it post to. Required for Service and Inventory items; an Inventory item's must have the Sales of Product Income detail type.
Purchase descriptionpurchase_descriptiontext
The description on purchase forms.
Costpurchase_costnumber
What it costs to buy.
Expense accountexpense_account_idtext
The expense account purchases of it post to (Cost of Goods Sold for inventory). Required for Inventory items.
SKUskutext
Its stock-keeping unit code.
Taxabletaxabletrue/false
Whether sales tax applies to it (US).
Inventory asset accountasset_account_idtext
Inventory only: the inventory asset account that tracks its value.
Quantity on handquantity_on_handnumber
Inventory only: how many you have now.At least 0.
As of dateinventory_start_datedate
Inventory only: the date the starting quantity is as of. Defaults to today.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

Itemobject
timetext
Example output
{
  "Item": {
    "Active": true,
    "FullyQualifiedName": "Services",
    "Id": "1",
    "IncomeAccountRef": {
      "name": "Services",
      "value": "1"
    },
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "Name": "Services",
    "SyncToken": "0",
    "Taxable": false,
    "Type": "Service",
    "UnitPrice": 150
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks journal entry

Post a journal entry. The simple form moves an amount from a credit account to a debit account; Line items takes any number of lines. Debits and credits must balance.

Inputs

Amountamountnumber
The amount to move.At least 0.
Debit accountdebit_account_idtext
The account to debit.
Credit accountcredit_account_idtext
The account to credit.
Descriptiondescriptiontext
What the entry is for, on both lines.
Lines (advanced)line_itemslist
The entry's lines instead of the simple form, e.g. [{"posting_type": "Debit", "account_id": "11", "amount": 100}, {"posting_type": "Credit", "account_id": "44", "amount": 100}]. Keys: posting_type, amount, account_id, description, entity_type and entity_id (a Customer, Vendor or Employee; required on receivable and payable lines), class_id, department_id.
Datetxn_datedate
The transaction's date. Defaults to today.
Numberdoc_numbertext
The document number. Leave blank to let QuickBooks number it, when the company numbers them automatically.
Internal memoprivate_notetext
An internal memo. Customers and vendors never see it.
Adjusting entryadjustmenttrue/false
Mark it as an adjusting entry.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

JournalEntryobject
timetext
Example output
{
  "JournalEntry": {
    "Adjustment": false,
    "DocNumber": "JE-12",
    "Id": "230",
    "Line": [
      {
        "Amount": 100.0,
        "Description": "September insurance",
        "DetailType": "JournalEntryLineDetail",
        "Id": "0",
        "JournalEntryLineDetail": {
          "AccountRef": {
            "name": "Insurance",
            "value": "11"
          },
          "PostingType": "Debit"
        }
      },
      {
        "Amount": 100.0,
        "Description": "September insurance",
        "DetailType": "JournalEntryLineDetail",
        "Id": "1",
        "JournalEntryLineDetail": {
          "AccountRef": {
            "name": "Checking",
            "value": "35"
          },
          "PostingType": "Credit"
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks payment

Record a payment in QuickBooks Online, optionally linked to an invoice.

Inputs

Customercustomer_idtextRequired
The customer. Pick one, or use an Id from 'Create a QuickBooks customer' or 'List QuickBooks customers'.
Amounttotal_amountnumberRequired
The amount received.At least 0.
Invoice IDinvoice_idtext
An invoice the whole amount pays.
Apply to (advanced)applied_tolist
Split the amount across several invoices or credit memos instead, e.g. [{"invoice_id": "130", "amount": 100}, {"invoice_id": "131", "amount": 50}]. Use "txn_type": "CreditMemo" to apply a credit memo. Any amount not applied stays on the customer's account as a credit.
Payment datepayment_datedate
When it was received. Defaults to today.
Payment methodpayment_method_idtext
How it was paid: cash, check, a card...
Reference no.reference_numbertext
The check number or other reference.
Deposit todeposit_to_account_idtext
Where the money went. Defaults to Undeposited Funds, to be deposited later.
Internal memoprivate_notetext
An internal memo. Customers and vendors never see it.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

Paymentobject
timetext
Example output
{
  "Payment": {
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "Id": "140",
    "Line": [
      {
        "Amount": 300.0,
        "LinkedTxn": [
          {
            "TxnId": "130",
            "TxnType": "Invoice"
          }
        ]
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30",
    "UnappliedAmt": 0
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks purchase order

Order goods or services from a vendor. Give one line by product or by category, or several in Line items.

Inputs

Vendorvendor_idtextRequired
The vendor. Pick one, or use an Id from 'Create a QuickBooks vendor' or 'List QuickBooks vendors'.
Product/serviceitem_idtext
A product or service bought by the unit, instead of a category.
Quantityquantitynumber
How many, for a product or service.At least 0.
Unit costunit_pricenumber
The cost of one, for a product or service.
Amountline_amountnumber
The line's total.At least 0.
Categoryexpense_account_idtext
The category: the account the money went to, such as Office Supplies.
Descriptionline_descriptiontext
What the line is for.
Billable to customerbillable_customer_idtext
A customer to pass this cost on to: the line is marked billable to them.
Line items (advanced)line_itemslist
Several lines instead of the single line above, e.g. [{"account_id": "20", "amount": 45, "description": "Paper"}]. Keys: amount, description, account_id (a category), or item_id with quantity and unit_price; customer_id and billable, class_id, tax_code_id. A line in QuickBooks' own shape (with a DetailType) is sent as given.
Datetxn_datedate
The transaction's date. Defaults to today.
Expected datedue_datedate
When you expect it.
Numberdoc_numbertext
The document number. Leave blank to let QuickBooks number it, when the company numbers them automatically.
Email toemail_totext
The vendor's email address for this order.
Message to vendormemotext
A message to the vendor, printed on the order.
Internal memoprivate_notetext
An internal memo. Customers and vendors never see it.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

PurchaseOrderobject
timetext
Example output
{
  "PurchaseOrder": {
    "APAccountRef": {
      "name": "Accounts Payable (A/P)",
      "value": "33"
    },
    "DocNumber": "1005",
    "EmailStatus": "NotSet",
    "Id": "210",
    "Line": [
      {
        "Amount": 90.0,
        "DetailType": "ItemBasedExpenseLineDetail",
        "Id": "1",
        "ItemBasedExpenseLineDetail": {
          "BillableStatus": "NotBillable",
          "ItemRef": {
            "name": "Pump",
            "value": "11"
          },
          "Qty": 3,
          "UnitPrice": 30
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "POEmail": {
      "Address": "orders@bobs.example"
    },
    "POStatus": "Open",
    "SyncToken": "0",
    "TotalAmt": 90.0,
    "TxnDate": "2026-09-30",
    "VendorRef": {
      "name": "Bob's Burger Joint",
      "value": "56"
    }
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks refund receipt

Refund a customer: record money paid back to them out of a bank account.

Inputs

Refund fromrefund_from_account_idtextRequired
The account the refund was paid from.
Customercustomer_idtext
The customer this is for. Pick one, or use an Id from 'List QuickBooks customers'.
Amountline_amountnumber
The line's total. Leave blank to use quantity times unit price.At least 0.
Descriptionline_descriptiontext
What is being refunded.
Product/serviceitem_idtext
The product or service refunded. Leave blank to use the company's 'Services' item.
Quantityquantitynumber
How many.At least 0.
Unit priceunit_pricenumber
The price of one.
Tax codetax_code_idtext
The line's sales tax code.
Line items (advanced)line_itemslist
Several lines instead of the single line above, e.g. [{"item_id": "1", "quantity": 2, "unit_price": 150, "description": "Design"}]. Keys: amount, description, item_id, quantity, unit_price, service_date, tax_code_id, class_id. A line in QuickBooks' own shape (with a DetailType) is sent as given.
Datetxn_datedate
The transaction's date. Defaults to today.
Numberdoc_numbertext
The document number. Leave blank to let QuickBooks number it, when the company numbers them automatically.
Payment methodpayment_method_idtext
How it was paid: cash, check, a card...
Email toemail_totext
The customer's email address for this document (its Bill Email).
Message to customermemotext
A message to the customer, printed on the document.
Internal memoprivate_notetext
An internal memo. Customers and vendors never see it.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

RefundReceiptobject
timetext
Example output
{
  "RefundReceipt": {
    "Balance": 0,
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "DepositToAccountRef": {
      "name": "Checking",
      "value": "35"
    },
    "DocNumber": "1041",
    "Id": "200",
    "Line": [
      {
        "Amount": 300.0,
        "Description": "Garden design",
        "DetailType": "SalesItemLineDetail",
        "Id": "1",
        "LineNum": 1,
        "SalesItemLineDetail": {
          "ItemRef": {
            "name": "Services",
            "value": "1"
          },
          "Qty": 2,
          "UnitPrice": 150
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks sales receipt

Record a sale that was paid for at the time, so no invoice is needed. Give one line from the line fields or several from Line items.

Inputs

Customercustomer_idtext
The customer this is for. Pick one, or use an Id from 'List QuickBooks customers'.
Amountline_amountnumber
The line's total. Leave blank to use quantity times unit price.At least 0.
Descriptionline_descriptiontext
What the line is for, as the customer sees it.
Product/serviceitem_idtext
The product or service sold. Leave blank to use the company's 'Services' item: QuickBooks ignores the amount of a line without an item.
Quantityquantitynumber
How many.At least 0.
Unit priceunit_pricenumber
The price of one.
Service dateservice_datedate
When the work was done.
Tax codetax_code_idtext
The line's sales tax code. In US companies that's TAX or NON.
Line items (advanced)line_itemslist
Several lines instead of the single line above, e.g. [{"item_id": "1", "quantity": 2, "unit_price": 150, "description": "Design"}]. Keys: amount, description, item_id, quantity, unit_price, service_date, tax_code_id, class_id. A line in QuickBooks' own shape (with a DetailType) is sent as given.
Datetxn_datedate
The transaction's date. Defaults to today.
Numberdoc_numbertext
The document number. Leave blank to let QuickBooks number it, when the company numbers them automatically.
Payment methodpayment_method_idtext
How it was paid: cash, check, a card...
Reference no.reference_numbertext
The check number or other payment reference.
Deposit todeposit_to_account_idtext
Where the money went. Defaults to Undeposited Funds, to be deposited later.
Email toemail_totext
The customer's email address for this document (its Bill Email).
Message to customermemotext
A message to the customer, printed on the document.
Internal memoprivate_notetext
An internal memo. Customers and vendors never see it.
Classclass_idtext
The class to track this under, when the company uses class tracking.
Locationdepartment_idtext
The location (QuickBooks' departments) to track this under, when the company uses locations.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

SalesReceiptobject
timetext
Example output
{
  "SalesReceipt": {
    "Balance": 0,
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "DepositToAccountRef": {
      "name": "Undeposited Funds",
      "value": "4"
    },
    "DocNumber": "1039",
    "Id": "180",
    "Line": [
      {
        "Amount": 300.0,
        "Description": "Garden design",
        "DetailType": "SalesItemLineDetail",
        "Id": "1",
        "LineNum": 1,
        "SalesItemLineDetail": {
          "ItemRef": {
            "name": "Services",
            "value": "1"
          },
          "Qty": 2,
          "UnitPrice": 150
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "PaymentMethodRef": {
      "name": "Cash",
      "value": "1"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks time activity

Log time an employee or contractor worked, optionally billable to a customer.

Inputs

HourshoursnumberRequired
Hours worked; add Minutes for the rest.At least 0.
Worker typeworker_typetext
Whether an employee or a vendor (contractor) did the work. Defaults to Employee.One of: Employee, Vendor (Vendor (contractor)). Default: Employee.
Employeeemployee_idtext
The employee, when the worker is an employee.
Vendorvendor_idtext
The contractor, when the worker is a vendor.
Minutesminutesnumber
Minutes worked beyond the hours.At least 0.
Datetxn_datedate
The day the work was done. Defaults to today.
Customercustomer_idtext
The customer this is for. Pick one, or use an Id from 'List QuickBooks customers'.
Serviceitem_idtext
The service performed.
Billablebillabletrue/false
Whether to bill the customer for the time.
Hourly ratehourly_ratenumber
The rate to bill, when billable.
Descriptiondescriptiontext
What was done.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

TimeActivityobject
timetext
Example output
{
  "TimeActivity": {
    "BillableStatus": "Billable",
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "Description": "Site visit",
    "EmployeeRef": {
      "name": "Emily Platt",
      "value": "55"
    },
    "HourlyRate": 75,
    "Hours": 3,
    "Id": "260",
    "ItemRef": {
      "name": "Services",
      "value": "1"
    },
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "Minutes": 30,
    "NameOf": "Employee",
    "SyncToken": "0",
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks transfer

Move money between two of the company's accounts, such as checking to savings.

Inputs

From accountfrom_account_idtextRequired
The account the money leaves.
To accountto_account_idtextRequired
The account the money goes to.
AmountamountnumberRequired
How much to move.At least 0.
Datetxn_datedate
The transaction's date. Defaults to today.
Internal memoprivate_notetext
An internal memo. Customers and vendors never see it.

Outputs

Transferobject
timetext
Example output
{
  "Transfer": {
    "Amount": 500.0,
    "FromAccountRef": {
      "name": "Checking",
      "value": "35"
    },
    "Id": "250",
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "ToAccountRef": {
      "name": "Savings",
      "value": "36"
    },
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks vendor

Add a vendor (supplier) you buy from and pay bills to.

Inputs

Display namedisplay_nametextRequired
The name QuickBooks shows. It must be unique across all customers, vendors and employees, including inactive ones.
First namegiven_nametext
First name.
Last namefamily_nametext
Last name.
Emailemailtext
Email address.
Phonephonetext
Main phone number.
Companycompany_nametext
Company name.
Mobilemobiletext
Mobile number.
Websitewebsitetext
Website address.
Address line 1address_line1text
Billing address, first line.
Address line 2address_line2text
Billing address, second line.
Citycitytext
City.
Statestatetext
State, province or region code, such as CA.
Postal codepostal_codetext
ZIP or postal code.
Countrycountrytext
Country.
Account numberaccount_numbertext
Your account number with this vendor.
Track for 1099is_1099true/false
Whether the vendor gets a 1099 (US).
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

Vendorobject
timetext
Example output
{
  "Vendor": {
    "Active": true,
    "Balance": 0,
    "CompanyName": "Bob's Burger Joint",
    "DisplayName": "Bob's Burger Joint",
    "Id": "56",
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "PrimaryEmailAddr": {
      "Address": "orders@bobs.example"
    },
    "SyncToken": "0",
    "Vendor1099": false
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Create a QuickBooks vendor credit

Record a credit or refund a vendor owes you, which can be applied against their bills.

Inputs

Vendorvendor_idtextRequired
The vendor. Pick one, or use an Id from 'Create a QuickBooks vendor' or 'List QuickBooks vendors'.
Amountline_amountnumber
The line's total.At least 0.
Categoryexpense_account_idtext
The category: the account the money went to, such as Office Supplies.
Descriptionline_descriptiontext
What the line is for.
Product/serviceitem_idtext
A product or service bought by the unit, instead of a category.
Quantityquantitynumber
How many, for a product or service.At least 0.
Unit costunit_pricenumber
The cost of one, for a product or service.
Line items (advanced)line_itemslist
Several lines instead of the single line above, e.g. [{"account_id": "20", "amount": 45, "description": "Paper"}]. Keys: amount, description, account_id (a category), or item_id with quantity and unit_price; customer_id and billable, class_id, tax_code_id. A line in QuickBooks' own shape (with a DetailType) is sent as given.
Datetxn_datedate
The transaction's date. Defaults to today.
Ref no.doc_numbertext
The vendor's credit note number.
Internal memoprivate_notetext
An internal memo. Customers and vendors never see it.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

VendorCreditobject
timetext
Example output
{
  "VendorCredit": {
    "Balance": 45.0,
    "Id": "220",
    "Line": [
      {
        "AccountBasedExpenseLineDetail": {
          "AccountRef": {
            "name": "Office Expenses",
            "value": "15"
          },
          "BillableStatus": "NotBillable"
        },
        "Amount": 45.0,
        "Description": "Printer paper",
        "DetailType": "AccountBasedExpenseLineDetail",
        "Id": "1"
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 45.0,
    "TxnDate": "2026-09-30",
    "VendorRef": {
      "name": "Bob's Burger Joint",
      "value": "56"
    }
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Deactivate a QuickBooks customer

Make a customer inactive, which is how QuickBooks removes one: it disappears from lists and pickers, and its transactions stay on the books.

Inputs

Customercustomer_idtextRequired
The customer. Pick one, or use an Id from 'Create a QuickBooks customer' or 'List QuickBooks customers'.

Outputs

Customerobject
timetext
Example output
{
  "Customer": {
    "Active": true,
    "Balance": 0,
    "CompanyName": "Acme Corp",
    "DisplayName": "Acme Corp",
    "FamilyName": "Doe",
    "GivenName": "Jane",
    "Id": "58",
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "PrimaryEmailAddr": {
      "Address": "ap@acme.example"
    },
    "PrimaryPhone": {
      "FreeFormNumber": "(555) 555-0100"
    },
    "SyncToken": "0"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Deactivate a QuickBooks vendor

Make a vendor inactive, which is how QuickBooks removes one: it disappears from lists and pickers, and its transactions stay on the books.

Inputs

Vendorvendor_idtextRequired
The vendor. Pick one, or use an Id from 'Create a QuickBooks vendor' or 'List QuickBooks vendors'.

Outputs

Vendorobject
timetext
Example output
{
  "Vendor": {
    "Active": true,
    "Balance": 0,
    "CompanyName": "Bob's Burger Joint",
    "DisplayName": "Bob's Burger Joint",
    "Id": "56",
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "PrimaryEmailAddr": {
      "Address": "orders@bobs.example"
    },
    "SyncToken": "0",
    "Vendor1099": false
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Delete a QuickBooks bill

Delete a bill permanently. Payments made against it must be deleted first.

Inputs

Bill IDbill_idtextRequired
The bill's Id, from 'Create a QuickBooks bill' or 'List QuickBooks bills'.

Outputs

Billobject
deletedtrue/false
idtext
timetext
typetext
Example output
{
  "Bill": {
    "Id": "150",
    "domain": "QBO",
    "status": "Deleted"
  },
  "deleted": true,
  "id": "150",
  "time": "2026-09-30T10:15:00.000-07:00",
  "type": "Bill"
}

Delete a QuickBooks estimate

Delete an estimate permanently. An invoice made from it must be deleted first.

Inputs

Estimate IDestimate_idtextRequired
The estimate's Id, from 'Create a QuickBooks estimate' or 'List QuickBooks estimates'.

Outputs

Estimateobject
deletedtrue/false
idtext
timetext
typetext
Example output
{
  "Estimate": {
    "Id": "170",
    "domain": "QBO",
    "status": "Deleted"
  },
  "deleted": true,
  "id": "170",
  "time": "2026-09-30T10:15:00.000-07:00",
  "type": "Estimate"
}

Delete a QuickBooks invoice

Delete an invoice permanently. Payments applied to it must be removed first.

Inputs

Invoice IDinvoice_idtextRequired
The invoice's Id, from 'Create a QuickBooks invoice' or 'List QuickBooks invoices'.

Outputs

Invoiceobject
deletedtrue/false
idtext
timetext
typetext
Example output
{
  "Invoice": {
    "Id": "130",
    "domain": "QBO",
    "status": "Deleted"
  },
  "deleted": true,
  "id": "130",
  "time": "2026-09-30T10:15:00.000-07:00",
  "type": "Invoice"
}

Delete a QuickBooks transaction

Delete any transaction, attachment or note permanently: a payment, expense, journal entry, deposit and so on. Transactions linked to others must be unlinked first. Customers, vendors, items and accounts can't be deleted, only deactivated.

Inputs

Typetransaction_typetextRequired
The kind of record to delete.One of: Invoice, Estimate, SalesReceipt (Sales receipt), CreditMemo (Credit memo), RefundReceipt (Refund receipt), Payment, Bill, BillPayment (Bill payment), Purchase (Expense), PurchaseOrder (Purchase order), and 6 more.
IDtransaction_idtextRequired
Its Id.

Outputs

The record deleted. QuickBooks' own reply also holds an Id and Deleted status under the record type's name.

deletedtrue/false
idtext
timetext
typetext
Example output
{
  "deleted": true,
  "id": "160",
  "time": "2026-09-30T10:15:00.000-07:00",
  "type": "Purchase"
}

Download a QuickBooks attachment

Save a file attached in QuickBooks so later steps can use it.

Inputs

Attachment IDattachment_idtextRequired
The attachment's Id, from 'List QuickBooks attachments' or 'Attach a file in QuickBooks'.

Outputs

Attachableobject
content_typetext
document_reftext
documentslist
filenametext
size_bytesnumber
urltext
Example output
{
  "Attachable": {
    "AttachableRef": [
      {
        "EntityRef": {
          "type": "Invoice",
          "value": "130"
        },
        "IncludeOnSend": false
      }
    ],
    "ContentType": "application/pdf",
    "FileName": "receipt.pdf",
    "Id": "5000000000000123456",
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "Size": 48213,
    "SyncToken": "0",
    "TempDownloadUri": "https://intuit-qbo-prod-30.s3.amazonaws.com/receipt.pdf"
  },
  "content_type": "application/pdf",
  "document_ref": "doc_7c6f7b1c2d3e4a5b8c9d0e1f2a3b4c5d",
  "documents": [
    {
      "content_type": "application/pdf",
      "document_ref": "doc_7c6f7b1c2d3e4a5b8c9d0e1f2a3b4c5d",
      "filename": "receipt.pdf",
      "size_bytes": 48213,
      "url": "/actions/core/serve-document/doc_7c6f7b1c2d3e4a5b8c9d0e1f2a3b4c5d"
    }
  ],
  "filename": "receipt.pdf",
  "size_bytes": 48213,
  "url": "/actions/core/serve-document/doc_7c6f7b1c2d3e4a5b8c9d0e1f2a3b4c5d"
}

Get a QuickBooks accounts payable aging report

What the company owes vendors, bucketed by how overdue it is: one row per vendor, or per open bill when detailed.

Inputs

As ofreport_datedate
The day to age balances as of. Defaults to today.
Detaileddetailedtrue/false
List each open transaction instead of one total per name.Default: false.
Days per periodaging_period_daysnumber
Detailed report only: days per aging bucket. Defaults to 30.At least 1.
Number of periodsnumber_of_periodsnumber
Detailed report only: how many aging buckets. Defaults to 4.At least 1.
Vendorvendor_idtext
Only this vendor's transactions.
Include raw reportinclude_rawtrue/false
Also return QuickBooks' original nested report under 'report'.Default: false.

Outputs

columnslist
currencytext
end_periodtext
generated_attext
no_datatrue/false
reportobject
QuickBooks' original report, when include_raw is set.
report_basistext
report_nametext
rowslist
start_periodtext
summarize_columns_bytext
totalsobject
Each section's total by its group, e.g. NetIncome.
Example output
{
  "columns": [
    "Vendor",
    "Current",
    "1 - 30",
    "31 - 60",
    "61 - 90",
    "91 and over",
    "Total"
  ],
  "currency": "USD",
  "end_period": "2026-09-30",
  "generated_at": "2026-09-30T10:15:00-07:00",
  "no_data": false,
  "report_name": "AgedPayables",
  "rows": [
    {
      "amount": 45.0,
      "depth": 0,
      "id": "56",
      "kind": "data",
      "label": "Bob's Burger Joint",
      "values": {
        "1 - 30": null,
        "31 - 60": null,
        "61 - 90": null,
        "91 and over": null,
        "Current": 45.0,
        "Total": 45.0
      }
    }
  ],
  "start_period": "2026-09-30",
  "totals": {
    "GrandTotal": 45.0
  }
}

Get a QuickBooks accounts receivable aging report

What customers owe, bucketed by how overdue it is: one row per customer, or per open invoice when detailed.

Inputs

As ofreport_datedate
The day to age balances as of. Defaults to today.
Detaileddetailedtrue/false
List each open transaction instead of one total per name.Default: false.
Days per periodaging_period_daysnumber
Detailed report only: days per aging bucket. Defaults to 30.At least 1.
Number of periodsnumber_of_periodsnumber
Detailed report only: how many aging buckets. Defaults to 4.At least 1.
Customercustomer_idtext
Only this customer's transactions.
Include raw reportinclude_rawtrue/false
Also return QuickBooks' original nested report under 'report'.Default: false.

Outputs

columnslist
currencytext
end_periodtext
generated_attext
no_datatrue/false
reportobject
QuickBooks' original report, when include_raw is set.
report_basistext
report_nametext
rowslist
start_periodtext
summarize_columns_bytext
totalsobject
Each section's total by its group, e.g. NetIncome.
Example output
{
  "columns": [
    "Customer",
    "Current",
    "1 - 30",
    "31 - 60",
    "61 - 90",
    "91 and over",
    "Total"
  ],
  "currency": "USD",
  "end_period": "2026-09-30",
  "generated_at": "2026-09-30T10:15:00-07:00",
  "no_data": false,
  "report_name": "AgedReceivables",
  "rows": [
    {
      "amount": 300.0,
      "depth": 0,
      "id": "58",
      "kind": "data",
      "label": "Acme Corp",
      "values": {
        "1 - 30": null,
        "31 - 60": null,
        "61 - 90": null,
        "91 and over": null,
        "Current": 300.0,
        "Total": 300.0
      }
    }
  ],
  "start_period": "2026-09-30",
  "totals": {
    "GrandTotal": 300.0
  }
}

Get a QuickBooks balance sheet

Assets, liabilities and equity as of the end date, as rows and totals by section.

Inputs

Start datestart_datedate
The first day to report on.
End dateend_datedate
The last day to report on.
Perioddate_macrotext
A named period instead of start and end dates. Without either, QuickBooks reports this fiscal year to date.One of: Today, Yesterday, This Week, Last Week, This Week-to-date, Last Week-to-date, Next Week, Next 4 Weeks, This Month, Last Month, and 13 more.
Accounting methodaccounting_methodtext
Cash or accrual basis. Defaults to the company's own setting.One of: Accrual, Cash.
Columnssummarize_bytext
Split the amounts into columns by month, customer and so on. Defaults to a single Total column.One of: Total (Total only), Month (Months), Week (Weeks), Days, Quarter (Quarters), Year (Years), Customers, Vendors, Classes, Departments (Locations), Employees, ProductsAndServices (Products and services).
Customercustomer_idtext
Only this customer's transactions.
Classclass_idtext
Only amounts tracked under this class.
Locationdepartment_idtext
Only amounts tracked under this location.
Include raw reportinclude_rawtrue/false
Also return QuickBooks' original nested report under 'report'.Default: false.

Outputs

columnslist
currencytext
end_periodtext
generated_attext
no_datatrue/false
reportobject
QuickBooks' original report, when include_raw is set.
report_basistext
report_nametext
rowslist
start_periodtext
summarize_columns_bytext
totalsobject
Each section's total by its group, e.g. NetIncome.
Example output
{
  "columns": [
    "Account",
    "Total"
  ],
  "currency": "USD",
  "end_period": "2026-09-30",
  "generated_at": "2026-09-30T10:15:00-07:00",
  "no_data": false,
  "report_basis": "Accrual",
  "report_name": "BalanceSheet",
  "rows": [
    {
      "amount": 24742.44,
      "depth": 0,
      "group": "TotalAssets",
      "kind": "total",
      "label": "Total Assets",
      "values": {
        "Total": 24742.44
      }
    },
    {
      "amount": 24742.44,
      "depth": 0,
      "group": "TotalLiabilitiesAndEquity",
      "kind": "total",
      "label": "Total Liabilities and Equity",
      "values": {
        "Total": 24742.44
      }
    }
  ],
  "start_period": "2026-01-01",
  "summarize_columns_by": "Total",
  "totals": {
    "TotalAssets": 24742.44,
    "TotalLiabilitiesAndEquity": 24742.44
  }
}

Get a QuickBooks bill

Retrieve a single bill by ID, including its open balance.

Inputs

Bill IDbill_idtextRequired
The bill's Id, from 'Create a QuickBooks bill' or 'List QuickBooks bills'.

Outputs

Billobject
timetext
Example output
{
  "Bill": {
    "APAccountRef": {
      "name": "Accounts Payable (A/P)",
      "value": "33"
    },
    "Balance": 45.0,
    "DocNumber": "INV-8812",
    "DueDate": "2026-10-30",
    "Id": "150",
    "Line": [
      {
        "AccountBasedExpenseLineDetail": {
          "AccountRef": {
            "name": "Office Expenses",
            "value": "15"
          },
          "BillableStatus": "NotBillable"
        },
        "Amount": 45.0,
        "Description": "Printer paper",
        "DetailType": "AccountBasedExpenseLineDetail",
        "Id": "1"
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 45.0,
    "TxnDate": "2026-09-30",
    "VendorRef": {
      "name": "Bob's Burger Joint",
      "value": "56"
    }
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Get a QuickBooks cash flow statement

Cash in and out over a period by operating, investing and financing activity, as rows and totals by section.

Inputs

Start datestart_datedate
The first day to report on.
End dateend_datedate
The last day to report on.
Perioddate_macrotext
A named period instead of start and end dates. Without either, QuickBooks reports this fiscal year to date.One of: Today, Yesterday, This Week, Last Week, This Week-to-date, Last Week-to-date, Next Week, Next 4 Weeks, This Month, Last Month, and 13 more.
Columnssummarize_bytext
Split the amounts into columns by month, customer and so on. Defaults to a single Total column.One of: Total (Total only), Month (Months), Week (Weeks), Days, Quarter (Quarters), Year (Years), Customers, Vendors, Classes, Departments (Locations), Employees, ProductsAndServices (Products and services).
Customercustomer_idtext
Only this customer's transactions.
Vendorvendor_idtext
Only this vendor's transactions.
Classclass_idtext
Only amounts tracked under this class.
Locationdepartment_idtext
Only amounts tracked under this location.
Include raw reportinclude_rawtrue/false
Also return QuickBooks' original nested report under 'report'.Default: false.

Outputs

columnslist
currencytext
end_periodtext
generated_attext
no_datatrue/false
reportobject
QuickBooks' original report, when include_raw is set.
report_basistext
report_nametext
rowslist
start_periodtext
summarize_columns_bytext
totalsobject
Each section's total by its group, e.g. NetIncome.
Example output
{
  "columns": [
    "Account",
    "Total"
  ],
  "currency": "USD",
  "end_period": "2026-09-30",
  "generated_at": "2026-09-30T10:15:00-07:00",
  "no_data": false,
  "report_name": "CashFlow",
  "rows": [
    {
      "amount": 5000.0,
      "depth": 0,
      "group": "CashIncrease",
      "kind": "total",
      "label": "Net cash increase for period",
      "values": {
        "Total": 5000.0
      }
    }
  ],
  "start_period": "2026-09-01",
  "summarize_columns_by": "Total",
  "totals": {
    "CashIncrease": 5000.0
  }
}

Get a QuickBooks customer

Retrieve a single customer by ID from QuickBooks Online.

Inputs

Customercustomer_idtextRequired
The customer. Pick one, or use an Id from 'Create a QuickBooks customer' or 'List QuickBooks customers'.

Outputs

Customerobject
timetext
Example output
{
  "Customer": {
    "Active": true,
    "Balance": 0,
    "CompanyName": "Acme Corp",
    "DisplayName": "Acme Corp",
    "FamilyName": "Doe",
    "GivenName": "Jane",
    "Id": "58",
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "PrimaryEmailAddr": {
      "Address": "ap@acme.example"
    },
    "PrimaryPhone": {
      "FreeFormNumber": "(555) 555-0100"
    },
    "SyncToken": "0"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Get a QuickBooks estimate

Retrieve a single estimate by ID, including its status.

Inputs

Estimate IDestimate_idtextRequired
The estimate's Id, from 'Create a QuickBooks estimate' or 'List QuickBooks estimates'.

Outputs

Estimateobject
timetext
Example output
{
  "Estimate": {
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "DocNumber": "1038",
    "EmailStatus": "NotSet",
    "ExpirationDate": "2026-10-30",
    "Id": "170",
    "Line": [
      {
        "Amount": 300.0,
        "Description": "Garden design",
        "DetailType": "SalesItemLineDetail",
        "Id": "1",
        "LineNum": 1,
        "SalesItemLineDetail": {
          "ItemRef": {
            "name": "Services",
            "value": "1"
          },
          "Qty": 2,
          "UnitPrice": 150
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30",
    "TxnStatus": "Pending"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Get a QuickBooks estimate PDF

Save an estimate as the PDF a customer would receive. Later steps can attach or email the file.

Inputs

Estimate IDestimate_idtextRequired
The estimate's Id, from 'Create a QuickBooks estimate' or 'List QuickBooks estimates'.

Outputs

content_typetext
document_reftext
documentslist
entitytext
filenametext
idtext
size_bytesnumber
urltext
Example output
{
  "content_type": "application/pdf",
  "document_ref": "doc_5a6f7b1c2d3e4a5b8c9d0e1f2a3b4c5d",
  "documents": [
    {
      "content_type": "application/pdf",
      "document_ref": "doc_5a6f7b1c2d3e4a5b8c9d0e1f2a3b4c5d",
      "filename": "estimate-170.pdf",
      "size_bytes": 41120,
      "url": "/actions/core/serve-document/doc_5a6f7b1c2d3e4a5b8c9d0e1f2a3b4c5d"
    }
  ],
  "entity": "Estimate",
  "filename": "estimate-170.pdf",
  "id": "170",
  "size_bytes": 41120,
  "url": "/actions/core/serve-document/doc_5a6f7b1c2d3e4a5b8c9d0e1f2a3b4c5d"
}

Get a QuickBooks invoice

Retrieve a single invoice by ID from QuickBooks Online.

Inputs

Invoice IDinvoice_idtextRequired
The invoice's Id, from 'Create a QuickBooks invoice' or 'List QuickBooks invoices'.

Outputs

Invoiceobject
timetext
Example output
{
  "Invoice": {
    "Balance": 300.0,
    "BillEmail": {
      "Address": "ap@acme.example"
    },
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "DocNumber": "1037",
    "DueDate": "2026-10-30",
    "EmailStatus": "NotSet",
    "Id": "130",
    "Line": [
      {
        "Amount": 300.0,
        "Description": "Garden design",
        "DetailType": "SalesItemLineDetail",
        "Id": "1",
        "LineNum": 1,
        "SalesItemLineDetail": {
          "ItemRef": {
            "name": "Services",
            "value": "1"
          },
          "Qty": 2,
          "UnitPrice": 150
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Get a QuickBooks invoice PDF

Save an invoice as the PDF a customer would receive, styled by the company's invoice template. Later steps can attach or email the file.

Inputs

Invoice IDinvoice_idtextRequired
The invoice's Id, from 'Create a QuickBooks invoice' or 'List QuickBooks invoices'.

Outputs

content_typetext
document_reftext
documentslist
entitytext
filenametext
idtext
size_bytesnumber
urltext
Example output
{
  "content_type": "application/pdf",
  "document_ref": "doc_4f6f7b1c2d3e4a5b8c9d0e1f2a3b4c5d",
  "documents": [
    {
      "content_type": "application/pdf",
      "document_ref": "doc_4f6f7b1c2d3e4a5b8c9d0e1f2a3b4c5d",
      "filename": "invoice-130.pdf",
      "size_bytes": 48213,
      "url": "/actions/core/serve-document/doc_4f6f7b1c2d3e4a5b8c9d0e1f2a3b4c5d"
    }
  ],
  "entity": "Invoice",
  "filename": "invoice-130.pdf",
  "id": "130",
  "size_bytes": 48213,
  "url": "/actions/core/serve-document/doc_4f6f7b1c2d3e4a5b8c9d0e1f2a3b4c5d"
}

Get a QuickBooks item

Retrieve a single product or service by ID, including its price, accounts and, for inventory, quantity on hand.

Inputs

Product/serviceitem_idtextRequired
The product or service. Pick one, or use an Id from 'List QuickBooks items'.

Outputs

Itemobject
timetext
Example output
{
  "Item": {
    "Active": true,
    "FullyQualifiedName": "Services",
    "Id": "1",
    "IncomeAccountRef": {
      "name": "Services",
      "value": "1"
    },
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "Name": "Services",
    "SyncToken": "0",
    "Taxable": false,
    "Type": "Service",
    "UnitPrice": 150
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Get a QuickBooks payment

Retrieve a single customer payment by ID, including the invoices it paid.

Inputs

Payment IDpayment_idtextRequired
The payment's Id, from 'Create a QuickBooks payment' or 'List QuickBooks payments'.

Outputs

Paymentobject
timetext
Example output
{
  "Payment": {
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "Id": "140",
    "Line": [
      {
        "Amount": 300.0,
        "LinkedTxn": [
          {
            "TxnId": "130",
            "TxnType": "Invoice"
          }
        ]
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30",
    "UnappliedAmt": 0
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Get a QuickBooks profit and loss report

Income, expenses and net income for a period, as rows a workflow can loop over and totals by section (Income, Expenses, NetIncome...).

Inputs

Start datestart_datedate
The first day to report on.
End dateend_datedate
The last day to report on.
Perioddate_macrotext
A named period instead of start and end dates. Without either, QuickBooks reports this fiscal year to date.One of: Today, Yesterday, This Week, Last Week, This Week-to-date, Last Week-to-date, Next Week, Next 4 Weeks, This Month, Last Month, and 13 more.
Accounting methodaccounting_methodtext
Cash or accrual basis. Defaults to the company's own setting.One of: Accrual, Cash.
Columnssummarize_bytext
Split the amounts into columns by month, customer and so on. Defaults to a single Total column.One of: Total (Total only), Month (Months), Week (Weeks), Days, Quarter (Quarters), Year (Years), Customers, Vendors, Classes, Departments (Locations), Employees, ProductsAndServices (Products and services).
Customercustomer_idtext
Only this customer's transactions.
Classclass_idtext
Only amounts tracked under this class.
Locationdepartment_idtext
Only amounts tracked under this location.
Include raw reportinclude_rawtrue/false
Also return QuickBooks' original nested report under 'report'.Default: false.

Outputs

columnslist
currencytext
end_periodtext
generated_attext
no_datatrue/false
reportobject
QuickBooks' original report, when include_raw is set.
report_basistext
report_nametext
rowslist
start_periodtext
summarize_columns_bytext
totalsobject
Each section's total by its group, e.g. NetIncome.
Example output
{
  "columns": [
    "Account",
    "Total"
  ],
  "currency": "USD",
  "end_period": "2026-09-30",
  "generated_at": "2026-09-30T10:15:00-07:00",
  "no_data": false,
  "report_basis": "Accrual",
  "report_name": "ProfitAndLoss",
  "rows": [
    {
      "amount": null,
      "depth": 0,
      "group": "Income",
      "kind": "header",
      "label": "Income",
      "values": {
        "Total": null
      }
    },
    {
      "amount": 2250.0,
      "depth": 1,
      "id": "82",
      "kind": "data",
      "label": "Design income",
      "values": {
        "Total": 2250.0
      }
    },
    {
      "amount": 2250.0,
      "depth": 0,
      "group": "Income",
      "kind": "total",
      "label": "Total Income",
      "values": {
        "Total": 2250.0
      }
    },
    {
      "amount": 1650.0,
      "depth": 0,
      "group": "NetIncome",
      "kind": "total",
      "label": "Net Income",
      "values": {
        "Total": 1650.0
      }
    }
  ],
  "start_period": "2026-09-01",
  "summarize_columns_by": "Total",
  "totals": {
    "Income": 2250.0,
    "NetIncome": 1650.0
  }
}

Get a QuickBooks purchase order

Retrieve a single purchase order by ID, including whether it's still open.

Inputs

Purchase order IDpurchase_order_idtextRequired
The purchase order's Id, from 'Create a QuickBooks purchase order' or 'List QuickBooks purchase orders'.

Outputs

PurchaseOrderobject
timetext
Example output
{
  "PurchaseOrder": {
    "APAccountRef": {
      "name": "Accounts Payable (A/P)",
      "value": "33"
    },
    "DocNumber": "1005",
    "EmailStatus": "NotSet",
    "Id": "210",
    "Line": [
      {
        "Amount": 90.0,
        "DetailType": "ItemBasedExpenseLineDetail",
        "Id": "1",
        "ItemBasedExpenseLineDetail": {
          "BillableStatus": "NotBillable",
          "ItemRef": {
            "name": "Pump",
            "value": "11"
          },
          "Qty": 3,
          "UnitPrice": 30
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "POEmail": {
      "Address": "orders@bobs.example"
    },
    "POStatus": "Open",
    "SyncToken": "0",
    "TotalAmt": 90.0,
    "TxnDate": "2026-09-30",
    "VendorRef": {
      "name": "Bob's Burger Joint",
      "value": "56"
    }
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Get a QuickBooks sales receipt

Retrieve a single sales receipt by ID.

Inputs

Sales receipt IDsales_receipt_idtextRequired
The sales receipt's Id, from 'Create a QuickBooks sales receipt' or 'List QuickBooks sales receipts'.

Outputs

SalesReceiptobject
timetext
Example output
{
  "SalesReceipt": {
    "Balance": 0,
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "DepositToAccountRef": {
      "name": "Undeposited Funds",
      "value": "4"
    },
    "DocNumber": "1039",
    "Id": "180",
    "Line": [
      {
        "Amount": 300.0,
        "Description": "Garden design",
        "DetailType": "SalesItemLineDetail",
        "Id": "1",
        "LineNum": 1,
        "SalesItemLineDetail": {
          "ItemRef": {
            "name": "Services",
            "value": "1"
          },
          "Qty": 2,
          "UnitPrice": 150
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "PaymentMethodRef": {
      "name": "Cash",
      "value": "1"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Get a QuickBooks sales receipt PDF

Save a sales receipt as the PDF a customer would receive. Later steps can attach or email the file.

Inputs

Sales receipt IDsales_receipt_idtextRequired
The sales receipt's Id, from 'Create a QuickBooks sales receipt' or 'List QuickBooks sales receipts'.

Outputs

content_typetext
document_reftext
documentslist
entitytext
filenametext
idtext
size_bytesnumber
urltext
Example output
{
  "content_type": "application/pdf",
  "document_ref": "doc_6b6f7b1c2d3e4a5b8c9d0e1f2a3b4c5d",
  "documents": [
    {
      "content_type": "application/pdf",
      "document_ref": "doc_6b6f7b1c2d3e4a5b8c9d0e1f2a3b4c5d",
      "filename": "sales-receipt-180.pdf",
      "size_bytes": 39876,
      "url": "/actions/core/serve-document/doc_6b6f7b1c2d3e4a5b8c9d0e1f2a3b4c5d"
    }
  ],
  "entity": "SalesReceipt",
  "filename": "sales-receipt-180.pdf",
  "id": "180",
  "size_bytes": 39876,
  "url": "/actions/core/serve-document/doc_6b6f7b1c2d3e4a5b8c9d0e1f2a3b4c5d"
}

Get a QuickBooks vendor

Retrieve a single vendor (supplier) by ID.

Inputs

Vendorvendor_idtextRequired
The vendor. Pick one, or use an Id from 'Create a QuickBooks vendor' or 'List QuickBooks vendors'.

Outputs

Vendorobject
timetext
Example output
{
  "Vendor": {
    "Active": true,
    "Balance": 0,
    "CompanyName": "Bob's Burger Joint",
    "DisplayName": "Bob's Burger Joint",
    "Id": "56",
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "PrimaryEmailAddr": {
      "Address": "orders@bobs.example"
    },
    "SyncToken": "0",
    "Vendor1099": false
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Get QuickBooks company info

Read the connected company's name, legal name, address, contact details, country and fiscal year start.

Inputs

None.

Outputs

CompanyInfoobject
timetext
Example output
{
  "CompanyInfo": {
    "CompanyAddr": {
      "City": "San Pablo",
      "CountrySubDivisionCode": "CA",
      "Line1": "123 Sierra Way",
      "PostalCode": "87999"
    },
    "CompanyName": "Craig's Design and Landscaping Services",
    "Country": "US",
    "Email": {
      "Address": "noreply@quickbooks.com"
    },
    "FiscalYearStartMonth": "January",
    "Id": "1",
    "LegalName": "Craig's Design and Landscaping Services",
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "4"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

List QuickBooks accounts

List accounts from the chart of accounts, optionally narrowed by type, classification or name. Returns one page; use start_position to get the next.

Inputs

Limitlimitnumber
How many records to return, 1-1000. Defaults to 100.From 1 to 1000. Default: 100.
Start positionstart_positionnumber
Which matching record to start from, counting from 1. For the next page, use the previous result's next_start_position.At least 1. Default: 1.
Account typeaccount_typetext
Only accounts of this type.One of: Bank, Other Current Asset, Fixed Asset, Other Asset, Accounts Receivable, Equity, Expense, Other Expense, Cost of Goods Sold, Accounts Payable, and 5 more.
Classificationclassificationtext
Only accounts in this group: Asset, Liability, Equity, Revenue or Expense.One of: Asset, Liability, Equity, Revenue, Expense.
Name containsname_containstext
Only records whose name contains this text (not case-sensitive).
Include inactiveinclude_inactivetrue/false
Also return records that were made inactive. By default only active ones are listed.Default: false.
Changed sinceupdated_sincedate and time
Only records created or changed at or after this moment.

Outputs

QueryResponseobject
countnumber
How many records this page holds.
has_moretrue/false
True when the page came back full, so another may follow. It is also true when the last page happens to be exactly full; the next is then empty.
next_start_positionnumber
The start_position for the next page, or null on the last page.
start_positionnumber
The position of this page's first record, counting from 1.
timetext
Example output
{
  "QueryResponse": {
    "Account": [
      {
        "AccountSubType": "Checking",
        "AccountType": "Bank",
        "Active": true,
        "Classification": "Asset",
        "CurrencyRef": {
          "name": "United States Dollar",
          "value": "USD"
        },
        "CurrentBalance": 1201.0,
        "FullyQualifiedName": "Checking",
        "Id": "35",
        "MetaData": {
          "CreateTime": "2026-09-30T10:15:00-07:00",
          "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
        },
        "Name": "Checking",
        "SyncToken": "0"
      }
    ],
    "maxResults": 1,
    "startPosition": 1
  },
  "count": 1,
  "has_more": false,
  "next_start_position": null,
  "start_position": 1,
  "time": "2026-09-30T10:15:00.000-07:00"
}

List QuickBooks attachments

List the files and notes attached to one transaction or contact.

Inputs

Record typeentity_typetextRequired
The kind of record.One of: Invoice, Estimate, SalesReceipt (Sales receipt), CreditMemo (Credit memo), RefundReceipt (Refund receipt), Payment, Bill, BillPayment (Bill payment), Purchase (Expense), PurchaseOrder (Purchase order), and 9 more.
Record IDentity_idtextRequired
That record's Id, such as an invoice Id.
Limitlimitnumber
How many records to return, 1-1000. Defaults to 100.From 1 to 1000. Default: 100.
Start positionstart_positionnumber
Which matching record to start from, counting from 1. For the next page, use the previous result's next_start_position.At least 1. Default: 1.

Outputs

QueryResponseobject
countnumber
How many records this page holds.
has_moretrue/false
True when the page came back full, so another may follow. It is also true when the last page happens to be exactly full; the next is then empty.
next_start_positionnumber
The start_position for the next page, or null on the last page.
start_positionnumber
The position of this page's first record, counting from 1.
timetext
Example output
{
  "QueryResponse": {
    "Attachable": [
      {
        "AttachableRef": [
          {
            "EntityRef": {
              "type": "Invoice",
              "value": "130"
            },
            "IncludeOnSend": false
          }
        ],
        "ContentType": "application/pdf",
        "FileName": "receipt.pdf",
        "Id": "5000000000000123456",
        "MetaData": {
          "CreateTime": "2026-09-30T10:15:00-07:00",
          "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
        },
        "Size": 48213,
        "SyncToken": "0",
        "TempDownloadUri": "https://intuit-qbo-prod-30.s3.amazonaws.com/receipt.pdf"
      }
    ],
    "maxResults": 1,
    "startPosition": 1
  },
  "count": 1,
  "has_more": false,
  "next_start_position": null,
  "start_position": 1,
  "time": "2026-09-30T10:15:00.000-07:00"
}

List QuickBooks bills

List bills from vendors, optionally narrowed by vendor, payment status or date. Returns one page; use start_position to get the next.

Inputs

Limitlimitnumber
How many records to return, 1-1000. Defaults to 100.From 1 to 1000. Default: 100.
Start positionstart_positionnumber
Which matching record to start from, counting from 1. For the next page, use the previous result's next_start_position.At least 1. Default: 1.
Vendorvendor_idtext
Only this vendor's transactions.
Statusstatustext
Only unpaid (open balance), paid, or overdue (open and past due) bills.One of: any, unpaid, paid, overdue.
From datedate_fromdate
Only transactions dated on or after this day.
To datedate_todate
Only transactions dated on or before this day.
Changed sinceupdated_sincedate and time
Only records created or changed at or after this moment.

Outputs

QueryResponseobject
countnumber
How many records this page holds.
has_moretrue/false
True when the page came back full, so another may follow. It is also true when the last page happens to be exactly full; the next is then empty.
next_start_positionnumber
The start_position for the next page, or null on the last page.
start_positionnumber
The position of this page's first record, counting from 1.
timetext
Example output
{
  "QueryResponse": {
    "Bill": [
      {
        "APAccountRef": {
          "name": "Accounts Payable (A/P)",
          "value": "33"
        },
        "Balance": 45.0,
        "DocNumber": "INV-8812",
        "DueDate": "2026-10-30",
        "Id": "150",
        "Line": [
          {
            "AccountBasedExpenseLineDetail": {
              "AccountRef": {
                "name": "Office Expenses",
                "value": "15"
              },
              "BillableStatus": "NotBillable"
            },
            "Amount": 45.0,
            "Description": "Printer paper",
            "DetailType": "AccountBasedExpenseLineDetail",
            "Id": "1"
          }
        ],
        "MetaData": {
          "CreateTime": "2026-09-30T10:15:00-07:00",
          "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
        },
        "SyncToken": "0",
        "TotalAmt": 45.0,
        "TxnDate": "2026-09-30",
        "VendorRef": {
          "name": "Bob's Burger Joint",
          "value": "56"
        }
      }
    ],
    "maxResults": 1,
    "startPosition": 1
  },
  "count": 1,
  "has_more": false,
  "next_start_position": null,
  "start_position": 1,
  "time": "2026-09-30T10:15:00.000-07:00"
}

List QuickBooks changes

Everything of the chosen kinds created, changed or deleted since a moment in the last 30 days, in one call. Deleted records come back with status 'Deleted' and only their Id. Up to 1,000 records per kind.

Inputs

Record typesentitiestextRequired
The kinds of record to report on.One or more of: Account, Bill, BillPayment (Bill payment), Class, CreditMemo (Credit memo), Customer, Department (Location), Deposit, Employee, Estimate, and 13 more.
Changed sincechanged_sincedate and timeRequired
The moment to report changes since, within the last 30 days.

Outputs

changed_sincetext
changesobject
The changed records of each chosen type, by type name, e.g. changes.Invoice. A deleted record has status Deleted.
countsobject
How many records changed, by type name.
timetext
Example output
{
  "changed_since": "2026-09-29T00:00:00Z",
  "changes": {
    "Customer": [
      {
        "Id": "59",
        "domain": "QBO",
        "status": "Deleted"
      }
    ],
    "Invoice": [
      {
        "Balance": 300.0,
        "BillEmail": {
          "Address": "ap@acme.example"
        },
        "CustomerRef": {
          "name": "Acme Corp",
          "value": "58"
        },
        "DocNumber": "1037",
        "DueDate": "2026-10-30",
        "EmailStatus": "NotSet",
        "Id": "130",
        "Line": [
          {
            "Amount": 300.0,
            "Description": "Garden design",
            "DetailType": "SalesItemLineDetail",
            "Id": "1",
            "LineNum": 1,
            "SalesItemLineDetail": {
              "ItemRef": {
                "name": "Services",
                "value": "1"
              },
              "Qty": 2,
              "UnitPrice": 150
            }
          }
        ],
        "MetaData": {
          "CreateTime": "2026-09-30T10:15:00-07:00",
          "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
        },
        "SyncToken": "0",
        "TotalAmt": 300.0,
        "TxnDate": "2026-09-30"
      }
    ]
  },
  "counts": {
    "Customer": 1,
    "Invoice": 1
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

List QuickBooks credit memos

List credit memos, optionally narrowed by customer or date. Returns one page; use start_position to get the next.

Inputs

Limitlimitnumber
How many records to return, 1-1000. Defaults to 100.From 1 to 1000. Default: 100.
Start positionstart_positionnumber
Which matching record to start from, counting from 1. For the next page, use the previous result's next_start_position.At least 1. Default: 1.
Customercustomer_idtext
Only this customer's transactions.
From datedate_fromdate
Only transactions dated on or after this day.
To datedate_todate
Only transactions dated on or before this day.
Changed sinceupdated_sincedate and time
Only records created or changed at or after this moment.

Outputs

QueryResponseobject
countnumber
How many records this page holds.
has_moretrue/false
True when the page came back full, so another may follow. It is also true when the last page happens to be exactly full; the next is then empty.
next_start_positionnumber
The start_position for the next page, or null on the last page.
start_positionnumber
The position of this page's first record, counting from 1.
timetext
Example output
{
  "QueryResponse": {
    "CreditMemo": [
      {
        "Balance": 300.0,
        "CustomerRef": {
          "name": "Acme Corp",
          "value": "58"
        },
        "DocNumber": "1040",
        "Id": "190",
        "Line": [
          {
            "Amount": 300.0,
            "Description": "Garden design",
            "DetailType": "SalesItemLineDetail",
            "Id": "1",
            "LineNum": 1,
            "SalesItemLineDetail": {
              "ItemRef": {
                "name": "Services",
                "value": "1"
              },
              "Qty": 2,
              "UnitPrice": 150
            }
          }
        ],
        "MetaData": {
          "CreateTime": "2026-09-30T10:15:00-07:00",
          "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
        },
        "RemainingCredit": 300.0,
        "SyncToken": "0",
        "TotalAmt": 300.0,
        "TxnDate": "2026-09-30"
      }
    ],
    "maxResults": 1,
    "startPosition": 1
  },
  "count": 1,
  "has_more": false,
  "next_start_position": null,
  "start_position": 1,
  "time": "2026-09-30T10:15:00.000-07:00"
}

List QuickBooks customers

List customers, optionally narrowed by name, email or when they last changed. Returns one page; use start_position to get the next.

Inputs

Limitlimitnumber
How many records to return, 1-1000. Defaults to 100.From 1 to 1000. Default: 100.
Start positionstart_positionnumber
Which matching record to start from, counting from 1. For the next page, use the previous result's next_start_position.At least 1. Default: 1.
Name containsname_containstext
Only records whose name contains this text (not case-sensitive).
Emailemailtext
Only the customer with exactly this email address.
Include inactiveinclude_inactivetrue/false
Also return records that were made inactive. By default only active ones are listed.Default: false.
Changed sinceupdated_sincedate and time
Only records created or changed at or after this moment.

Outputs

QueryResponseobject
countnumber
How many records this page holds.
has_moretrue/false
True when the page came back full, so another may follow. It is also true when the last page happens to be exactly full; the next is then empty.
next_start_positionnumber
The start_position for the next page, or null on the last page.
start_positionnumber
The position of this page's first record, counting from 1.
timetext
Example output
{
  "QueryResponse": {
    "Customer": [
      {
        "Active": true,
        "Balance": 0,
        "CompanyName": "Acme Corp",
        "DisplayName": "Acme Corp",
        "FamilyName": "Doe",
        "GivenName": "Jane",
        "Id": "58",
        "MetaData": {
          "CreateTime": "2026-09-30T10:15:00-07:00",
          "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
        },
        "PrimaryEmailAddr": {
          "Address": "ap@acme.example"
        },
        "PrimaryPhone": {
          "FreeFormNumber": "(555) 555-0100"
        },
        "SyncToken": "0"
      }
    ],
    "maxResults": 1,
    "startPosition": 1
  },
  "count": 1,
  "has_more": false,
  "next_start_position": null,
  "start_position": 1,
  "time": "2026-09-30T10:15:00.000-07:00"
}

List QuickBooks estimates

List estimates (quotes), optionally narrowed by customer or date. Returns one page; use start_position to get the next.

Inputs

Limitlimitnumber
How many records to return, 1-1000. Defaults to 100.From 1 to 1000. Default: 100.
Start positionstart_positionnumber
Which matching record to start from, counting from 1. For the next page, use the previous result's next_start_position.At least 1. Default: 1.
Customercustomer_idtext
Only this customer's transactions.
From datedate_fromdate
Only transactions dated on or after this day.
To datedate_todate
Only transactions dated on or before this day.
Changed sinceupdated_sincedate and time
Only records created or changed at or after this moment.

Outputs

QueryResponseobject
countnumber
How many records this page holds.
has_moretrue/false
True when the page came back full, so another may follow. It is also true when the last page happens to be exactly full; the next is then empty.
next_start_positionnumber
The start_position for the next page, or null on the last page.
start_positionnumber
The position of this page's first record, counting from 1.
timetext
Example output
{
  "QueryResponse": {
    "Estimate": [
      {
        "CustomerRef": {
          "name": "Acme Corp",
          "value": "58"
        },
        "DocNumber": "1038",
        "EmailStatus": "NotSet",
        "ExpirationDate": "2026-10-30",
        "Id": "170",
        "Line": [
          {
            "Amount": 300.0,
            "Description": "Garden design",
            "DetailType": "SalesItemLineDetail",
            "Id": "1",
            "LineNum": 1,
            "SalesItemLineDetail": {
              "ItemRef": {
                "name": "Services",
                "value": "1"
              },
              "Qty": 2,
              "UnitPrice": 150
            }
          }
        ],
        "MetaData": {
          "CreateTime": "2026-09-30T10:15:00-07:00",
          "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
        },
        "SyncToken": "0",
        "TotalAmt": 300.0,
        "TxnDate": "2026-09-30",
        "TxnStatus": "Pending"
      }
    ],
    "maxResults": 1,
    "startPosition": 1
  },
  "count": 1,
  "has_more": false,
  "next_start_position": null,
  "start_position": 1,
  "time": "2026-09-30T10:15:00.000-07:00"
}

List QuickBooks expenses

List expenses (checks, card charges and cash purchases), optionally narrowed by date. Returns one page; use start_position to get the next.

Inputs

Limitlimitnumber
How many records to return, 1-1000. Defaults to 100.From 1 to 1000. Default: 100.
Start positionstart_positionnumber
Which matching record to start from, counting from 1. For the next page, use the previous result's next_start_position.At least 1. Default: 1.
From datedate_fromdate
Only transactions dated on or after this day.
To datedate_todate
Only transactions dated on or before this day.
Changed sinceupdated_sincedate and time
Only records created or changed at or after this moment.

Outputs

QueryResponseobject
countnumber
How many records this page holds.
has_moretrue/false
True when the page came back full, so another may follow. It is also true when the last page happens to be exactly full; the next is then empty.
next_start_positionnumber
The start_position for the next page, or null on the last page.
start_positionnumber
The position of this page's first record, counting from 1.
timetext
Example output
{
  "QueryResponse": {
    "Purchase": [
      {
        "AccountRef": {
          "name": "Visa",
          "value": "42"
        },
        "EntityRef": {
          "name": "Bob's Burger Joint",
          "type": "Vendor",
          "value": "56"
        },
        "Id": "160",
        "Line": [
          {
            "AccountBasedExpenseLineDetail": {
              "AccountRef": {
                "name": "Office Expenses",
                "value": "15"
              },
              "BillableStatus": "NotBillable"
            },
            "Amount": 45.0,
            "Description": "Printer paper",
            "DetailType": "AccountBasedExpenseLineDetail",
            "Id": "1"
          }
        ],
        "MetaData": {
          "CreateTime": "2026-09-30T10:15:00-07:00",
          "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
        },
        "PaymentType": "CreditCard",
        "SyncToken": "0",
        "TotalAmt": 45.0,
        "TxnDate": "2026-09-30"
      }
    ],
    "maxResults": 1,
    "startPosition": 1
  },
  "count": 1,
  "has_more": false,
  "next_start_position": null,
  "start_position": 1,
  "time": "2026-09-30T10:15:00.000-07:00"
}

List QuickBooks invoices

List invoices, optionally narrowed by customer, payment status, date or number. Returns one page; use start_position to get the next.

Inputs

Limitlimitnumber
How many records to return, 1-1000. Defaults to 100.From 1 to 1000. Default: 100.
Start positionstart_positionnumber
Which matching record to start from, counting from 1. For the next page, use the previous result's next_start_position.At least 1. Default: 1.
Customercustomer_idtext
Only this customer's transactions.
Statusstatustext
Only unpaid (open balance), paid, or overdue (open and past due) invoices.One of: any, unpaid, paid, overdue.
From datedate_fromdate
Only transactions dated on or after this day.
To datedate_todate
Only transactions dated on or before this day.
Invoice numberdoc_numbertext
Only the invoice with this number.
Changed sinceupdated_sincedate and time
Only records created or changed at or after this moment.

Outputs

QueryResponseobject
countnumber
How many records this page holds.
has_moretrue/false
True when the page came back full, so another may follow. It is also true when the last page happens to be exactly full; the next is then empty.
next_start_positionnumber
The start_position for the next page, or null on the last page.
start_positionnumber
The position of this page's first record, counting from 1.
timetext
Example output
{
  "QueryResponse": {
    "Invoice": [
      {
        "Balance": 300.0,
        "BillEmail": {
          "Address": "ap@acme.example"
        },
        "CustomerRef": {
          "name": "Acme Corp",
          "value": "58"
        },
        "DocNumber": "1037",
        "DueDate": "2026-10-30",
        "EmailStatus": "NotSet",
        "Id": "130",
        "Line": [
          {
            "Amount": 300.0,
            "Description": "Garden design",
            "DetailType": "SalesItemLineDetail",
            "Id": "1",
            "LineNum": 1,
            "SalesItemLineDetail": {
              "ItemRef": {
                "name": "Services",
                "value": "1"
              },
              "Qty": 2,
              "UnitPrice": 150
            }
          }
        ],
        "MetaData": {
          "CreateTime": "2026-09-30T10:15:00-07:00",
          "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
        },
        "SyncToken": "0",
        "TotalAmt": 300.0,
        "TxnDate": "2026-09-30"
      }
    ],
    "maxResults": 1,
    "startPosition": 1
  },
  "count": 1,
  "has_more": false,
  "next_start_position": null,
  "start_position": 1,
  "time": "2026-09-30T10:15:00.000-07:00"
}

List QuickBooks items

List products and services, optionally narrowed by type, name or SKU. Returns one page; use start_position to get the next.

Inputs

Limitlimitnumber
How many records to return, 1-1000. Defaults to 100.From 1 to 1000. Default: 100.
Start positionstart_positionnumber
Which matching record to start from, counting from 1. For the next page, use the previous result's next_start_position.At least 1. Default: 1.
Typeitem_typetext
Only items of this type.One of: Service, NonInventory (Non-inventory product), Inventory (Inventory product), Group (Bundle), Category.
Name containsname_containstext
Only records whose name contains this text (not case-sensitive).
SKUskutext
Only the item with exactly this SKU.
Include inactiveinclude_inactivetrue/false
Also return records that were made inactive. By default only active ones are listed.Default: false.
Changed sinceupdated_sincedate and time
Only records created or changed at or after this moment.

Outputs

QueryResponseobject
countnumber
How many records this page holds.
has_moretrue/false
True when the page came back full, so another may follow. It is also true when the last page happens to be exactly full; the next is then empty.
next_start_positionnumber
The start_position for the next page, or null on the last page.
start_positionnumber
The position of this page's first record, counting from 1.
timetext
Example output
{
  "QueryResponse": {
    "Item": [
      {
        "Active": true,
        "FullyQualifiedName": "Services",
        "Id": "1",
        "IncomeAccountRef": {
          "name": "Services",
          "value": "1"
        },
        "MetaData": {
          "CreateTime": "2026-09-30T10:15:00-07:00",
          "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
        },
        "Name": "Services",
        "SyncToken": "0",
        "Taxable": false,
        "Type": "Service",
        "UnitPrice": 150
      }
    ],
    "maxResults": 1,
    "startPosition": 1
  },
  "count": 1,
  "has_more": false,
  "next_start_position": null,
  "start_position": 1,
  "time": "2026-09-30T10:15:00.000-07:00"
}

List QuickBooks journal entries

List journal entries, optionally narrowed by date or number. Returns one page; use start_position to get the next.

Inputs

Limitlimitnumber
How many records to return, 1-1000. Defaults to 100.From 1 to 1000. Default: 100.
Start positionstart_positionnumber
Which matching record to start from, counting from 1. For the next page, use the previous result's next_start_position.At least 1. Default: 1.
From datedate_fromdate
Only transactions dated on or after this day.
To datedate_todate
Only transactions dated on or before this day.
Entry numberdoc_numbertext
Only the entry with this number.
Changed sinceupdated_sincedate and time
Only records created or changed at or after this moment.

Outputs

QueryResponseobject
countnumber
How many records this page holds.
has_moretrue/false
True when the page came back full, so another may follow. It is also true when the last page happens to be exactly full; the next is then empty.
next_start_positionnumber
The start_position for the next page, or null on the last page.
start_positionnumber
The position of this page's first record, counting from 1.
timetext
Example output
{
  "QueryResponse": {
    "JournalEntry": [
      {
        "Adjustment": false,
        "DocNumber": "JE-12",
        "Id": "230",
        "Line": [
          {
            "Amount": 100.0,
            "Description": "September insurance",
            "DetailType": "JournalEntryLineDetail",
            "Id": "0",
            "JournalEntryLineDetail": {
              "AccountRef": {
                "name": "Insurance",
                "value": "11"
              },
              "PostingType": "Debit"
            }
          },
          {
            "Amount": 100.0,
            "Description": "September insurance",
            "DetailType": "JournalEntryLineDetail",
            "Id": "1",
            "JournalEntryLineDetail": {
              "AccountRef": {
                "name": "Checking",
                "value": "35"
              },
              "PostingType": "Credit"
            }
          }
        ],
        "MetaData": {
          "CreateTime": "2026-09-30T10:15:00-07:00",
          "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
        },
        "SyncToken": "0",
        "TxnDate": "2026-09-30"
      }
    ],
    "maxResults": 1,
    "startPosition": 1
  },
  "count": 1,
  "has_more": false,
  "next_start_position": null,
  "start_position": 1,
  "time": "2026-09-30T10:15:00.000-07:00"
}

List QuickBooks payments

List customer payments, optionally narrowed by customer or date. Returns one page; use start_position to get the next.

Inputs

Limitlimitnumber
How many records to return, 1-1000. Defaults to 100.From 1 to 1000. Default: 100.
Start positionstart_positionnumber
Which matching record to start from, counting from 1. For the next page, use the previous result's next_start_position.At least 1. Default: 1.
Customercustomer_idtext
Only this customer's transactions.
From datedate_fromdate
Only transactions dated on or after this day.
To datedate_todate
Only transactions dated on or before this day.
Changed sinceupdated_sincedate and time
Only records created or changed at or after this moment.

Outputs

QueryResponseobject
countnumber
How many records this page holds.
has_moretrue/false
True when the page came back full, so another may follow. It is also true when the last page happens to be exactly full; the next is then empty.
next_start_positionnumber
The start_position for the next page, or null on the last page.
start_positionnumber
The position of this page's first record, counting from 1.
timetext
Example output
{
  "QueryResponse": {
    "Payment": [
      {
        "CustomerRef": {
          "name": "Acme Corp",
          "value": "58"
        },
        "Id": "140",
        "Line": [
          {
            "Amount": 300.0,
            "LinkedTxn": [
              {
                "TxnId": "130",
                "TxnType": "Invoice"
              }
            ]
          }
        ],
        "MetaData": {
          "CreateTime": "2026-09-30T10:15:00-07:00",
          "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
        },
        "SyncToken": "0",
        "TotalAmt": 300.0,
        "TxnDate": "2026-09-30",
        "UnappliedAmt": 0
      }
    ],
    "maxResults": 1,
    "startPosition": 1
  },
  "count": 1,
  "has_more": false,
  "next_start_position": null,
  "start_position": 1,
  "time": "2026-09-30T10:15:00.000-07:00"
}

List QuickBooks purchase orders

List purchase orders, optionally narrowed by date. Returns one page; use start_position to get the next.

Inputs

Limitlimitnumber
How many records to return, 1-1000. Defaults to 100.From 1 to 1000. Default: 100.
Start positionstart_positionnumber
Which matching record to start from, counting from 1. For the next page, use the previous result's next_start_position.At least 1. Default: 1.
From datedate_fromdate
Only transactions dated on or after this day.
To datedate_todate
Only transactions dated on or before this day.
Changed sinceupdated_sincedate and time
Only records created or changed at or after this moment.

Outputs

QueryResponseobject
countnumber
How many records this page holds.
has_moretrue/false
True when the page came back full, so another may follow. It is also true when the last page happens to be exactly full; the next is then empty.
next_start_positionnumber
The start_position for the next page, or null on the last page.
start_positionnumber
The position of this page's first record, counting from 1.
timetext
Example output
{
  "QueryResponse": {
    "PurchaseOrder": [
      {
        "APAccountRef": {
          "name": "Accounts Payable (A/P)",
          "value": "33"
        },
        "DocNumber": "1005",
        "EmailStatus": "NotSet",
        "Id": "210",
        "Line": [
          {
            "Amount": 90.0,
            "DetailType": "ItemBasedExpenseLineDetail",
            "Id": "1",
            "ItemBasedExpenseLineDetail": {
              "BillableStatus": "NotBillable",
              "ItemRef": {
                "name": "Pump",
                "value": "11"
              },
              "Qty": 3,
              "UnitPrice": 30
            }
          }
        ],
        "MetaData": {
          "CreateTime": "2026-09-30T10:15:00-07:00",
          "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
        },
        "POEmail": {
          "Address": "orders@bobs.example"
        },
        "POStatus": "Open",
        "SyncToken": "0",
        "TotalAmt": 90.0,
        "TxnDate": "2026-09-30",
        "VendorRef": {
          "name": "Bob's Burger Joint",
          "value": "56"
        }
      }
    ],
    "maxResults": 1,
    "startPosition": 1
  },
  "count": 1,
  "has_more": false,
  "next_start_position": null,
  "start_position": 1,
  "time": "2026-09-30T10:15:00.000-07:00"
}

List QuickBooks sales receipts

List sales receipts (sales paid for on the spot), optionally narrowed by customer or date. Returns one page; use start_position to get the next.

Inputs

Limitlimitnumber
How many records to return, 1-1000. Defaults to 100.From 1 to 1000. Default: 100.
Start positionstart_positionnumber
Which matching record to start from, counting from 1. For the next page, use the previous result's next_start_position.At least 1. Default: 1.
Customercustomer_idtext
Only this customer's transactions.
From datedate_fromdate
Only transactions dated on or after this day.
To datedate_todate
Only transactions dated on or before this day.
Changed sinceupdated_sincedate and time
Only records created or changed at or after this moment.

Outputs

QueryResponseobject
countnumber
How many records this page holds.
has_moretrue/false
True when the page came back full, so another may follow. It is also true when the last page happens to be exactly full; the next is then empty.
next_start_positionnumber
The start_position for the next page, or null on the last page.
start_positionnumber
The position of this page's first record, counting from 1.
timetext
Example output
{
  "QueryResponse": {
    "SalesReceipt": [
      {
        "Balance": 0,
        "CustomerRef": {
          "name": "Acme Corp",
          "value": "58"
        },
        "DepositToAccountRef": {
          "name": "Undeposited Funds",
          "value": "4"
        },
        "DocNumber": "1039",
        "Id": "180",
        "Line": [
          {
            "Amount": 300.0,
            "Description": "Garden design",
            "DetailType": "SalesItemLineDetail",
            "Id": "1",
            "LineNum": 1,
            "SalesItemLineDetail": {
              "ItemRef": {
                "name": "Services",
                "value": "1"
              },
              "Qty": 2,
              "UnitPrice": 150
            }
          }
        ],
        "MetaData": {
          "CreateTime": "2026-09-30T10:15:00-07:00",
          "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
        },
        "PaymentMethodRef": {
          "name": "Cash",
          "value": "1"
        },
        "SyncToken": "0",
        "TotalAmt": 300.0,
        "TxnDate": "2026-09-30"
      }
    ],
    "maxResults": 1,
    "startPosition": 1
  },
  "count": 1,
  "has_more": false,
  "next_start_position": null,
  "start_position": 1,
  "time": "2026-09-30T10:15:00.000-07:00"
}

List QuickBooks time activities

List logged time, optionally narrowed by date or billing status. Returns one page; use start_position to get the next.

Inputs

Limitlimitnumber
How many records to return, 1-1000. Defaults to 100.From 1 to 1000. Default: 100.
Start positionstart_positionnumber
Which matching record to start from, counting from 1. For the next page, use the previous result's next_start_position.At least 1. Default: 1.
From datedate_fromdate
Only transactions dated on or after this day.
To datedate_todate
Only transactions dated on or before this day.
Billing statusbillable_statustext
Only time that is billable, not billable, or already billed.One of: Billable, NotBillable (Not billable), HasBeenBilled (Already billed).
Changed sinceupdated_sincedate and time
Only records created or changed at or after this moment.

Outputs

QueryResponseobject
countnumber
How many records this page holds.
has_moretrue/false
True when the page came back full, so another may follow. It is also true when the last page happens to be exactly full; the next is then empty.
next_start_positionnumber
The start_position for the next page, or null on the last page.
start_positionnumber
The position of this page's first record, counting from 1.
timetext
Example output
{
  "QueryResponse": {
    "TimeActivity": [
      {
        "BillableStatus": "Billable",
        "CustomerRef": {
          "name": "Acme Corp",
          "value": "58"
        },
        "Description": "Site visit",
        "EmployeeRef": {
          "name": "Emily Platt",
          "value": "55"
        },
        "HourlyRate": 75,
        "Hours": 3,
        "Id": "260",
        "ItemRef": {
          "name": "Services",
          "value": "1"
        },
        "MetaData": {
          "CreateTime": "2026-09-30T10:15:00-07:00",
          "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
        },
        "Minutes": 30,
        "NameOf": "Employee",
        "SyncToken": "0",
        "TxnDate": "2026-09-30"
      }
    ],
    "maxResults": 1,
    "startPosition": 1
  },
  "count": 1,
  "has_more": false,
  "next_start_position": null,
  "start_position": 1,
  "time": "2026-09-30T10:15:00.000-07:00"
}

List QuickBooks vendors

List vendors (suppliers), optionally narrowed by name or when they last changed. Returns one page; use start_position to get the next.

Inputs

Limitlimitnumber
How many records to return, 1-1000. Defaults to 100.From 1 to 1000. Default: 100.
Start positionstart_positionnumber
Which matching record to start from, counting from 1. For the next page, use the previous result's next_start_position.At least 1. Default: 1.
Name containsname_containstext
Only records whose name contains this text (not case-sensitive).
Include inactiveinclude_inactivetrue/false
Also return records that were made inactive. By default only active ones are listed.Default: false.
Changed sinceupdated_sincedate and time
Only records created or changed at or after this moment.

Outputs

QueryResponseobject
countnumber
How many records this page holds.
has_moretrue/false
True when the page came back full, so another may follow. It is also true when the last page happens to be exactly full; the next is then empty.
next_start_positionnumber
The start_position for the next page, or null on the last page.
start_positionnumber
The position of this page's first record, counting from 1.
timetext
Example output
{
  "QueryResponse": {
    "Vendor": [
      {
        "Active": true,
        "Balance": 0,
        "CompanyName": "Bob's Burger Joint",
        "DisplayName": "Bob's Burger Joint",
        "Id": "56",
        "MetaData": {
          "CreateTime": "2026-09-30T10:15:00-07:00",
          "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
        },
        "PrimaryEmailAddr": {
          "Address": "orders@bobs.example"
        },
        "SyncToken": "0",
        "Vendor1099": false
      }
    ],
    "maxResults": 1,
    "startPosition": 1
  },
  "count": 1,
  "has_more": false,
  "next_start_position": null,
  "start_position": 1,
  "time": "2026-09-30T10:15:00.000-07:00"
}

Pay a QuickBooks bill

Record paying a bill, by check from a bank account or with a credit card. Without an amount, the bill's whole open balance is paid.

Inputs

Bill IDbill_idtextRequired
The bill's Id, from 'Create a QuickBooks bill' or 'List QuickBooks bills'.
Paid frompayment_account_idtextRequired
The bank account (for a check) or credit card it was paid from.
Paid bypay_typetext
Check for a bank account, CreditCard for a card. Defaults to Check.One of: Check, CreditCard (Credit card). Default: Check.
Amountamountnumber
How much was paid. Defaults to the bill's open balance.At least 0.
Payment datepayment_datedate
When it was paid. Defaults to today.
Check no.doc_numbertext
The check number.
Internal memoprivate_notetext
An internal memo. Customers and vendors never see it.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

BillPaymentobject
timetext
Example output
{
  "BillPayment": {
    "CheckPayment": {
      "BankAccountRef": {
        "name": "Checking",
        "value": "35"
      }
    },
    "Id": "151",
    "Line": [
      {
        "Amount": 45.0,
        "LinkedTxn": [
          {
            "TxnId": "150",
            "TxnType": "Bill"
          }
        ]
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "PayType": "Check",
    "SyncToken": "0",
    "TotalAmt": 45.0,
    "TxnDate": "2026-09-30",
    "VendorRef": {
      "name": "Bob's Burger Joint",
      "value": "56"
    }
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Run a QuickBooks query

Run a query in QuickBooks' own query language, e.g. SELECT * FROM Invoice WHERE Balance > '0' ORDERBY DueDate MAXRESULTS 50. The matching records come back under 'records' whatever their kind; a SELECT COUNT(*) comes back under 'count'.

Inputs

QueryquerytextRequired
The query. Only SELECT is supported, and a page holds up to 1,000 records (STARTPOSITION and MAXRESULTS page through more).

Outputs

countnumber
entitytext
The type of record the query returned, e.g. Invoice.
max_resultsnumber
recordslist
start_positionnumber
timetext
Example output
{
  "count": 1,
  "entity": "Invoice",
  "max_results": 1,
  "records": [
    {
      "Balance": 300.0,
      "BillEmail": {
        "Address": "ap@acme.example"
      },
      "CustomerRef": {
        "name": "Acme Corp",
        "value": "58"
      },
      "DocNumber": "1037",
      "DueDate": "2026-10-30",
      "EmailStatus": "NotSet",
      "Id": "130",
      "Line": [
        {
          "Amount": 300.0,
          "Description": "Garden design",
          "DetailType": "SalesItemLineDetail",
          "Id": "1",
          "LineNum": 1,
          "SalesItemLineDetail": {
            "ItemRef": {
              "name": "Services",
              "value": "1"
            },
            "Qty": 2,
            "UnitPrice": 150
          }
        }
      ],
      "MetaData": {
        "CreateTime": "2026-09-30T10:15:00-07:00",
        "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
      },
      "SyncToken": "0",
      "TotalAmt": 300.0,
      "TxnDate": "2026-09-30"
    }
  ],
  "start_position": 1,
  "time": "2026-09-30T10:15:00.000-07:00"
}

Run a QuickBooks report

Run any QuickBooks report by name, with its options as Intuit documents them, such as a trial balance, general ledger or sales by customer.

Inputs

Reportreport_nametextRequired
The report to run.One of: ProfitAndLoss (Profit and loss), ProfitAndLossDetail (Profit and loss detail), BalanceSheet (Balance sheet), CashFlow (Cash flow), TrialBalance (Trial balance), GeneralLedger (General ledger), AgedReceivables (A/R aging summary), AgedReceivableDetail (A/R aging detail), AgedPayables (A/P aging summary), AgedPayableDetail (A/P aging detail), and 19 more.
Optionsparametersobject
The report's options as Intuit names them, e.g. {"start_date": "2026-01-01", "end_date": "2026-03-31", "accounting_method": "Cash"}. Each report's reference page lists the ones it takes.
Include raw reportinclude_rawtrue/false
Also return QuickBooks' original nested report under 'report'.Default: false.

Outputs

columnslist
currencytext
end_periodtext
generated_attext
no_datatrue/false
reportobject
QuickBooks' original report, when include_raw is set.
report_basistext
report_nametext
rowslist
start_periodtext
summarize_columns_bytext
totalsobject
Each section's total by its group, e.g. NetIncome.
Example output
{
  "columns": [
    "Account",
    "Total"
  ],
  "currency": "USD",
  "end_period": "2026-09-30",
  "generated_at": "2026-09-30T10:15:00-07:00",
  "no_data": false,
  "report_basis": "Accrual",
  "report_name": "ProfitAndLoss",
  "rows": [
    {
      "amount": null,
      "depth": 0,
      "group": "Income",
      "kind": "header",
      "label": "Income",
      "values": {
        "Total": null
      }
    },
    {
      "amount": 2250.0,
      "depth": 1,
      "id": "82",
      "kind": "data",
      "label": "Design income",
      "values": {
        "Total": 2250.0
      }
    },
    {
      "amount": 2250.0,
      "depth": 0,
      "group": "Income",
      "kind": "total",
      "label": "Total Income",
      "values": {
        "Total": 2250.0
      }
    },
    {
      "amount": 1650.0,
      "depth": 0,
      "group": "NetIncome",
      "kind": "total",
      "label": "Net Income",
      "values": {
        "Total": 1650.0
      }
    }
  ],
  "start_period": "2026-09-01",
  "summarize_columns_by": "Total",
  "totals": {
    "Income": 2250.0,
    "NetIncome": 1650.0
  }
}

Send a QuickBooks credit memo

Email a credit memo to the customer from QuickBooks.

Inputs

Credit memo IDcredit_memo_idtextRequired
The credit memo's Id, from 'Create a QuickBooks credit memo' or 'List QuickBooks credit memos'.
Send toemail_totext
Send it to this address instead of the one on the form, which QuickBooks then updates to it.

Outputs

CreditMemoobject
timetext
Example output
{
  "CreditMemo": {
    "Balance": 300.0,
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "DocNumber": "1040",
    "Id": "190",
    "Line": [
      {
        "Amount": 300.0,
        "Description": "Garden design",
        "DetailType": "SalesItemLineDetail",
        "Id": "1",
        "LineNum": 1,
        "SalesItemLineDetail": {
          "ItemRef": {
            "name": "Services",
            "value": "1"
          },
          "Qty": 2,
          "UnitPrice": 150
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "RemainingCredit": 300.0,
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Send a QuickBooks estimate

Email an estimate to the customer from QuickBooks.

Inputs

Estimate IDestimate_idtextRequired
The estimate's Id, from 'Create a QuickBooks estimate' or 'List QuickBooks estimates'.
Send toemail_totext
Send it to this address instead of the one on the form, which QuickBooks then updates to it.

Outputs

Estimateobject
timetext
Example output
{
  "Estimate": {
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "DocNumber": "1038",
    "EmailStatus": "NotSet",
    "ExpirationDate": "2026-10-30",
    "Id": "170",
    "Line": [
      {
        "Amount": 300.0,
        "Description": "Garden design",
        "DetailType": "SalesItemLineDetail",
        "Id": "1",
        "LineNum": 1,
        "SalesItemLineDetail": {
          "ItemRef": {
            "name": "Services",
            "value": "1"
          },
          "Qty": 2,
          "UnitPrice": 150
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30",
    "TxnStatus": "Pending"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Send a QuickBooks invoice

Email an invoice to the customer from QuickBooks, with a link to pay it online when the company takes online payments.

Inputs

Invoice IDinvoice_idtextRequired
The invoice's Id, from 'Create a QuickBooks invoice' or 'List QuickBooks invoices'.
Send toemail_totext
Send it to this address instead of the one on the form, which QuickBooks then updates to it.

Outputs

Invoiceobject
timetext
Example output
{
  "Invoice": {
    "Balance": 300.0,
    "BillEmail": {
      "Address": "ap@acme.example"
    },
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "DocNumber": "1037",
    "DueDate": "2026-10-30",
    "EmailStatus": "NotSet",
    "Id": "130",
    "Line": [
      {
        "Amount": 300.0,
        "Description": "Garden design",
        "DetailType": "SalesItemLineDetail",
        "Id": "1",
        "LineNum": 1,
        "SalesItemLineDetail": {
          "ItemRef": {
            "name": "Services",
            "value": "1"
          },
          "Qty": 2,
          "UnitPrice": 150
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Send a QuickBooks purchase order

Email a purchase order to the vendor from QuickBooks.

Inputs

Purchase order IDpurchase_order_idtextRequired
The purchase order's Id, from 'Create a QuickBooks purchase order' or 'List QuickBooks purchase orders'.
Send toemail_totext
Send it to this address instead of the one on the form, which QuickBooks then updates to it.

Outputs

PurchaseOrderobject
timetext
Example output
{
  "PurchaseOrder": {
    "APAccountRef": {
      "name": "Accounts Payable (A/P)",
      "value": "33"
    },
    "DocNumber": "1005",
    "EmailStatus": "NotSet",
    "Id": "210",
    "Line": [
      {
        "Amount": 90.0,
        "DetailType": "ItemBasedExpenseLineDetail",
        "Id": "1",
        "ItemBasedExpenseLineDetail": {
          "BillableStatus": "NotBillable",
          "ItemRef": {
            "name": "Pump",
            "value": "11"
          },
          "Qty": 3,
          "UnitPrice": 30
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "POEmail": {
      "Address": "orders@bobs.example"
    },
    "POStatus": "Open",
    "SyncToken": "0",
    "TotalAmt": 90.0,
    "TxnDate": "2026-09-30",
    "VendorRef": {
      "name": "Bob's Burger Joint",
      "value": "56"
    }
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Send a QuickBooks sales receipt

Email a sales receipt to the customer from QuickBooks.

Inputs

Sales receipt IDsales_receipt_idtextRequired
The sales receipt's Id, from 'Create a QuickBooks sales receipt' or 'List QuickBooks sales receipts'.
Send toemail_totext
Send it to this address instead of the one on the form, which QuickBooks then updates to it.

Outputs

SalesReceiptobject
timetext
Example output
{
  "SalesReceipt": {
    "Balance": 0,
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "DepositToAccountRef": {
      "name": "Undeposited Funds",
      "value": "4"
    },
    "DocNumber": "1039",
    "Id": "180",
    "Line": [
      {
        "Amount": 300.0,
        "Description": "Garden design",
        "DetailType": "SalesItemLineDetail",
        "Id": "1",
        "LineNum": 1,
        "SalesItemLineDetail": {
          "ItemRef": {
            "name": "Services",
            "value": "1"
          },
          "Qty": 2,
          "UnitPrice": 150
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "PaymentMethodRef": {
      "name": "Cash",
      "value": "1"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Update a QuickBooks bill

Change a bill's dates, number, terms, memo or lines. Only the fields you fill in change.

Inputs

Bill IDbill_idtextRequired
The bill's Id, from 'Create a QuickBooks bill' or 'List QuickBooks bills'.
Due datedue_datedate
When payment is due.
Datetxn_datedate
The transaction's date. Defaults to today.
Bill no.doc_numbertext
The vendor's bill or invoice number.
Termsterms_idtext
Payment terms, such as Net 30, which set the due date when none is given.
Internal memoprivate_notetext
An internal memo. Customers and vendors never see it.
Replace lines (advanced)line_itemslist
New lines, which replace all of the bill's current lines. Same format as 'Create a QuickBooks bill'.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

Billobject
timetext
Example output
{
  "Bill": {
    "APAccountRef": {
      "name": "Accounts Payable (A/P)",
      "value": "33"
    },
    "Balance": 45.0,
    "DocNumber": "INV-8812",
    "DueDate": "2026-10-30",
    "Id": "150",
    "Line": [
      {
        "AccountBasedExpenseLineDetail": {
          "AccountRef": {
            "name": "Office Expenses",
            "value": "15"
          },
          "BillableStatus": "NotBillable"
        },
        "Amount": 45.0,
        "Description": "Printer paper",
        "DetailType": "AccountBasedExpenseLineDetail",
        "Id": "1"
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 45.0,
    "TxnDate": "2026-09-30",
    "VendorRef": {
      "name": "Bob's Burger Joint",
      "value": "56"
    }
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Update a QuickBooks customer

Change a customer's details. Only the fields you fill in change; the rest keep their values.

Inputs

Customercustomer_idtextRequired
The customer. Pick one, or use an Id from 'Create a QuickBooks customer' or 'List QuickBooks customers'.
Display namedisplay_nametext
A new display name, unique across customers, vendors and employees.
First namegiven_nametext
First name.
Last namefamily_nametext
Last name.
Emailemailtext
Email address.
Phonephonetext
Main phone number.
Companycompany_nametext
Company name.
Mobilemobiletext
Mobile number.
Websitewebsitetext
Website address.
Address line 1address_line1text
Billing address, first line.
Address line 2address_line2text
Billing address, second line.
Citycitytext
City.
Statestatetext
State, province or region code, such as CA.
Postal codepostal_codetext
ZIP or postal code.
Countrycountrytext
Country.
Notesnotestext
Private notes about the customer. Replaces the current notes.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

Customerobject
timetext
Example output
{
  "Customer": {
    "Active": true,
    "Balance": 0,
    "CompanyName": "Acme Corp",
    "DisplayName": "Acme Corp",
    "FamilyName": "Doe",
    "GivenName": "Jane",
    "Id": "58",
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "PrimaryEmailAddr": {
      "Address": "ap@acme.example"
    },
    "PrimaryPhone": {
      "FreeFormNumber": "(555) 555-0100"
    },
    "SyncToken": "0"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Update a QuickBooks estimate

Change an estimate, or mark it accepted, closed or rejected. Only the fields you fill in change.

Inputs

Estimate IDestimate_idtextRequired
The estimate's Id, from 'Create a QuickBooks estimate' or 'List QuickBooks estimates'.
Statusstatustext
The estimate's status.One of: Pending, Accepted, Closed, Rejected.
Expiration dateexpiration_datedate
When the estimate expires.
Datetxn_datedate
The transaction's date. Defaults to today.
Numberdoc_numbertext
The document number. Leave blank to let QuickBooks number it, when the company numbers them automatically.
Email toemail_totext
The customer's email address for this document (its Bill Email).
Message to customermemotext
A message to the customer, printed on the document.
Internal memoprivate_notetext
An internal memo. Customers and vendors never see it.
Replace lines (advanced)line_itemslist
New lines, which replace all of the estimate's current lines. Same format as 'Create a QuickBooks estimate'.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

Estimateobject
timetext
Example output
{
  "Estimate": {
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "DocNumber": "1038",
    "EmailStatus": "NotSet",
    "ExpirationDate": "2026-10-30",
    "Id": "170",
    "Line": [
      {
        "Amount": 300.0,
        "Description": "Garden design",
        "DetailType": "SalesItemLineDetail",
        "Id": "1",
        "LineNum": 1,
        "SalesItemLineDetail": {
          "ItemRef": {
            "name": "Services",
            "value": "1"
          },
          "Qty": 2,
          "UnitPrice": 150
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30",
    "TxnStatus": "Pending"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Update a QuickBooks invoice

Change an invoice's dates, number, terms, messages or lines. Only the fields you fill in change.

Inputs

Invoice IDinvoice_idtextRequired
The invoice's Id, from 'Create a QuickBooks invoice' or 'List QuickBooks invoices'.
Due datedue_datedate
When payment is due.
Datetxn_datedate
The transaction's date. Defaults to today.
Numberdoc_numbertext
The document number. Leave blank to let QuickBooks number it, when the company numbers them automatically.
Email toemail_totext
The customer's email address for this document (its Bill Email).
Termsterms_idtext
Payment terms, such as Net 30, which set the due date when none is given.
Message to customermemotext
A message to the customer, printed on the document.
Internal memoprivate_notetext
An internal memo. Customers and vendors never see it.
Replace lines (advanced)line_itemslist
New lines, which replace all of the invoice's current lines. Same format as 'Create a QuickBooks invoice'.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

Invoiceobject
timetext
Example output
{
  "Invoice": {
    "Balance": 300.0,
    "BillEmail": {
      "Address": "ap@acme.example"
    },
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "DocNumber": "1037",
    "DueDate": "2026-10-30",
    "EmailStatus": "NotSet",
    "Id": "130",
    "Line": [
      {
        "Amount": 300.0,
        "Description": "Garden design",
        "DetailType": "SalesItemLineDetail",
        "Id": "1",
        "LineNum": 1,
        "SalesItemLineDetail": {
          "ItemRef": {
            "name": "Services",
            "value": "1"
          },
          "Qty": 2,
          "UnitPrice": 150
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Update a QuickBooks item

Change a product or service. Only the fields you fill in change. Set Active to No to retire the item, which is how QuickBooks removes one.

Inputs

Product/serviceitem_idtextRequired
The product or service. Pick one, or use an Id from 'List QuickBooks items'.
Namenametext
A new name, unique among items.
Sales descriptiondescriptiontext
The description on sales forms.
Sales priceunit_pricenumber
The sales price.
Income accountincome_account_idtext
The income account sales of it post to. Required for Service and Inventory items; an Inventory item's must have the Sales of Product Income detail type.
Purchase descriptionpurchase_descriptiontext
The description on purchase forms.
Costpurchase_costnumber
What it costs to buy.
Expense accountexpense_account_idtext
The expense account purchases of it post to (Cost of Goods Sold for inventory). Required for Inventory items.
SKUskutext
Its stock-keeping unit code.
Taxabletaxabletrue/false
Whether sales tax applies to it (US).
Activeactivetrue/false
No makes the item inactive; Yes restores an inactive one.
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

Itemobject
timetext
Example output
{
  "Item": {
    "Active": true,
    "FullyQualifiedName": "Services",
    "Id": "1",
    "IncomeAccountRef": {
      "name": "Services",
      "value": "1"
    },
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "Name": "Services",
    "SyncToken": "0",
    "Taxable": false,
    "Type": "Service",
    "UnitPrice": 150
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Update a QuickBooks vendor

Change a vendor's details. Only the fields you fill in change; the rest keep their values.

Inputs

Vendorvendor_idtextRequired
The vendor. Pick one, or use an Id from 'Create a QuickBooks vendor' or 'List QuickBooks vendors'.
Display namedisplay_nametext
A new display name, unique across customers, vendors and employees.
First namegiven_nametext
First name.
Last namefamily_nametext
Last name.
Emailemailtext
Email address.
Phonephonetext
Main phone number.
Companycompany_nametext
Company name.
Mobilemobiletext
Mobile number.
Websitewebsitetext
Website address.
Address line 1address_line1text
Billing address, first line.
Address line 2address_line2text
Billing address, second line.
Citycitytext
City.
Statestatetext
State, province or region code, such as CA.
Postal codepostal_codetext
ZIP or postal code.
Countrycountrytext
Country.
Account numberaccount_numbertext
Your account number with this vendor.
Track for 1099is_1099true/false
Whether the vendor gets a 1099 (US).
Additional fields (advanced)additional_fieldsobject
QuickBooks fields to send exactly as given, for anything the fields above don't cover, e.g. {"CurrencyRef": {"value": "EUR"}}. Names and shapes follow Intuit's API reference, and these win over the fields above.

Outputs

Vendorobject
timetext
Example output
{
  "Vendor": {
    "Active": true,
    "Balance": 0,
    "CompanyName": "Bob's Burger Joint",
    "DisplayName": "Bob's Burger Joint",
    "Id": "56",
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "PrimaryEmailAddr": {
      "Address": "orders@bobs.example"
    },
    "SyncToken": "0",
    "Vendor1099": false
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Void a QuickBooks invoice

Void an invoice: its amounts become zero and 'Voided' is added to its memo, but it stays on record, unlike deleting it.

Inputs

Invoice IDinvoice_idtextRequired
The invoice's Id, from 'Create a QuickBooks invoice' or 'List QuickBooks invoices'.

Outputs

Invoiceobject
timetext
Example output
{
  "Invoice": {
    "Balance": 300.0,
    "BillEmail": {
      "Address": "ap@acme.example"
    },
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "DocNumber": "1037",
    "DueDate": "2026-10-30",
    "EmailStatus": "NotSet",
    "Id": "130",
    "Line": [
      {
        "Amount": 300.0,
        "Description": "Garden design",
        "DetailType": "SalesItemLineDetail",
        "Id": "1",
        "LineNum": 1,
        "SalesItemLineDetail": {
          "ItemRef": {
            "name": "Services",
            "value": "1"
          },
          "Qty": 2,
          "UnitPrice": 150
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Void a QuickBooks payment

Void a payment: its amount becomes zero and the invoices it paid are open again. A payment that was already deposited can't be voided until the deposit is deleted.

Inputs

Payment IDpayment_idtextRequired
The payment's Id, from 'Create a QuickBooks payment' or 'List QuickBooks payments'.

Outputs

Paymentobject
timetext
Example output
{
  "Payment": {
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "Id": "140",
    "Line": [
      {
        "Amount": 300.0,
        "LinkedTxn": [
          {
            "TxnId": "130",
            "TxnType": "Invoice"
          }
        ]
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30",
    "UnappliedAmt": 0
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

Void a QuickBooks sales receipt

Void a sales receipt: its amounts become zero and 'Voided' is added to its memo, but it stays on record.

Inputs

Sales receipt IDsales_receipt_idtextRequired
The sales receipt's Id, from 'Create a QuickBooks sales receipt' or 'List QuickBooks sales receipts'.

Outputs

SalesReceiptobject
timetext
Example output
{
  "SalesReceipt": {
    "Balance": 0,
    "CustomerRef": {
      "name": "Acme Corp",
      "value": "58"
    },
    "DepositToAccountRef": {
      "name": "Undeposited Funds",
      "value": "4"
    },
    "DocNumber": "1039",
    "Id": "180",
    "Line": [
      {
        "Amount": 300.0,
        "Description": "Garden design",
        "DetailType": "SalesItemLineDetail",
        "Id": "1",
        "LineNum": 1,
        "SalesItemLineDetail": {
          "ItemRef": {
            "name": "Services",
            "value": "1"
          },
          "Qty": 2,
          "UnitPrice": 150
        }
      }
    ],
    "MetaData": {
      "CreateTime": "2026-09-30T10:15:00-07:00",
      "LastUpdatedTime": "2026-09-30T10:15:00-07:00"
    },
    "PaymentMethodRef": {
      "name": "Cash",
      "value": "1"
    },
    "SyncToken": "0",
    "TotalAmt": 300.0,
    "TxnDate": "2026-09-30"
  },
  "time": "2026-09-30T10:15:00.000-07:00"
}

On this page

TriggersNew QuickBooks customerNew QuickBooks vendorNew QuickBooks invoiceQuickBooks invoice paidNew QuickBooks paymentNew QuickBooks billNew QuickBooks estimateActionsAdd a note in QuickBooksAttach a file in QuickBooksConvert a QuickBooks estimate to an invoiceCreate a QuickBooks accountCreate a QuickBooks billCreate a QuickBooks credit memoCreate a QuickBooks customerCreate a QuickBooks depositCreate a QuickBooks estimateCreate a QuickBooks expenseCreate a QuickBooks invoiceCreate a QuickBooks itemCreate a QuickBooks journal entryCreate a QuickBooks paymentCreate a QuickBooks purchase orderCreate a QuickBooks refund receiptCreate a QuickBooks sales receiptCreate a QuickBooks time activityCreate a QuickBooks transferCreate a QuickBooks vendorCreate a QuickBooks vendor creditDeactivate a QuickBooks customerDeactivate a QuickBooks vendorDelete a QuickBooks billDelete a QuickBooks estimateDelete a QuickBooks invoiceDelete a QuickBooks transactionDownload a QuickBooks attachmentGet a QuickBooks accounts payable aging reportGet a QuickBooks accounts receivable aging reportGet a QuickBooks balance sheetGet a QuickBooks billGet a QuickBooks cash flow statementGet a QuickBooks customerGet a QuickBooks estimateGet a QuickBooks estimate PDFGet a QuickBooks invoiceGet a QuickBooks invoice PDFGet a QuickBooks itemGet a QuickBooks paymentGet a QuickBooks profit and loss reportGet a QuickBooks purchase orderGet a QuickBooks sales receiptGet a QuickBooks sales receipt PDFGet a QuickBooks vendorGet QuickBooks company infoList QuickBooks accountsList QuickBooks attachmentsList QuickBooks billsList QuickBooks changesList QuickBooks credit memosList QuickBooks customersList QuickBooks estimatesList QuickBooks expensesList QuickBooks invoicesList QuickBooks itemsList QuickBooks journal entriesList QuickBooks paymentsList QuickBooks purchase ordersList QuickBooks sales receiptsList QuickBooks time activitiesList QuickBooks vendorsPay a QuickBooks billRun a QuickBooks queryRun a QuickBooks reportSend a QuickBooks credit memoSend a QuickBooks estimateSend a QuickBooks invoiceSend a QuickBooks purchase orderSend a QuickBooks sales receiptUpdate a QuickBooks billUpdate a QuickBooks customerUpdate a QuickBooks estimateUpdate a QuickBooks invoiceUpdate a QuickBooks itemUpdate a QuickBooks vendorVoid a QuickBooks invoiceVoid a QuickBooks paymentVoid a QuickBooks sales receipt