Itemize QuickBooks receipts into your project budget categories

Have your AI Agent take QuickBooks expenses that have a receipt attached, attach the receipt in FlipperForce, and break each purchase into line items in the right budget categories.
The Prompt
Copy and Paste this to your AI Assistant
Copy Prompt

Import my QuickBooks expenses that have a receipt attached into FlipperForce, broken out by item. Review mode: [SHOW ME FIRST, or IMPORT CONFIDENT ROWS].

1. Pull my FlipperForce workspace, project list, companies, and expense accounts. For each project an expense could go to, pull its expense categories.

2. Pull my QuickBooks expenses dated in the last 7 days that have a receipt file attached, and download each receipt. If this is the first run, ask me what start date to use. The window overlaps earlier runs on purpose, and step 4 catches anything already imported.

3. Match each expense to a FlipperForce project using the class, then the customer or job, then the location, then a property address in the memo or on the receipt. If none of those points clearly to one project, do not guess. Put it on the review list.

4. Check every expense for a duplicate before importing it. Pull the expense transactions and line items on the matched project for the same window plus 7 days on either side. Compare the QuickBooks total to each transaction's grand total, not to single line items, because the purchase may already be split into many lines. First look for a line item carrying the same QuickBooks reference tag from step 9. Then look for a transaction from the same vendor with the same grand total and a date within 3 days, or line items from that vendor in that window that add up to the same total. Any of these means skip it and list it as a duplicate.

5. Match the vendor to an existing FlipperForce company, allowing for store numbers and spelling differences. If there is no match, list it as a new vendor and do not create it until I approve. If my QuickBooks payment account matches the name of a FlipperForce expense account, use it.

6. Read each receipt and create one line item per item printed on it, with the item description, the amount before tax, a labor or material class, and the best fitting existing expense category on that project. Enter returns and discounts as negative lines and the tax as its own total. The line items plus tax must equal the QuickBooks total to the cent. If they do not, or the receipt is unreadable, do not itemize it. Put it on the review list with the difference. Categories cannot be created through the API, so if no category fits a line, put that expense on the review list.

7. Show me a table with one row per receipt: date, vendor, total, project, company, number of line items, a total for each category, and a status of Ready, Duplicate, or Needs review with the reason. Show me the itemized lines for any receipt I ask about.

8. In show-me-first mode, wait for my confirmation and import only the receipts I approve. In import-confident-rows mode, import only receipts marked Ready, where the project, vendor, and every line's category matched, the itemized total ties to QuickBooks, and no duplicate was found. Leave everything else for me.

9. For each approved receipt, upload the file to the project first, then create one expense transaction with the receipt attached, the line items from step 6, the tax total, and the QuickBooks reference number as the invoice number. End each line item description with a tag like [QB Purchase 1234] so later runs can recognize it.

10. Finish with a summary: how many receipts were imported and the total per project and category, the duplicates skipped, and the review list. Confirm the total imported matches the QuickBooks total for those same expenses, and tell me if it does not.

Do not edit or delete anything in QuickBooks, and do not edit or delete any existing FlipperForce expense.

Your assistant needs to reach QuickBooks and FlipperForce in the same session, so this runs in a client that can do both, such as Claude with a QuickBooks connection turned on and code execution with your FlipperForce API key. To run it daily, save it as a scheduled task in that client.

Uploading a receipt to FlipperForce is a three step process. The API issues an upload intent, the file goes to a signed URL with exact headers and a checksum, then the receipt record is created and attached to the transaction. One receipt links to one transaction.

This is not a sync. QuickBooks stays the source and nothing is written back to it.

The Problem

In QuickBooks, a $2,500 Home Depot run is one line coded to Materials. That is fine for your tax return and useless for job costing. It does not tell you whether you are over on framing, plumbing, or paint.

Breaking it out means opening the receipt, typing thirty items into the right categories, and making sure they still add up to what the card was charged. Nobody has time for that on every receipt, so the budget vs actuals on your flips ends up showing one big Materials number.

The Solution

Your assistant pulls the QuickBooks expenses that have a receipt attached, reads each receipt, and breaks the purchase into its line items, each one assigned to a category in your project budget. A $2,500 Home Depot charge that is one line in QuickBooks becomes 30 line items in FlipperForce, so lumber lands in Framing and fixtures land in Plumbing, and your budget vs actuals shows where the money really went.

The receipt is uploaded and attached to the transaction, and the line items have to add up to the QuickBooks total to the cent before anything is imported. Duplicates are checked against transaction totals, so a receipt already entered by hand or through the bulk importer is skipped. Every imported line carries its QuickBooks reference so the next run knows it is there.

What it will not do: it does not write to, edit, or delete anything in QuickBooks. It does not edit or delete existing FlipperForce expenses, does not invent line items it cannot read off the receipt, does not import a receipt whose lines do not add up to the QuickBooks total, does not guess a project it cannot match, does not create a new vendor without your approval, and does not create expense categories.

Budget vs Actual
Expense Tracker
Receipts
QuickBooks
Expense and receipt
Your assistant
Itemizes by category
You approve
Lines that tie to the total
FlipperForce
Receipt and budget lines
General Setup

This prompt requires a connection to the FlipperForce Public API. Once your AI agent is connected to your account, you can run any prompt in the library.

‍Learn how to connect your AI agent to the FlipperForce Public API

Endpoints Used
GET /user/account, GET /project/list, GET /workspace/{ws}/companies/list, GET /workspace/{ws}/expense-accounts/list, GET /project/{uuid}/expense-categories/list, GET /project/{uuid}/expense-transactions/list, GET /project/{uuid}/expense-line-items/list, POST /workspace/{ws}/companies/create (only on approval), POST /workspace/{ws}/upload-intent, signed PUT to the returned URL, POST /project/{uuid}/receipts/create, POST /project/{uuid}/expense-transactions/create
Considerations Before You Run this Prompt:

Before you run this, check:

  • Your AI is connected to FlipperForce.
  • Your AI is connected to QuickBooks Online in the same session, and that connection can download the files attached to your expenses.
  • Receipts are attached to the expense in QuickBooks and are readable. A blurry photo gets put on the review list rather than guessed at.
  • Your QuickBooks expenses carry the property somewhere: a class, a customer or job, a location, or the address in the memo.
  • Each project has the budget categories you want spend broken into. The API cannot create categories, so load a Repair Estimator template first on any project that has none.

Run it in show-me-first mode and spot check a few receipts against your budget before you schedule it. If you only need the transaction totals moved over, use the daily QuickBooks import prompt instead.

Other AI Prompts