WRAPTORHelp & Docs

Invoicing & billing — bill the customer, take payment, and keep your books in sync

Who it's for

Owners and managers create invoices, record payments, void mistakes, and connect their accounting software. Designers can reach the Invoices tab while working in Billing (they have the Billing & Quotes permission). Production and installer roles do not see Billing by default.

Your customers never log in. They receive a private pay link, review the invoice, and pay by card through a secure checkout — no account required.

Where it fits

Invoicing is the back end of the job lifecycle. After a quote is approved and the work is underway (or done), you turn that quote into an invoice, send it, and collect payment. The job's profitability panel reads invoice totals, so an accurate invoice keeps your margin numbers honest. See workflow-map.md for the full lead-to-paid pipeline.

This page is about billing your customers. The separate matter of paying Wraptor for your own subscription is covered in Plans.

Overview

A Wraptor invoice is a branded bill tied to one job. It carries the same line items, subtotal, tax, and total as the quote it came from. Every invoice gets a unique number in the format INV-0001, INV-0002, and so on, and a default due date 30 days out.

Invoices are always created from an approved quote — there is no "blank invoice" form. This keeps the numbers traceable: the invoice inherits the quote's pricing, and the quote stays linked to it.

You can record payments two ways:

  • Manually, for cash, check, bank transfer, or a card you ran on your own terminal. You type in the amount and method.
  • Automatically, when a customer pays online through their pay link. Wraptor records a Stripe payment and marks the invoice paid for you.

Partial payments are fully supported. If a customer pays a deposit, the invoice moves to Partial and shows the remaining balance. Once the balance reaches zero, it flips to Paid.

Screens & navigation

Invoices tab (Billing → Invoices, /billing?tab=invoices) The Billing page is a tabbed screen with three tabs: Quotes (see Quotes), Invoices, and Pricing (see Settings). The Invoices tab lists every invoice for the shop, newest first. Each row shows the invoice number, the job, the customer, a status badge, the total, the amount paid, and the due date. Clicking a row takes you to that invoice's job.

The header shows running counts of your quotes and invoices.

Invoice panel (inside the job) Most day-to-day invoice work happens on the job itself. Open a job, go to its Quotes & Invoices area, and you'll find each invoice as a card showing:

  • Invoice number and status badge.
  • Total, Paid, Balance, and Due Date.
  • A Mark Sent button (while the invoice is a draft).
  • A Copy Payment Link button (once the invoice is sent or partially paid).
  • A Record Payment button (once sent or partially paid).
  • A Payments list showing each payment's amount, method, reference, and date.

Invoice actions menu A small menu on the invoice offers Download PDF (a branded invoice PDF with your logo, "Bill To" details, line items, totals, and any payments received) and Delete.

Customer pay page (/pay/...) The no-login page your customer sees when you share their pay link. Covered in its own section below.

Accounting settings (Settings → Accounting & Billing) Where an owner or manager connects QuickBooks or Xero and manages sync. Covered below.

Capabilities

Creating invoices

  • Create an invoice from an approved quote. The invoice copies the quote's subtotal, tax rate, tax amount, total, and notes, links to the same job, and sets a due date 30 days out.
  • A quote must already be attached to a job before it can become an invoice.
  • Invoice numbers are assigned automatically in INV-0001 format.

Invoice statuses

  • Draft — created but not yet sent to the customer.
  • Sent — you've marked it sent (and can now share the pay link).
  • Partial — at least one payment is recorded but the balance isn't fully covered.
  • Paid — payments cover the full total; a paid date is stamped.
  • Overdue — past its due date and unpaid (used for emphasis on the pay page and badges).
  • Void — cancelled; it no longer counts as owed.

Sending an invoice

  • Mark a draft invoice as Sent. This stamps the sent date and (if you have email enabled) offers to email the customer.
  • Copy the customer's pay link and send it however you like — email, text, or in person.

Recording payments

  • Click Record Payment on the invoice. The amount field pre-fills with the current balance, so accepting full payment is one click.
  • Choose a method: Check, Cash, Credit Card, Bank Transfer, or Other.
  • Optionally add a reference (check number or transaction ID) and a note.
  • Wraptor adds up all payments and updates the status: Partial if some balance remains, Paid if the total is met.
  • After recording a payment, Wraptor offers to send a "payment received" email to the customer (if email is enabled).

