Learn Owner billing

Update a Procore owner invoice from Excel

Have you ever had sixty contract lines to bill, and every number that decides them living somewhere else?

Owner invoice lines come from the prime contract, so you cannot add them. The job is one number per line, and the evidence for it sits in your cost data.

45 min to do it yourself August 22, 2026
Update a Procore owner invoice from Excel
Quick answer.

You cannot add lines to an owner invoice. Its lines are the prime contract’s schedule of values, and new ones arrive only through approved prime contract change orders. What you can edit is five fields per line, led by Work Completed This Period. Pull the Draft into Excel, pull the cost data beside it, set the current period against that evidence, then sync back to Procore.

01

Open the Draft owner invoice and pull it into Excel

Select the Draft for the current billing period and pull it into the workbook. Every schedule of values line comes across with its scheduled value, what was completed previously, the totals, and the five fields Procore allows you to edit. Markup lines come too, labelled in the Line Type column.

Watch out: only the latest invoice on a prime contract accepts edits. If a newer invoice exists, even an approved one, Procore rejects the Draft and Sandspit hides it from the list.

02

Copy values from an earlier Draft if one exists

If you already started this period’s billing in another Draft on the same contract, copy its editable values in. Sandspit matches on the underlying contract line and reports how many values were restored, how many lines are new and left blank, and how many old lines no longer exist. Nothing is sent to Procore.

Watch out: read the new-and-blank count. Those lines have no billing history on this Draft and are the ones most likely to be missed.

03

Bring the cost evidence into the same workbook

With Pull from Procore, pull the Current Budget, Direct Costs, and Commitment Change Orders onto their own sheets. This data does not become invoice lines. It is what justifies the percentage you bill on the lines that already exist.

04

Fill in work completed for each line

Work down the five editable columns: work completed this period, materials presently stored, and the three retainage fields. Editability is set per line, so a locked cell stays grey. Enter plain numbers, and a zero rather than a blank to clear a value.

05

Review the staged changes and sync to Procore

Each edit is staged against the value it started from. Before writing anything, Sandspit compares every changed field to what is in Procore now. If any moved, the whole run is refused and you are asked to pull again, so a concurrent edit cannot be overwritten. Otherwise lines update one at a time and the totals refresh.

Watch out: Procore only accepts line updates on the latest invoice for a prime contract. A correction to a prior period has to be handled in the current one.

Why owner billing is a different shape to every other Procore import

Most Procore data problems are volume problems. You have three hundred rows and you need them in the system. Owner billing is not that. The rows are already there, they were fixed the day the contract was signed.

The work is that each line asks you a question, and the answer is not on the screen. How much of this did we complete this period? To answer that honestly you need cost-to-date against budget, what the subs have billed, what changed this month, and what is sitting in a yard rather than installed. That data lives in four other places.

The constraint worth understanding first

An owner invoice line is not an invoice line in the way a direct cost or a change event line is. It is a schedule of values line on the prime contract, and the invoice is a window onto it for one billing period.

That has three consequences that catch people out:

  • You cannot create lines. If a line is missing, the prime contract change order behind it has not been approved. The fix is on the contract, not the invoice.
  • Only the latest invoice per contract accepts edits. Procore closes prior invoices, so a correction to an earlier period gets handled in the current one.
  • Most of the line is read-only. Scheduled value, budget code, totals, and balance to finish are derived. Five fields are yours.

The five editable fields

  • Work Completed This Period. The main number, and the one that takes the thinking.
  • Materials Presently Stored. Delivered but not installed. Billable, and easy to forget.
  • Work Retainage Held This Period.
  • Materials Retainage Held This Period.
  • Work Retainage Released This Period. Usually zero until a line closes out.

Whether a given field is editable is set per line, so a locked line stays locked in the sheet rather than failing later at sync.

Frequently asked

Can I add a line to a draft owner invoice?

No, and not because of a tooling limit. An owner invoice’s lines are the prime contract’s schedule of values. New lines appear when a prime contract change order is approved, which happens on the contract rather than on the invoice. If a line is missing from your invoice, the change order behind it has not been approved yet.

Which fields can I actually edit on an owner invoice line?

Five: Work Completed This Period, Materials Presently Stored, Work Retainage Held This Period, Materials Retainage Held This Period, and Work Retainage Released This Period. Everything else on the line is derived from the contract or calculated by Procore. Editability is also set per line. Markup lines lock the two materials fields, and unit-based lines lock work completed this period.

Why does Procore reject my update with "not the last Invoice in this Contract"?

Procore only accepts line updates on the most recent invoice for a given prime contract. Older invoices are closed to edits, so a correction to a prior period has to be handled in the current one. Sandspit turns that error into a plain message and hides Drafts that a newer invoice has superseded.

What happens if someone edits the invoice in Procore while I am working in Excel?

Each staged edit carries the value it started from. Before any line is written, that baseline is checked against what is currently in Procore. If any number moved, the whole sync is refused and nothing is written. Pull the invoice again, and your edits are re-staged against the current values.

Can Excel Copilot fill in the billing amounts for me?

It can do the arithmetic on the sheets you pulled, which is most of the work. Looking up cost-to-date per budget code, converting it to a percent complete, applying it to the scheduled value, and subtracting what was billed previously is mechanical. Deciding whether a line is genuinely that far along is not. Stored materials, lines where cost ran ahead of progress, and retainage release are judgment calls that should stay with the person signing the invoice. This is Excel doing the maths, not a Sandspit feature.

How do markup lines work?

Owner invoices carry two line types: standard payment application lines and markup lines. Both come across into the sheet and are labelled SOV line or Markup in the Line Type column, so markup is visible alongside the lines it applies to rather than hidden in a total. Markup lines have no stored materials, so those two cells are locked.

Applies to

Procore Project Financials, prime contracts with a schedule of values. Only the latest invoice on a contract accepts line updates. Beta, enabled per company.

Step-by-step mechanics, every column, and every error message are in the documentation.

Schedule a Demo

See how Sandspit helps construction teams review budgets, forecasts, and change-event intake before it syncs to Procore.