Skill596 repo starsupdated 3d ago
finance-1099-prep
Vendor W-9 collection workflow, 1099-NEC vs 1099-MISC vs 1099-K decision tree, contractor classification check (IRS 20-factor + ABC test embedded), TIN matching, backup withholding triggers. Templates only - not personalized tax advice.
Install in Claude Code
Copygit clone --depth 1 https://github.com/FerroxLabs/wayland /tmp/finance-1099-prep && cp -r /tmp/finance-1099-prep/resources/bundled-extensions/business-finance/skills/finance-1099-prep ~/.claude/skills/finance-1099-prepThen start a new Claude Code session; the skill loads automatically.
Definition
SKILL.md
> **Templates and analytical tools only - not personalized financial, tax, accounting, or legal advice.** 1099 issuance is downstream of **worker-classification**. Misclassifying an employee as a 1099 contractor creates back-payroll-tax + penalties + interest + state UI / WC exposure that often exceeds six figures. Run the worker-classification gate (IRS 20-factor + state ABC test) BEFORE issuing any 1099. Review with a qualified CPA / EA / tax attorney before filing.
# Finance - 1099 Prep
Vendor / contractor 1099 preparation workflow. Covers W-9 collection, classification gate, 1099-NEC vs 1099-MISC vs 1099-K selection, TIN matching, and backup-withholding rules.
## Required inputs
- **Filing year** `{filing_year}`
- **Jurisdiction** (US - federal + any state with separate 1099 requirements like CA, MA)
- **Vendor list** - for each vendor paid in the year:
- Legal name + DBA
- Address
- TIN (SSN or EIN)
- Tax classification (sole prop, single-member LLC, partnership, C-corp, S-corp, other)
- Total payments in the year
- Payment method (check / bank ACH / credit card / PayPal / Venmo / Stripe / Zelle)
- Nature of work performed
- Whether worker has been onsite / supervised / using payer-supplied tools (classification factors)
## Worker-classification gate - RUN FIRST
> ⚠️ **Stop. Before issuing any 1099, run the worker-classification gate.** Misclassification is the highest-cost SMB tax error.
### Gate 1 - IRS Common-Law / 20-Factor test
Three control categories:
1. **Behavioral control** - does the payer instruct when, where, how, with what tools, in what sequence?
2. **Financial control** - who provides equipment, who bears the risk of loss, is the worker available to other clients, is there an investment in facilities?
3. **Type of relationship** - written contract, benefits, expected duration, services performed are key activity of payer.
If the payer controls the work, the worker is likely an **employee**, not a contractor. Form **SS-8** (Determination of Worker Status) lets you request an IRS determination if uncertain - note that filing SS-8 may itself trigger an examination of similar workers.
### Gate 2 - State ABC test (CA AB5 + ~20 other states)
Worker is presumed an **employee** unless **all three** prongs satisfied:
- **A.** Free from control and direction in fact and under contract.
- **B.** Performs work outside the usual course of the hiring entity's business.
- **C.** Customarily engaged in an independently established trade, occupation, or business of the same nature.
CA AB5 codified ABC broadly with carve-outs (Borello multi-factor for some occupations). NJ, MA, IL (effective 2025 partial), and others apply variants. **Failing any prong → employee. ABC is harder to satisfy than IRS test.**
### Gate 3 - Section 530 Safe Harbor (Federal)
Section 530 of the Revenue Act of 1978 may protect against IRS reclassification if:
1. All required 1099s were filed on time
2. Worker and similar workers were treated **consistently** as contractors
3. There is a **reasonable basis** for the classification (judicial precedent, prior IRS audit, long-standing industry practice)
Section 530 protects FICA / FUTA / income-tax-withholding. Does NOT protect against state-law claims, ERISA, or worker-side actions.
### Gate 4 - Backup withholding
If the payee:
- Fails TIN matching, OR
- Refuses or fails to provide a W-9, OR
- Has been notified of incorrect TIN by IRS ("B notice")
Then payer **MUST backup withhold at the rate published by IRS for `{filing_year}` (historically 24%)** on reportable payments and remit on **Form 945**. Payer reports backup withholding on the same 1099 in Box 4.
### Gate output
If the worker is reclassified as employee → STOP issuing 1099. Route to `finance-payroll-prep` to set up W-2 payroll (W-4, I-9, state new-hire reporting, withholding, FICA, FUTA, state UI / WC).
## W-9 collection workflow
Before any payment of $50+ to a non-employee, request **Form W-9 (Request for Taxpayer Identification Number and Certification)** from the payee.
- [ ] Send W-9 with the contract / engagement letter; do not pay until W-9 is on file.
- [ ] Verify legal name matches the TIN (SSN or EIN).
- [ ] **TIN matching** - use IRS TIN Matching service (e-Services) before issuing a large-volume 1099 batch. Mismatches trigger IRS B notices and require backup withholding.
- [ ] Confirm tax classification box (sole prop, single-member LLC, partnership, C-corp, S-corp, other LLC, exempt payee).
- [ ] Note **C-corp and S-corp** payees - generally exempt from 1099-NEC reporting (with exceptions: legal services to attorneys ARE reportable regardless of entity type; medical and health care payments ARE reportable to corporations).
- [ ] Retain W-9 in vendor file for at least 4 years after the last reportable payment.
- [ ] Re-collect when vendor's name, TIN, or entity type changes.
## 1099-NEC vs 1099-MISC vs 1099-K decision tree
### 1099-NEC (Nonemployee Compensation)
Use for payments to **non-employees** for services rendered (formerly Box 7 of 1099-MISC; spun off in 2020).
- Threshold: `[1099-NEC threshold for {filing_year}]` (historically $600; **OBBBA-era law schedules raise to $2,000** - confirm effective year for `{filing_year}`)
- Recipient types: independent contractors, freelancers, gig workers, attorneys (ALL legal-services payments regardless of entity), medical/health care providers (also regardless of entity)
- Filing deadline: **January 31** (both to recipient AND to IRS - no later filing for IRS copy)
### 1099-MISC (Miscellaneous Information)
Use for non-service payments:
- Box 1 - Rents (≥$600)
- Box 2 - Royalties (≥$10)
- Box 3 - Other income (prizes, awards) (≥$600)
- Box 5 - Fishing boat proceeds
- Box 6 - Medical and health care payments (≥$600, **even to corporations**)
- Box 7 - Substitute payments in lieu of dividends
- Box 10 - Gross proceeds paid to attorneys (settlement funds, ≥$600 - **not** legal services to your business; thatMore from this repository
architectureSkill
|
bump-versionSkill
Use when bumping the Wayland version: update package.json, run checks, branch, commit, push, create PR, wait for merge, tag release.
fix-issuesSkill
|
fix-sentrySkill
|
i18nSkill
|
oss-prSkill
Use when creating a pull request, after committing changes, or when user invokes /oss-pr. Covers branch management, quality checks, commit, push, and PR creation.
pr-automationSkill
|
pr-fixSkill
|