Skip to main content
2,200+ contractors in the research universe benchmarked. Do you know your gross profit per labor hour? See where you stand →
Level

Software and accounting guide

Roofr: roof measurements, proposals, invoices and payments

Roofr is software for roofing businesses, combining roof measurements, proposals and customer job workflows with invoicing and payment tools.

By Sam Yang · Updated

How Roofr supports the workflow

Who this guide is for: Roofing owners, estimators, sales teams and office managers moving work from a roof estimate to a selected proposal and payment.

Everyday uses

  • Obtain roof measurement reports for estimating.
  • Build proposals with the offered options and the customer’s selection.
  • Follow invoice and payment records for the roofing job.

How it connects to accounting: The accounting handoff starts with the option the customer selected, followed by the invoice and money actually received. Adding every proposal option or treating a scheduled payment request as cash would overstate the job.

How to connect it and get the records you need

A built-in connection transfers the records its vendor supports. An API lets software read or exchange specific records directly. Browser automation may use the screens and reports your role can access when a direct connection leaves a gap. Its coverage and reliability need checking for the specific workflow. Start with the options available in your account, then check what actually reaches your books.

Configured QuickBooks connection

Check which records the account can export through Roofr’s QuickBooks Online connection. The cited documentation describes beta access for US businesses and excludes QuickBooks Desktop; confirm the actual account’s eligibility before relying on it.

Product proposals, invoices and payment records

Keep the chosen proposal option separate from unchosen options. Compare actual received payment evidence with requests and schedules.

Browser assistance

Inspect the selected option or the status of a specific payment when files or the configured connection leave a gap. A general-purpose financial API is not established by this guide.

Start here: Confirm the selected proposal option and actual payment status before comparing the job with QuickBooks.

Integration options and their limits

An API gives software direct access to supported records. Native reports are the files and reports available inside the product. Browser automation collects through the screens you can access. Choose the route that supplies the missing records, then check that it covers the accounts and dates you need. Reports may contain filters or omit rows. Browser work depends on permitted account access and can fail when screens change. Check record IDs, counts and dates whichever route you use.

Supported integration

What it supplies
Current Roofr product and pricing references describe QuickBooks Online exports for contacts, catalog items, invoices and payment information, subject to beta access and regional eligibility.
What to check first
We have not verified a general-purpose API for reading financial records, whether this account can join the beta, or whether the connection matches payments to bank deposits.

Choose it when: Use the supported connection if the account has access and it carries the records needed. Check an existing invoice and payment before relying on it; do not promise unrestricted syncing in both directions.

CSV files exported from Roofr

What it supplies
The saved collection procedure obtains invoice and payment CSV files. Keep the complete original files to show which records were collected.
What to check first
Observed files lacked some job/invoice and settlement fields. That is a property of those observed files, not a claim about every current export.

Choose it when: Start with the bulk files and check their current columns. Then open only the records needed to fill missing details.

Permitted browser detail

What it supplies
The accepted proposal option, invoice detail and payment status in Roofr can explain links missing from an exported file. The saved table-capture procedure keeps all columns, including those reached by scrolling sideways, for the same rows.
What to check first
Row order does not identify a payment. An empty deposit panel does not prove there are no deposits, and a table on screen must be checked for missing rows.

Choose it when: Read the relevant Roofr record to investigate a specific missing link. Capture all needed columns before moving to the next rows.

What to automate and what an accountant should review

Good work for automation

  • Match accepted proposal options to invoices and flag sold work that has no linked invoice.
  • Compare payment exports with settlement records and show which payments still need a bank match.

Keep a person on these decisions

  • Resolve changes to accepted work and decide when revenue should be recorded.
  • Approve payment, refund or sync actions and resolve financing or disputed payment states.

Lessons from accounting and operations

Known problems and what to check

Follow accepted roofing work from proposal to invoice and payment

