new-carrier wizard: flag corp-favorable states (CA/TN/NY) in the entity step
When forming or operating in CA (gross-receipts fee >$250k), TN ($300 vs $20 report), or NY (LLC publication + filing fee), show an advisory with the reason and a one-click 'Use a corporation'. Keyed off wiz.entityState/baseState. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
ffe6f34bc8
commit
d85fdd36d9
1 changed files with 50 additions and 0 deletions
|
|
@ -365,6 +365,20 @@ Sign out
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div class="q-block" id="entity-corp-flag" style="display:none">
|
||||
<div style="background:#fffbeb;border:2px solid #fbbf24;border-radius:10px;padding:16px">
|
||||
<div style="display:flex;gap:10px;align-items:flex-start">
|
||||
<span style="font-size:18px;line-height:1.2">⚠️</span>
|
||||
<div style="flex:1">
|
||||
<div class="flag-lead" style="font-size:14px;font-weight:700;color:#92400e;margin-bottom:4px"></div>
|
||||
<div class="flag-reason" style="font-size:13px;color:#78350f;line-height:1.6"></div>
|
||||
<button type="button" id="flag-pick-corp" style="margin-top:10px;padding:8px 16px;background:#16a34a;color:#fff;font-weight:700;border:none;border-radius:8px;font-size:13px;cursor:pointer">Use a corporation</button>
|
||||
<p style="font-size:11px;color:#a16207;margin:8px 0 0">Not tax advice - we'll confirm the best fit with you before filing.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="q-block">
|
||||
<p class="q-label">Entity type</p>
|
||||
<div class="q-grid" id="q-entity-type">
|
||||
|
|
@ -685,6 +699,7 @@ document.getElementById("q-cargo").addEventListener("change", function(e) {
|
|||
document.getElementById("q-base-state").addEventListener("change", function() {
|
||||
wiz.baseState = this.value || null;
|
||||
updateOperatingStates();
|
||||
if (typeof updateEntityFlag === "function") updateEntityFlag();
|
||||
validateStep0();
|
||||
});
|
||||
|
||||
|
|
@ -748,6 +763,7 @@ document.getElementById("q-has-entity").addEventListener("click", function(e) {
|
|||
selectEntityStrategy("home");
|
||||
}
|
||||
}
|
||||
updateEntityFlag();
|
||||
validateStep1();
|
||||
});
|
||||
|
||||
|
|
@ -760,9 +776,43 @@ function selectEntityStrategy(val) {
|
|||
document.querySelectorAll("#entity-new .entity-opt").forEach(function(o) { o.classList.remove("selected"); });
|
||||
document.getElementById("entity-opt-" + (val === "wyoming" ? "wy" : "home")).classList.add("selected");
|
||||
wiz.entityState = val === "wyoming" ? "WY" : wiz.baseState;
|
||||
updateEntityFlag();
|
||||
validateStep1();
|
||||
}
|
||||
|
||||
// States where a corporation is concretely more favorable than an LLC (verified).
|
||||
var CORP_FAVOR = {
|
||||
CA: { name: "California", reason: "California charges LLCs an extra gross-receipts fee of $900 to $11,790 per year once your California income passes $250,000 - a fee corporations don't pay. Most active trucks gross over $250k, so a corporation is often the cheaper structure here." },
|
||||
TN: { name: "Tennessee", reason: "Tennessee's LLC annual report fee is $300/yr (up to $3,000), versus just $20 for a corporation. A corporation is far cheaper to keep in good standing here." },
|
||||
NY: { name: "New York", reason: "New York makes LLCs (not corporations) publish formation notices in two newspapers - often $600 to $2,000+ in NYC - plus pay a yearly LLC filing fee. A corporation skips both." }
|
||||
};
|
||||
|
||||
function updateEntityFlag() {
|
||||
var box = document.getElementById("entity-corp-flag");
|
||||
if (!box) return;
|
||||
if (wiz.hasEntity !== "no") { box.style.display = "none"; return; }
|
||||
var formSt = wiz.entityState, baseSt = wiz.baseState;
|
||||
var hit = null, via = null;
|
||||
["CA", "TN", "NY"].forEach(function(s) {
|
||||
if (hit) return;
|
||||
if (formSt === s) { hit = s; via = "form"; }
|
||||
else if (baseSt === s) { hit = s; via = "operate"; }
|
||||
});
|
||||
if (!hit) { box.style.display = "none"; return; }
|
||||
var info = CORP_FAVOR[hit];
|
||||
box.querySelector(".flag-lead").textContent =
|
||||
(via === "form" ? "Forming in " : "Operating in ") + info.name + "? Consider a corporation.";
|
||||
box.querySelector(".flag-reason").textContent = info.reason +
|
||||
(via === "operate" ? " Even with a Wyoming LLC, " + info.name + " applies this to any LLC registered to do business there." : "");
|
||||
box.style.display = "block";
|
||||
}
|
||||
|
||||
document.getElementById("flag-pick-corp").addEventListener("click", function() {
|
||||
var corpBtn = document.querySelector('#q-entity-type .btn-opt[data-val="corp"]');
|
||||
if (corpBtn) corpBtn.click();
|
||||
this.textContent = "Corporation selected";
|
||||
});
|
||||
|
||||
// Entity type buttons
|
||||
document.getElementById("q-entity-type").addEventListener("click", function(e) {
|
||||
var btn = e.target.closest(".btn-opt");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue