Finance · Integration
QuickBooksAGNT

AI agents for QuickBooks

The books — kept clean without the keying. AGNT connects to QuickBooks so agents can read what happens there, reason about it, and act — with a receipt for every run.

Install Accounts Payable → Get AGNT free

Accounts Payable is a ready-made agent that works in QuickBooks — free, and it runs on your machine.

QuickBooks and AGNT, in brief

What it doesLets an AGNT agent read from and act in QuickBooks.
Connects withOAuth 2.0 Bearer — held in the local vault
AGNT nodecustom-api, or the zapier-action bridge
Runs whenAn invoice is created or paid
Typical build timeTen minutes
Where data goesNowhere by default — AGNT runs on your machine and credentials never leave it.

What you can automate

Reacts when…

  • an invoice is created or paid
  • an expense posts

Agents can…

  • create invoices and records
  • match transactions
  • export financial summaries

Teams use it for

  • invoices extracted from email into the ledger
  • PO matching with exceptions queued
  • month-end summaries drafted early

Build it: the QuickBooks workflow

A concrete shape to start from: the workflow wakes when an invoice is created or paid in QuickBooks. The agent gathers the surrounding context, forms a view, and where it is warranted goes on to create invoices and records — or to match transactions. Nothing is copied blindly, and choosing to take no action is a legitimate outcome recorded in the receipt.

What follows is the whole workflow, not a sketch of it. QuickBooks supplies the event, the agent supplies the reasoning, and the third node does the thing — or deliberately does nothing, which is a recorded outcome rather than a silent one.

QuickBooks workflow: run on a schedule → work out what should change → call the quickbooks api TRIGGER trigger-timer Run on a schedule Every fifteen minutes. ACTION agnt-agent Work out what should change Decides what to change, and why. ACTION custom-api Call the QuickBooks API POST · oauth 2.0 bearer
Runs on your own machine — your QuickBooks credentials stay in a local vault. Every step writes a receipt, including the runs where the agent decided to do nothing.
QuickBooks — read, decide, actpaste into a new workflow
{
  "id": "7b8964bb-1904-4361-acd4-b38a607d1856",
  "name": "QuickBooks — read, decide, act",
  "nodes": [
    {
      "id": "4db5d26a-435b-43f3-a2dc-772b82504afa",
      "text": "Run on a schedule",
      "x": 512,
      "y": 144,
      "isEditing": false,
      "type": "trigger-timer",
      "icon": "clock",
      "category": "trigger",
      "isSelected": false,
      "parameters": {
        "interval": "15",
        "unit": "minutes"
      },
      "description": "Checks QuickBooks every fifteen minutes.",
      "error": null,
      "isActive": false,
      "output": null,
      "outputs": {}
    },
    {
      "id": "b63e397a-b42d-4085-a755-5abfbd2479ea",
      "text": "Work out what should change",
      "x": 512,
      "y": 336,
      "isEditing": false,
      "type": "agnt-agent",
      "icon": "agnt",
      "category": "action",
      "isSelected": false,
      "parameters": {
        "instructions": "Decide what needs to happen in QuickBooks. Explain your reasoning."
      },
      "description": "Decides what needs to happen in QuickBooks, and why.",
      "error": null,
      "isActive": false,
      "output": null,
      "outputs": {}
    },
    {
      "id": "63004fb3-78d4-4fd6-af34-15a7e2caa7e8",
      "text": "Call the QuickBooks API",
      "x": 512,
      "y": 528,
      "isEditing": false,
      "type": "custom-api",
      "icon": "connect",
      "category": "action",
      "isSelected": false,
      "parameters": {
        "url": "https://quickbooks.api.intuit.com/v3/company/{realmId}/invoice",
        "method": "POST",
        "authType": "Bearer",
        "headers": "{\"Content-Type\": \"application/json\"}"
      },
      "description": "POST against the QuickBooks API, authenticated with oauth 2.0 bearer.",
      "error": null,
      "isActive": false,
      "output": null,
      "outputs": {}
    }
  ],
  "edges": [
    {
      "id": "aea901fd-d6a7-4bb5-ab06-20b43562f8de",
      "start": {
        "id": "4db5d26a-435b-43f3-a2dc-772b82504afa",
        "type": "output"
      },
      "end": {
        "id": "b63e397a-b42d-4085-a755-5abfbd2479ea",
        "type": "input"
      },
      "startX": 800,
      "startY": 168,
      "endX": 512,
      "endY": 360
    },
    {
      "id": "383c8026-ca32-4e9c-a04e-f292d248bc04",
      "start": {
        "id": "b63e397a-b42d-4085-a755-5abfbd2479ea",
        "type": "output"
      },
      "end": {
        "id": "63004fb3-78d4-4fd6-af34-15a7e2caa7e8",
        "type": "input"
      },
      "startX": 800,
      "startY": 360,
      "endX": 512,
      "endY": 552
    }
  ],
  "zoomLevel": 1,
  "canvasOffsetX": 0,
  "canvasOffsetY": 0,
  "isTinyNodeMode": false
}

Install Accounts Payable — it runs on QuickBooks

Accounts Payable is a working agent that uses QuickBooks. Installing it drops the whole workflow onto your canvas — connected, editable, and yours to change.

Runs on your own machine · See what it does

The ledger without the keying

Bookkeeping is dominated by transcription: read a document, type eight fields, file it somewhere findable. An agent doing the reading and writing removes most of the labour while leaving the approval — the part that is genuinely accounting — with a person.

Exceptions, not entries

The measure of a good AP automation is how little reaches a human. Clean matches post; price mismatches, duplicates and unknown suppliers queue with the problem stated explicitly rather than buried in a batch.

How to reach QuickBooks from a workflow

Reaching QuickBooks means one custom-api node rather than a purpose-built one. The endpoint and its oauth 2.0 bearer credentials are all it needs, and the zapier-action bridge covers it too if you would rather not hand-roll the request.

What you needValue
Endpointhttps://quickbooks.api.intuit.com/v3/company/{realmId}/invoice
MethodPOST
AuthenticationOAuth 2.0 Bearer
HeaderAuthorization: Bearer {oauthAccessToken}
ReferenceQuickBooks API documentation

Worth knowing: Access tokens expire hourly and the refresh token rotates on every use — store the new one each time or the next call fails.

The part that catches people out

Access tokens expire hourly and the refresh token rotates on every use — store the new one each time or the next call fails.

It is worth getting right first, because the failure is quiet rather than loud — you get a response, it just is not the one you wanted. Once past it, QuickBooks is a straightforward API to automate against.

Connect QuickBooks in two minutes

  1. Download AGNT Community Core — free, local-first, no account needed to run.
  2. Connect with one OAuth sign-in from AGNT’s vault — tokens are stored encrypted on your machine and never leave it.
  3. Drop the QuickBooks node into a workflow or hand it to an agent — the first run produces a receipt you can read line by line.

QuickBooks + AGNT — common questions

Does anything post without approval?

Only within thresholds you set. Many teams approve everything at first and relax it for small clean matches later.

Can invoices be matched to purchase orders?

Yes, including three-way matching where you use goods receipts.

Is there an audit trail?

Every entry links to its source document, the checks that ran and the approval that released it.

Give AI a job. Get the proof.