Generate 1099s
Calculate 1099 amounts and statuses, understand TIN verification, sync status, grouped forms, form history, and how multi-account organizations generate forms.
Use this page to calculate 1099 amounts and statuses for your contractors, then read the results. Generation works the same way for 1099-NEC and 1099-MISC (Box 6).
You generate 1099s in the Wingspan web app. Generating, listing, and reading 1099 forms isn't available in the V3 API yet. Contact support if you need it.
Before you generate
- Your filing settings are configured, including the form type.
- Every contractor who should get a 1099 is in Wingspan, and every off-platform payment is imported. See Add contractors and off-platform payments.
- You've read 1099 statuses and Recipient information logic.
- You have administrator permissions. Only administrators can generate 1099 amounts and statuses.
- On-platform payments for the year have settled. For the 2025 tax year, generation opened on January 7, 2026.
Generate amounts and statuses
- Go to your tax filing dashboard and click Generate tax forms.
- Wait 3 to 5 minutes while Wingspan calculates amounts and eligibility for each contractor.
- The dashboard lists each contractor with their 1099 status and amount. Open any contractor to see the full form.
You can generate again as often as you need. Regenerating updates only forms that are still synced. Forms you or your team edited by hand keep your edits until you revert them. Before you file, confirm every form, synced or not, contains what you intend to file.
TIN verification
Before generating 1099s, Wingspan re-verifies each contractor's Taxpayer Identification Number (SSN or EIN) and legal name with the IRS.
The IRS matching rules:
- For an individual's SSN, the IRS matches the first four characters of the last name.
- For a business EIN, the IRS matches the first four characters of the business name.
- Matching ignores case, special characters, and spaces.
- When it's unclear whether the TIN is an SSN or an EIN, the IRS checks both.
Each check returns one result:
| Result | Meaning |
|---|---|
| Matched | The name and TIN combination matches IRS records. |
| Not matched | The name and TIN combination doesn't match IRS records. |
| Pending | Wingspan is waiting for the IRS, usually less than one business day. |
A form with a pending or mismatched TIN is marked Action required. A verified TIN lets the form move to Ready. Each check is recorded in the form's History tab, and Wingspan re-verifies automatically when the contractor's information changes.
The 1099 details page
Filing status
Each form has one filing status: Action required, Ready, Submitted, Accepted, Rejected, or Excluded. See 1099 statuses for what each means and what moves a form between them.
Sync status
| Sync status | Meaning |
|---|---|
| Synced | Nobody on your team has edited the form. It updates automatically from the underlying data until it's sent to the IRS. If the contractor changes their tax details before you file, the form picks up the change. |
| Sync disabled | Someone on your team edited the amount, contractor information, or status. The form no longer updates from the contractor profile, so your edits are preserved. |
To go back to synced data, revert your edits.
Grouped forms
Following IRS rules, Wingspan checks the filing threshold for forms that share a TIN using their combined total. A form below the threshold on its own can still need filing if the group total is above it. Wingspan still files each form separately. Grouped forms are labeled on the details page, with the combined total.
History
The History tab records every event on the form:
| Category | Events |
|---|---|
| Payer edits | Changes your team made to name, TIN, amount, address, or status, including turning sync on or off. |
| Tax form updates | Contractor profile changes synced to the form, with before and after values. |
| TIN verification | Requests to the IRS and their results. |
| Submission actions | Submitted, rejected, and accepted. |
| Contractor correction actions | Correction requests for address, amount, or name and TIN. |
| Payer correction request actions | Your acceptance or rejection of correction requests, with reasons. |
| Electronic delivery | Events such as email opened or form downloaded, including repeat deliveries for corrections. |
| Mailed delivery | Sent, delivered, and returned mail, including re-mailing. |
Only changes to the tax form appear here. Onboarding events and contractor profile changes appear in the contractor profile history.
Payments
The Payments tab lists every transaction included in the form's amount, in three groups:
- Off-platform payments: Payments made outside Wingspan (for example, imported with bulk upload), each with its date.
- Adjustments by team members: Manual amount changes, with who made them and the amount.
- Processed payments via Wingspan: Payments processed on the platform.
You can download all payment details as a CSV.
Which tax year a payment counts in
Wingspan calculates 1099 amounts from each payment's paid date (events.paidAt), not the date the contractor receives the funds.
- A standard payment counts in the tax year the payer initiated it.
- An Instant Payout counts in the tax year of the original scheduled payment. For example, a payment scheduled for January 2, 2026 that the contractor pulled early with Instant Payout on December 31, 2025 still counts in the 2025 tax year.
In the API, payables carry this date as events.paidAt. See year-end payment timing.
Multi-account organizations
If you use parent and child Accounts (organization accounts), these rules apply to 1099 generation. See Parent and child accounts for the account model.
The parent sees a roll-up
A parent account's tax filing dashboard shows every 1099 across its child accounts, including children with a different EIN. Each child account still takes its own actions (generate, submit, correct) on its own forms.
If you see several forms for one contractor on the parent dashboard, the contractor was usually paid by more than one account. Each payer and payee relationship produces its own form, even when the accounts share an EIN.
Each account generates its own forms
- Generation runs per account. The parent generates for the contractors it paid; each child generates for the contractors it paid.
- Each account has its own payer information in settings. If a child has a different EIN, set it on the child's payer information before generating.
One contractor, several forms
- When a parent and child share an EIN, a contractor paid by both gets a form from each.
- Forms with the same payer EIN and the same contractor TIN are grouped for the threshold check. Each is filed separately with its own amount.
- More than one 1099 for the same payee under the same EIN is acceptable when separate accounts or divisions paid them.
Example
Northwind Health has three accounts:
- Northwind Health (parent), EIN 1
- Northwind Staffing (child), EIN 1
- Northwind Clinics (child), EIN 2
A contractor is paid $300 by Northwind Health and $400 by Northwind Staffing. Each account generates and submits its own form, so the contractor receives two 1099s. Because both use EIN 1, Wingspan groups them for the threshold check: $700 total, which meets the 2025 threshold of $600.
Another contractor is paid $100 by Northwind Clinics. Only Northwind Clinics can generate and file that form, and it isn't grouped with the others because the EIN is different.
Next steps
Updated 13 days ago