Partial payments

  • Record as many payments as you need. A deposit followed by a balance payment is the common pattern.
  • The invoice shows Total, Paid, and Balance at all times, both inside Wraptor and on the customer's pay page.

Voiding an invoice

  • Set an invoice to Void to cancel it. If it was synced to your accounting platform, Wraptor voids it there too.

Deleting an invoice

  • Delete permanently from the invoice's actions menu. This cannot be undone. Deleting an invoice does not delete the job or the quote it came from.

Downloading a PDF

  • Download a branded PDF of any invoice. It includes your shop's logo and contact details, the customer's billing details, the line items, totals, and a "Payments Received" / "Balance Due" summary.

When you mark an invoice Sent, Wraptor generates a private pay link for it. Click Copy Payment Link on the invoice and send that link to your customer.

What your customer sees on the pay page:

  • Your shop name at the top.
  • The invoice number and job.
  • Their company and vehicle.
  • The itemized list (carried over from the quote), the subtotal, tax, total, anything already paid, and the balance due.
  • A green Pay [balance] button — "Secure card payment powered by Stripe."

When they click Pay, they're taken to a secure Stripe checkout for the outstanding balance only. After paying, they land back on the pay page with a "Payment Successful" banner, and the invoice updates to Paid automatically — you don't have to record anything. If they cancel, they see a "Payment Cancelled" notice and can try again.

A few things worth knowing:

  • The link only offers payment while there's a balance. A fully paid invoice shows "Paid" with no button.
  • The page shows a running Payment History so the customer can see their deposit and balance payments.
  • Online card payments are recorded with the method "Stripe." Manual payments keep whatever method you chose.

Connecting QuickBooks or Xero

Wraptor can keep your invoices, payments, and customers in sync with QuickBooks Online or Xero. Set this up under Settings → Accounting & Billing.

Connecting

  1. Go to Settings → Accounting & Billing.
  2. Click Connect QuickBooks or Connect Xero.
  3. You'll be sent to that provider to sign in and authorize Wraptor, then returned to settings. Your company name shows as connected when it works.
  4. QuickBooks accepts only USD company files — a non-USD QuickBooks file is rejected during connect. (Xero does not currently enforce a currency check.)

What syncs

  • Invoices you create in Wraptor are pushed to your accounting platform.
  • Payments recorded in either place are kept in sync.
  • Customer records are matched and kept up to date.
  • Approved quotes are pushed as estimates (see Quotes).

Sync preferences

  • Auto-sync — when on, changes sync automatically as they happen. Turn it off to sync only on demand.
  • Conflict resolution — choose how to resolve a record edited on both sides:
    • Wraptor Wins — Wraptor's data always takes precedence (the default). A "Paid" status coming from your accounting platform is still accepted, so marking an invoice paid in QuickBooks/Xero will mark it paid in Wraptor.
    • Last Write Wins — the most recent change from either side wins.
  • Sync Now — run a full sync immediately (pushes everything not yet synced, then pulls changes).
  • Recent Activity — a short log of recent sync events with success/error indicators.

Disconnecting

  • Click Disconnect and confirm. This unlinks Wraptor records from the accounting platform (it clears the links on customers, invoices, payments, and quotes) but leaves your Wraptor data intact.