Start with the complete invoice and payment files. Find the option the customer accepted, then open only the Roofr records needed to match that work to an invoice and payment. A proposal total and a bank receipt answer different questions.

Evidence basis: Saved invoice/payment export sequence and rendered-grid observations. Missing fields describe the observed files, not all current Roofr exports.

Verify current region, plan and beta eligibility, then the supported direction and objects. A successful export does not certify integration coverage.

Several proposal alternatives belong to one opportunity

Identify the accepted option before counting sold work. Adding all alternatives would count choices the customer did not buy.

The payment file lacks the identity needed for settlement matching

Keep the payment as recorded payment activity and obtain the required detail in the product or bank evidence. Do not manufacture a settlement ID from row position.

Start with an API, connection or built-in report that your account offers and you have confirmed. An authorized browser session may collect records those routes leave out; test its coverage for the workflow. Still check the totals against the books and confirm that all relevant costs are included.

Pitfalls and when to pause

Alternative proposal options are not separate won jobs. Confirm the exact product and account access to the integration before using a workflow.

How a plausible answer can go wrong

Counting every proposal option as booked work and filtering invoices by due date can produce a polished year-to-date number with the wrong set of records. Complete rows do not fix that definition.

Pause if you cannot confirm the account, permission, reporting dates or completeness of the records. Return the missing evidence for review. Do not fill the gap with an invented record, a balancing entry or an assumed zero.

When the result does not make sense

Sold-work total includes every proposal option

Check: Check whether alternative options share one proposal and only one was accepted.

Resolve the question: Add only the options the customers accepted, keeping alternative options listed as choices rather than sales.

Year-to-date sales changed after filtering by due date

Check: Compare payment due dates, invoice issue dates and proposal acceptance dates. State which date the sales report is meant to use.

Resolve the question: Group invoices by the agreed billing date. Use due dates to plan collection follow-up; your finance reviewer decides when revenue is recorded.

Roofr payment exceeds the bank deposit

Check: Trace the exact payment, fees, settlement date and any financing state or reversal.

Resolve the question: Show the payment amount, fees and expected versus actual bank deposit dates. Leave uncertain payment-to-deposit matches unresolved; equal amounts alone do not identify a receipt.

Collect the records and check nothing is missing

Accepted option and invoice
Preserve the relationship if available; inspect detail where the observed CSV does not supply status, issue date or job linkage.
Invoice and payment CSVs
Export the complete records from the product before deriving the requested period; due date alone is not an earned-revenue reporting date.
Rendered grid and bank evidence
Capture all horizontal fields for the same rows. The observed Not funded label and an empty settlement screen do not establish settled cash or the absence of settlements.

Verify current integration eligibility. Retain accepted option, invoice and payment identities with the selected status/date filters; compare source invoices and payments with the books.

Step-by-step collection notes

Dated saved collection procedure reviewed October 6, 2026. Verify the current account, interface, permission and available reports. Menu names may differ.

  1. Verify the rendered company and intended team.
  2. Open Invoices, then Export to CSV > Export all. Retain the original file before deriving a selected-period view.
  3. Open Payments > Export to CSV and retain the original payment file.
  4. Inspect actual columns and set of records. The observed files omitted some invoice/job and settlement fields, so retain necessary detail in the product separately.
  5. If collecting rendered rows, capture columns reached by scrolling sideways before scrolling vertically and compare retained rows with the declared set of grid rows, excluding its header. Row position is not a transaction’s own record ID.
  6. Do not use Send, Create payment, Record payment, Edit, Delete or sync controls during collection. An empty settlement screen cannot establish that settlements do not exist.

Checks before using the records

  1. Confirm the account access before assuming a QBO connection is available.
  2. Identify the accepted proposal option rather than summing alternative options.
  3. Keep the resulting invoice and payment identities for comparison with the books.

Fictional collection example

