PBF Document Kit

Everything needed to produce a correct Palm Beach Fixer document — invoice, proposal, memorandum or change order — from any AI, on any machine, with nothing installed.

If you are an AI reading this: everything you need is on this page or linked from it. Follow §VII exactly. Do not improvise wording, colours, or layout. Machine-readable tokens: brand.json

I. The business — get these exact

FieldValue
Legal nameThe Palm Beach Fixer LLC
Identity lineFully Insured
Phone(561) 600-8172
EmailJake@ThePalmBeachFixer.com (contact only. Not a payment destination.)
LocationWest Palm Beach, FL
PaymentZelle, to the rail Jake confirms for that document. Never assume one: if Jake has not said which, write ***NEEDS JAKE***. · Stripe secure card link on request.
NEVER write "licensed." There is no Florida handyman licence. The business is an insured professional LLC. Using the word "licensed" anywhere — to describe the business, the work, or the owner — is legal exposure. Check every draft for it before delivering.

II. Colours

NameHexUsed for
SlateCharcoal#1E293BHeadings, header bars, primary text
MutedGold#A87F3DThe accent. Rules, emphasis, the brand mark. The brand gold.
GoldRule#C5A065Lighter secondary gold — rules and frames only. Never the accent.
PageGray#F8F9FAPage ground
LightYellow#FFFBF0Callout boxes
LightSlate#334155Secondary headings
PaidGreen#16A34APAID stamps only
RedDiscount#EF4444Discounts / credits only
BoxGray#F3F4F6Table fills

Greys available: #1A1A1A #374151 #4B5563 #6B7280 #9CA3AF #D1D5DB

HTML documents: the table above is the LaTeX print palette. The phone templates are authoritative for HTML and differ in three places: body ink #111827, box fill #F4F5F7, PAID green #15803D (protocol §3.2).

III. Type

RoleFaceNotes
BodyNoto Sans400 / 600 / 700
HeadingsNoto Serifletter-spacing 0.02em (LaTeX LetterSpace=2.0) — this is distinctive, don't drop it
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;600;700&family=Noto+Serif:wght@400;600;700&display=swap">

