$NailMyPay
← All guides

Getting pay apps into your books: the QuickBooks file and the CSV

Once a pay app is sent, the money is coming. The books are where it needs to be recorded, and most subs do that by typing the same numbers into a second system. Typing is slow, and every retyped number is a chance for a mistake.

There are two ways to avoid the retyping, and the reason for both is simple: subs don't all keep their books the same way.

The QuickBooks Online file. QuickBooks Online can import invoices from a file. A pay app becomes one invoice, with a single line for the amount the GC is paying this period, after retainage. That's the number that will sit on the receivable in the books, so the books match what will actually arrive. The invoice number carries the job's code and the pay app number, so two jobs' pay app 1s don't clash in the same company.

We've tested this on a QuickBooks sandbox. A file exported from the app imports as one invoice with the right customer, the right amount after retainage, and the right due date. A customer who doesn't exist yet is rejected, unless you tick the box to create customers during import. A duplicate invoice number is rejected, which is why the number carries the job's code. A partial payment recorded in QuickBooks leaves the invoice showing the balance still due.

The limits are real, and worth knowing before you import. QuickBooks takes up to 100 invoices in one import, and it won't accept negative lines. Intuit's help says invoice import can't be used when sales tax is set up in your account. We haven't tested that case yet, so check with your bookkeeper if you charge sales tax on your services.

The plain CSV. Not every bookkeeper uses QuickBooks. Many use Excel, Google Sheets, or another accounting system that reads a comma-separated file. The plain CSV contains the same numbers in a neutral layout, so it can go into almost any of them. It's also the file to keep as your own record, because it doesn't depend on any one product's import rules.

Why both exist. The QuickBooks file is built for one specific import. The CSV is built for anyone. A sub who uses QuickBooks can import in one step. A sub who doesn't can still take the numbers across without retyping. Neither one changes what the GC or the client sees on the pay app itself.

A file isn't a record of changes. Whichever file you use, keep it with the pay app it came from. If the numbers change after the export, the file is out of date, and the QuickBooks invoice won't update when you import a new file. A changed pay app needs the invoice edited by hand. The app shows when a pay app has changed since its last export, so you know which file to replace.

NailMyPay gives you both exports on every submitted pay app, and it records the date of each export.

Try it on one of your own pay apps

NailMyPay produces the G702/G703 and the progress invoice, checks the math before anything goes out, and keeps the record of every change. Your first pay app is free.

Next: Halfway through a job, how did we get here? (the job record) →