A fictional proposal contains two alternative roof options and one accepted selection. The alternatives are choices, not two won jobs. Return the selected option and its invoice trail. A missing invoice link stays an exception rather than another inferred sale.

Invented teaching scenario, not a customer result or a reproduced vendor defect.

Capture the setup with the evidence

  • Company, legal entity or account, report name, period, cash or accrual accounting basis, currency and timezone.
  • Selected filters, status, page count, original record identifiers, record counts and totals used to check completeness.
  • Collection time, source route and authorized role. Record browser and automation versions when using a browser.
  • Original files and exceptions. Keep credentials, customer identifiers and financial artifacts private.

A browser version helps reproduce an interface issue. It does not validate the financial conclusion.

Practical workflows

Practical checks you can follow

Which roof jobs were sold, which were invoiced, and which were paid?

Start with the option the customer actually accepted. Other priced proposal options are choices, not additional sales. Match the accepted work to its invoice, then follow each payment to the bank deposit. A payment schedule shows what you plan to collect; a due date shows when payment is required. Neither shows that the money reached the bank.

Match the accepted proposal option to its invoice
  1. Confirm the team and the account’s access to the integration. Current product and pricing pages describe a beta QuickBooks Online connection; the pricing page restricts it to US businesses and excludes QuickBooks Desktop.
  2. Keep the proposal number, alternative options and the option the customer accepted. Confirm the acceptance rather than counting every priced option as a sale.
  3. The saved October 6 sequence uses Invoices > Export to CSV > Export all. Keep the complete original file before filtering it to the dates you need.
  4. Check the columns in the exported file. If it lacks a job reference, issue date or status, open the relevant record in Roofr to find that information. A row number is not an invoice or job ID.
  5. Compare the accepted work with the invoice amount and list approved changes separately. Choose the invoice date or another agreed reporting date; do not automatically use the payment due date as the sales date.

Bring to the review: A list linking proposals, accepted options and invoices, with agreed changes and missing links shown separately.

Then decide: Ask the billing owner about accepted work with no invoice. Your finance reviewer separately decides when the sale belongs in the accounts.

Follow a customer payment to the bank
  1. Collect Payments > Export to CSV under the saved procedure and retain payment IDs, invoice references, amounts and dates that the file actually supplies.
  2. Keep planned instalments separate from payments received or recorded. A September official masterclass explains that scheduled payments not yet received do not become QuickBooks Online export options.
  3. Open the payment or financing detail in Roofr to find the missing link. Keep its displayed status; a Not funded label does not prove that money reached the bank.
  4. Collect the payment processor’s deposit records and the bank activity for the same currency and reporting dates. Explain fees, timing, reversals and amounts still pending.
  5. List each identified payment and whether its deposit is confirmed or pending. Do not press Record payment, Create payment, Send, Edit or sync controls while gathering the records.

Bring to the review: A payment-to-bank comparison showing the customer’s payment, fees, expected deposit, actual deposit and amounts still waiting to settle.

Then decide: Ask the owner to review missing links. Count cash received only when bank records support it, and keep scheduled payments on a separate follow-up list.

Worked example

One accepted option, one deposit, one settlement

All records and amounts below are fictional teaching inputs. CSV files are spreadsheet-compatible text files. This example demonstrates the calculation, not a customer outcome or a reproduced software defect.

The two alternatives sum to $22,000, but accepted work is $12,000. The scenario has a $3,000 received deposit and a deliberately fictional $90 fee, leaving $2,910 settled. The $9,000 difference between invoicing and this deposit is still unpaid in this simplified example. Fee amounts are invented, not a Roofr price quote.

What the CSV columns mean
  • option_id: Fictional proposal option
  • accepted: Explicit teaching selection
  • amount: Fictional USD
  • kind: Cash bridge component