body    { font-family:"Noto Sans", system-ui, -apple-system, sans-serif; }
h1,h2,h3{ font-family:"Noto Serif", Georgia, serif; letter-spacing:.02em; color:#1E293B; }

Both are free Google Fonts. Raw .ttf files are also in assets/fonts/ if you need to embed them.

IV. The logo

PBF circle logo, colourassets/logo-circle-color.jpg
PBF circle logo with wordmarkassets/logo-circle-text.png
PBF black and white emblemassets/logo-bw-emblem.png

Use the colour circle for invoices and proposals. The black-and-white emblem is for economy/print-safe documents. Reference them by full URL from this page's location.

V. The two clauses that are never optional

A. Terms of Acceptance & Final Payment — reproduce verbatim

This goes on every final proposal and invoice, positioned directly above the payment section. Only the work-type words change to fit the job (the phone templates fill them from WORK_TYPE_PHRASE). The one other difference: an invoice says "the original scope", a proposal says "the original proposal".

Invoice:

Terms of Acceptance & Final Payment

By submitting payment for this invoice, the Client explicitly acknowledges,
agrees, and confirms that all restoration, sealing, and detail work has been
completed in full, to their absolute satisfaction, and precisely as outlined
in the original scope. Payment constitutes the Client's electronic
signature, effectively closing out this project in full and releasing the
Contractor from any further initial performance obligations.

Payment further constitutes the Client's acceptance of the Client Agreement
terms set forth in this document.

Proposal:

Terms of Acceptance & Final Payment

By submitting payment for this invoice, the Client explicitly acknowledges,
agrees, and confirms that all restoration, sealing, and detail work has been
completed in full, to their absolute satisfaction, and precisely as outlined
in the original proposal. Payment constitutes the Client's electronic
signature, effectively closing out this project in full and releasing the
Contractor from any further initial performance obligations.

Payment further constitutes the Client's acceptance of the Client Agreement
terms set forth in this document.
NO SIGNATURE LINE. Never add one to a final proposal or invoice. Payment is the signature. A signature block on these documents is wrong and must be removed if you find one in any template you are given.

B. Florida exemption disclosure — mandatory on every invoice

Licensing: This service provider is not a licensed contractor. All work
performed constitutes minor maintenance and repair as defined by Florida
Statute 489.103(9). No work requiring a professional contractor license or
building permit has been performed.

This is the one place the word appears, and it appears to disclaim. The exemption cap is $2,500 — raised by ch. 2021-22. Older notes citing $1,000 are out of date.

VI. Document anatomy

TypeMust contain
InvoiceLogo header · client block · invoice no. + dates · itemised scope written as labour and craft, not parts · subtotal/total · Terms of Acceptance · payment methods · FS 489.103(9) disclosure · footer identity line
ProposalLogo header · client block · scope of work · exclusions · pricing · Terms of Acceptance · no signature line
MemorandumLogo header · TO / FROM / DATE / RE block · body · footer identity line
Change orderLogo header · reference to the original job · what changed and why · price delta · revised total · Authorisation (a written reply or payment) · no signature line

Scope lines describe labour, process and craft — not a parts list. "Travel & Vehicle Operating Cost" is the correct label for travel. Cheap line items appear only bundled into a larger scope, never alone.

VII. How to build one — follow exactly

Faster and safer: a §IX phone template already has all of this built in. Build from scratch only when you cannot use one.

  1. Fetch brand.json for the machine-readable tokens.
  2. Build the document as HTML with inline CSS. It renders identically everywhere, prints to PDF from any phone or desktop browser, and needs no compiler.
  3. Link the Google Fonts stylesheet shown in §III. Set 0.02em letter-spacing on headings.
  4. Place the logo with an absolute URL to this page's assets/ directory.
  5. Use only the hex values in §II, with the HTML values noted under its table. Do not approximate the gold.
  6. Insert the §V clauses verbatim. Do not paraphrase, shorten, or "improve" them.
  7. Set @page { size: Letter; margin: 0.30in 0.55in 0.22in 0.55in; } (the phone templates' geometry) and keep the page free of orphans — never break a table row or a clause across pages.
  8. Run §VIII before delivering.
<style>
@page { size: Letter; margin: 0.30in 0.55in 0.22in 0.55in; }
body { -webkit-print-color-adjust:exact; print-color-adjust:exact; }
@media print { .no-print { display:none } body { background:#fff } }
</style>

To produce the PDF: open the HTML in any browser → Print → Save as PDF. Works on iPhone.

VIII. Check before delivering

  1. Logo is present and is the real mark — not a drawn box or placeholder.
  2. The accent gold is #A87F3D. #C5A065 appears only on rules and frames.
  3. Headings are Noto Serif with visible letter-spacing.
  4. Terms of Acceptance present, verbatim, directly above the payment section.
  5. FS 489.103(9) disclosure present (invoices).
  6. No signature line anywhere.
  7. Search the document for "licens" — the only permitted hit is inside the §V-B disclosure.
  8. Footer reads Fully Insured, never "licensed."
  9. Every page breaks cleanly. No half tables, no stranded clause.

IX. Phone templates — the fastest route

Four finished templates. The brand, the layout and every word of the legal text are already in them. The AI writes only a short fill block; it never touches the legal text.

  1. In Gemini or ChatGPT: "Follow https://jedijarvis.pages.dev/PDFKIT/protocol/GEMINI-PDF-PROTOCOL.md. Route A. Give me the INVOICE fill block for: [the job]."
  2. Copy the fill block it returns.
  3. Open the template above, paste into the box, tap Fill document.
  4. Green PASS? Tap Print / Save as PDF. Red STOP? Fix what it lists first. A ***NEEDS JAKE*** is always a STOP: only you can supply that value.
  5. No photos on an invoice? Tap Remove photo page. Page 2 goes, its blanks stop counting, and the invoice prints as 2 pages.
  6. Need to change a line that is already filled? Tap Start over. The page reloads blank with your block still in the box: fix the line and tap Fill again. A second Fill only fills blanks; it cannot change a line already on the page.
  7. iPhone: Share → Print → pinch out on the preview → Share → Save to Files. Turn background graphics on if you see the option.

Protocol for the AI: protocol/GEMINI-PDF-PROTOCOL.md · Before sending: protocol/VERIFICATION-CHECKLIST.md