finance
QuickBooks CLI for Shell Scripts
Use the QuickBooks CLI for shell scripts with headless JSON commands, schema discovery, credentials, and permission controls.
7 functions 6 read 1 write Manual OAuth token auth
QuickBooks CLI for Shell Scripts
Call integration functions from shell scripts with stable JSON input and output.
Use shell scripts for small local automations that need one or more integration calls. The QuickBooks CLI uses the same integration registry as the TUI, Lua runtime, and MCP gateway, but returns predictable command output for automation.
Command Shape
# QuickBooks CLI for Shell Scripts
kosmokrator integrations:configure quickbooks --set access_token="$QUICKBOOKS_ACCESS_TOKEN" --enable --read allow --write ask --json
kosmo integrations:call quickbooks.quickbooks_list_invoices '{"limit":1}' --json Discovery Before Execution
Agents and scripts can inspect QuickBooks docs and schemas before choosing a function.
kosmo integrations:docs quickbooks --json
kosmo integrations:docs quickbooks.quickbooks_list_invoices --json
kosmo integrations:schema quickbooks.quickbooks_list_invoices --json
kosmo integrations:search "QuickBooks" --json
kosmo integrations:list --json Useful QuickBooks CLI Functions
| Function | Type | Parameters | Description |
|---|---|---|---|
quickbooks.quickbooks_list_invoices | Read | limit | List QuickBooks invoices. Returns a list of invoices with key fields. Use the limit parameter to control page size. |
quickbooks.quickbooks_get_invoice | Read | invoice_id | Retrieve a QuickBooks invoice by ID. Returns full invoice details including line items, totals, balance, and status. |
quickbooks.quickbooks_create_invoice | Write | customer_id, line_items, due_date | Create a new QuickBooks invoice for a customer. Provide customer_id, line_items (array of items with DetailType, Amount, and SalesItemLineDetail), and an optional due_date. |
quickbooks.quickbooks_list_customers | Read | limit | List QuickBooks customers. Returns a list of customers with key fields. Use the limit parameter to control page size. |
quickbooks.quickbooks_get_customer | Read | customer_id | Retrieve a QuickBooks customer by ID. Returns full customer details including name, email, phone, and balance. |
quickbooks.quickbooks_list_accounts | Read | limit | List QuickBooks accounts (chart of accounts). Returns a list of accounts with name, type, classification, and balance. Use the limit parameter to control page size. |
quickbooks.quickbooks_get_current_user | Read | none | Get the current user / company info from QuickBooks. Use this to verify the API connection is working. |
Automation Notes
- Use
--jsonfor machine-readable output. - Keep credentials out of argv by using environment variables or stored KosmoKrator configuration.
- Configure read/write policy before unattended runs; use
--forceonly for trusted automation. - Use the MCP gateway instead when the agent needs dynamic tool discovery inside a conversation.