Step-by-step tasks

  1. Create an invoice from an approved quote

    1. Approve the quote and make sure it's attached to a job (see Quotes).
    2. From the job (or from Billing), create an invoice from that quote.
    3. Wraptor generates an INV-XXXX number, copies the pricing, and sets a due date 30 days out.
    4. The new invoice appears as a Draft.
  2. Send an invoice and share the pay link

    1. Open the job and find the invoice card.
    2. Click Mark Sent. The status changes to Sent.
    3. Click Copy Payment Link.
    4. Paste the link into an email or text to your customer.
    5. If prompted, review and send the invoice email from Wraptor.
  3. Take a card payment online (customer self-serve)

    1. Send the customer their pay link (task 2).
    2. The customer opens the link, reviews the balance, and clicks Pay.
    3. They complete the Stripe checkout.
    4. The invoice flips to Paid automatically and the payment shows in the Payments list. No action needed from you.
  4. Record a manual (offline) payment

    1. Open the job and find the invoice card.
    2. Click Record Payment. The amount pre-fills with the balance.
    3. Adjust the amount if it's a partial payment, choose the method (e.g., Check), and add a reference if you have one.
    4. Click Record Payment.
    5. The status updates to Partial or Paid depending on the balance. Send the "payment received" email if prompted.
  5. Handle a deposit, then the balance

    1. When the customer pays a deposit, record it (task 4) or let them pay part online. The invoice moves to Partial and shows the remaining balance.
    2. When the rest comes in, record it (or let them pay the balance online). Once the total is met, the invoice flips to Paid.
  6. Void an invoice

    1. Open the invoice.
    2. Set its status to Void.
    3. If the invoice was synced to QuickBooks/Xero, Wraptor voids it there too.
  7. Connect QuickBooks or Xero

    1. Go to Settings → Accounting & Billing.
    2. Click Connect QuickBooks or Connect Xero and authorize Wraptor (QuickBooks accepts USD company files only).
    3. Choose your Auto-sync and Conflict resolution preferences.
    4. Click Sync Now to push your existing invoices, payments, and customers.

Settings & permissions

Who can access invoices

The Billing & Quotes permission controls the Billing page (and its Invoices tab). By default:

  • Manager — full access (create, send, record payments, void, delete).
  • Designer — has the permission; can view and work with invoices.
  • Production — no access by default.
  • Installer — no access by default.

Owners always have full access. Custom roles can be granted or denied this permission in Settings → Team.

Who can connect accounting

Connecting QuickBooks/Xero lives on the Settings page, which requires the Settings permission. By default only Managers (and owners/admins) have it.

Plan tiers

Invoicing is available on all paid plans (Solo, Starter, Pro, Business, Franchise). The Free Claim tier does not reach the operational dashboard, so it has no Billing area. Accounting sync (QuickBooks/Xero) is not restricted to a specific paid tier — any shop with the Settings permission can connect.

The pay link is public by design

Anyone with an invoice's pay link can view the invoice and pay its balance. The link uses an unguessable token, but treat it like a private link: send it only to the customer.

Tips & common pitfalls

  • Invoices come from quotes, not from scratch. If you can't find a "new invoice" button, that's why — approve a quote, attach it to a job, then create the invoice from the quote.
  • Approved ≠ invoiced. Approving a quote does not create an invoice. It's a separate step, usually after the work is done.
  • One invoice per quote. A quote can back exactly one invoice. To re-bill differently, adjust the source quote.
  • Online payments only cover the balance. The Stripe checkout always charges the remaining balance, so you can't accidentally double-charge a partially paid invoice.
  • You don't record online payments — Wraptor does. When a customer pays via their link, the payment appears automatically. Recording it again would overstate what they paid.
  • Voiding vs. deleting. Void keeps the invoice on record (and cancels it in your accounting platform); delete removes it entirely. Prefer Void if you've already sent it.
  • Overdue is about the due date. An unpaid invoice past its due date is treated as Overdue for emphasis; recording full payment clears it to Paid.
  • USD only for QuickBooks. Connecting a non-USD QuickBooks company file is rejected. Xero does not currently enforce a currency check.
  • "Accounting & Billing" mixes two things. That settings tab holds both the customer-invoice accounting sync (this module) and your own Wraptor subscription (see Plans). They're unrelated despite sharing a tab.
  • Quotes — invoices are created from approved quotes; the quote's line items and totals carry over.
  • Jobs — every invoice belongs to a job; the job's profitability panel reads invoice totals.
  • Customers — the invoice's "Bill To" and the customer pay page come from the customer record.
  • Settings — the Pricing tab and the Accounting & Billing connection live in Settings.
  • Plans — your own Wraptor subscription billing (a different sense of "billing").
  • Workflow map — where invoicing sits in the lead-to-paid pipeline.
  • Personas — how owners, managers, and customers interact with billing.