All options
22000 USD
A choice total, not sold work
Accepted value
12000 USD
Only the selected option
Expected net settlement
2910 USD
Received deposit less fictional fee
Unpaid invoice portion
9000 USD
Invoicing less received deposit, with no credits/refunds assumed
Inspect roofr-options.csv
option_id,accepted,amount
OPTION-DEMO-A,no,10000
OPTION-DEMO-B,yes,12000
Download this CSV
Inspect roofr-cash.csv
kind,amount
invoiced,12000
received,3000
fee,90
settled,2910
Download this CSV

Next decision: Prove actual invoice applications and settlement evidence before carrying this bridge into an accounting or cash report.

Run the example locally

Save the CSV files, expected-results.json and reproduce.mjs in one folder. With Node.js installed, run the command below. It calculates the checks from the CSV bytes and rejects a changed input or expected result.

node reproduce.mjs expected-results.json

No software login, customer records or API key is required.

AI prompt for collecting records without changing them

Replace the bracketed scope before use. This prompt collects evidence; it does not permit edits, approvals or accounting execution. Requesting an emailed report is a separate account action and requires explicit authorization.

Collect read-only evidence for Roofr to answer [financial question]. Confirm [company], [account/entity], [period], [basis], [currency] and [allowed reports]. Verify current integration eligibility. Retain accepted option, invoice and payment identities with the selected status/date filters; compare source invoices and payments with the books. Retain original files, complete record IDs, counts, filters, collection timestamp and exceptions. Alternative proposal options are not separate won jobs. Confirm the exact product and integration entitlement before using a workflow. Stop if the source or scope is uncertain. Do not post, match, reconnect, delete or change settings. Return the evidence for financial review; do not claim the books are correct. Do not approve, submit payroll, pay, transfer, refund, send messages, invite users or accept terms. Stop at any login, MFA or credential prompt and hand back to the account owner. Store files only in [approved private location]. Do not paste customer artifacts into public tools. Use only preauthorized collection actions. Request an emailed report only when its delivery is explicitly authorized; otherwise ask the account owner to supply the file.

Next decision

What can you decide from these records?

Which accepted work was invoiced, which source payments are identified, and which payments have bank settlement evidence? Keep each unanswered link visible before reporting cash or sales.

Compare the same records, accounts and reporting dates. List costs or payments you cannot yet verify before using the result for pricing, cash planning or month-end review.

Read the next finance check →

References behind these workflows

Each product reference supports only the features and limits described beside that source. Level's checks and fictional calculations are separate from what the vendor documents.

Read the product and workflow references with their scopes and review datesExplore the financial diagnostic examples

Sources and scope

Base product-reference scopes were reviewed . The collection procedure retains its own review date in the dated sequence above. Individual source rechecks are dated with their citations. Operator decision guidance was reviewed 2026-10-09. The references below support their stated product scope, not every observed interface detail. It is not a vendor capability certification, a measured customer result or an independently reconciled account. Verify current features and what your plan includes in the account you use.

  • Roofr CRM product and eligibility reference

    Product reference: Current CRM features and integration eligibility.

  • Roofr product suite

    Product reference: Roof measurement, multi-option proposals, invoice and payment product scope; no speed, price or universal integration claim. Reviewed .

    Product reference: Multi-option proposals, invoice/payment workflow and QBO export product scope. Reviewed .

    Workflow reference: Multi-option proposals, invoice/payment workflow and QBO export product scope. Reviewed .

  • Roofr current pricing and eligibility

    Product reference: Current QBO beta scope, US eligibility and Desktop exclusion. No pricing claims are derived from the teaching data. Reviewed .

    Workflow reference: Current QBO beta scope, US eligibility and Desktop exclusion. No pricing claims are derived from the teaching data. Reviewed .

  • Roofr September payment masterclass

    Product reference: Official demonstration distinguishes scheduled payment requests from received payments eligible for QBO export. Reviewed .

    Workflow reference: Official demonstration distinguishes scheduled payment requests from received payments eligible for QBO export. Reviewed .

Content revision history