California first
Tax & legal
The product is written as a marketplace. Live money is a legal event, not a deploy event. Other states are in the table, dark, until counsel enables them.
Nature of the relationship
- GigRentals LLC does not take title and does not employ drivers or hosts.
- We do not dispatch TNC trips or set Uber/Lyft/DoorDash fares (Period 3 stays on their policy).
- An application or quote is not an offer. Possession needs inspection, hardware, countersignature, and payment.
Insurance periods (already in product math)
| Period | When | Primary |
|---|---|---|
| 1 Off-rental | Car with the owner | Owner personal / commercial |
| 2 Possession, gig app OFF | Per-trip PVSP binder (§ 11580.24) | Driver named insured; owner additional insured; Lula/Tint/ABI |
| 3 Gig app ON | Uber/Lyft/DoorDash engaged | TNC commercial; binder excess |
Tax collection and information returns
rentalTaxBps() returns 0 until TAX_COLLECTION_ENABLED=true and a city BPS table is loaded. That is deliberate: charging the wrong TOT is worse than charging none in demo. Host/driver cash-outs in production require TAX_FORM_1099_ENABLED so Stripe Connect (or our own file) can emit 1099-K / 1099-NEC.
COMPLIANCE_JURISDICTION=US-CA # only CA is liveMoneyAllowed
LEGAL_COUNSEL_REVIEWED=true
TAX_FORM_1099_ENABLED=true
TAX_COLLECTION_ENABLED=true
TAX_CITY_BPS_JSON={"sf":0,"la":0} # counsel fills real bpsTX, NY, FL, WA, and IL exist in JURISDICTIONS with liveMoneyAllowed=false. Countrywide is a series of state packets, not a new server.
Public compliance pages
- /privacy — CPRA notice at collection, categories, retention, rights
- /cookies — session vs device snapshots; GPC
- /privacy/request — access / delete / correct intake
- /disclosures — marketplace, money, tax, insurance, E-SIGN, FCRA
- /licenses — LLC, city, CDI, TOT, seller's permit, 1099, FCRA, no TNC/TCP
- /tax — 2026 NEC $600 / 1099-K $2500 factors
- /admin/compliance — desk copy of the data map and discovery sources
Inventory lives in lib/compliance/catalog.ts so the public pages and the desk cannot drift.