# Vendor W-9 and 1099 tracker in SharePoint before January

> For the full documentation index, see https://250highstreet.com/llms.txt

> Track which vendors have a W-9 on file and who is near $2,000 with a SharePoint list, a flag column and a reminder flow. A tracking aid, not tax advice.

Short answer: make one SharePoint list with one row per vendor, a W-9 status, the date it arrived, and the amount you paid the vendor this year. Add a flag column that turns on at \$2,000, and a weekly Power Automate flow that emails vendors who still owe you a form. This is a tracking aid. It is not tax advice. Ask your tax advisor which vendors need a 1099.

## What the IRS pages say

These facts come from irs.gov pages. They are quoted so you can read the source yourself.

- Due date. The IRS page "Information return reporting" says: "By January 31 of the year following the tax year, file Form 1099-NEC, Nonemployee Compensation". It adds that "you must also furnish a copy of Form 1099-NEC to the recipient by January 31."
- Weekend rule. The IRS Instructions for Forms 1099-MISC and 1099-NEC say: "If any date shown falls on a Saturday, Sunday, or legal holiday in the District of Columbia or where the return is to be filed, the due date is the next business day."
- Calendar check. January 31, 2027 is a Sunday. Under the rule above, that points to Monday, February 1, 2027. The IRS page does not name that date. Confirm it with your tax advisor.
- The \$2,000 mark. The same instructions say that for tax years beginning after 2025, the minimum threshold amount for reporting certain payments "increased to \$2,000 and may be adjusted for inflation beginning in calendar year 2027." For Form 1099-NEC, box 1a, they say: "Enter nonemployee compensation (NEC) of \$2,000 or more."
- Form W-9. The IRS page "About Form W-9, Request for Taxpayer Identification Number and Certification" says: "Use Form W-9 to provide your correct Taxpayer Identification Number (TIN)." The form goes to "the person who is required to file an information return with the IRS."

I do not say which of your vendors need a 1099. The IRS instructions set rules for payment types and special cases, such as card payments reported on Form 1099-K. Your tax advisor decides. The list below only tracks what you decide to track.

## Step 1. Create the Vendors list

Create a blank list in Microsoft 365. Exact names may differ on your screen. Give each column a name without spaces at first, such as W9Status. Rename it afterward. Our advice, not a Microsoft rule: this makes the later filter query easier to write, because Microsoft's Get items page says spaces in a column name are replaced with \_x0020\_ in a query.

Columns:

1.  Title. The vendor's business name.
2.  VendorEmail. Type: Single line of text.
3.  W9Status. Type: Choice, with values 1 Not requested, 2 Requested, 3 Received.
4.  W9Requested. Type: Date and time, date only.
5.  W9Received. Type: Date and time, date only.
6.  PaidThisYear. Type: Number. The total you paid this vendor this calendar year, copied from your payment records.
7.  ThresholdFlag. Type: Calculated. See Step 2.
8.  RemindersSent. Type: Number. Default value 0.
9.  Owner. Type: Person. The person on your team who chases this vendor.
10. W9FileName. Type: Single line of text. The file name of the form in your restricted library.

## Step 2. Add the \$2,000 flag

Microsoft's formula page shows the IF pattern with this example: =IF(\[Column1\]\<=\[Column2\], "OK", "Not OK"). Our advice, not a Microsoft rule: build the flag from the same pattern.

1.  Add a column. Choose Calculated (calculation based on other columns).
2.  Name it ThresholdFlag. Set the data type returned to Single line of text.
3.  Enter this formula: =IF(\[PaidThisYear\]\>=2000,"Review","Under")
4.  Save, then test it on one row with 1999 and one row with 2000.

Why 2000: it matches the \$2,000 figure in the IRS instructions above. If the IRS adjusts the amount, change the number in the formula. Microsoft's page notes that calculated columns cannot reference other rows or other lists, so PaidThisYear has to be a number on the same row.

Our advice, not a Microsoft rule: add a view named Needs a form. Filter it to ThresholdFlag equals Review and W9Status not equal to 3 Received. That view is your list of vendors to chase first.

## Step 3. Keep W-9 forms out of the list

A W-9 holds a taxpayer identification number. Our advice, not a Microsoft rule: do not type that number into any list column, and do not attach the form to a list row. Keep the form in a document library with restricted access, and store only the file name in W9FileName.

To restrict a library:

1.  Open the library. Select Settings, then Library settings. If you see More library settings, select it. Then select Permissions for this document library.
2.  Select Stop Inheriting Permissions. Microsoft's permissions page names this button for breaking inheritance from the parent.
3.  Remove the groups that should not open W-9 forms. Keep only the people who handle vendor payments.

Microsoft's page says that while it is not recommended, breaking inheritance "is a supported scenario within reasonable use." It recommends managing team site permissions through the site's Microsoft 365 group. It also warns that after you remove permissions, "Restoring them will not be possible." Ask your admin before you change permissions on a library other people use.

## Step 4. Build the reminder flow

The flow runs on a schedule, reads vendors with no W-9, and emails each one.

1.  Sign in to Power Automate. Select My flows, then Create from blank.
2.  Choose Add a trigger and pick Recurrence from the results.
3.  Make it weekly: Interval 1, Frequency Week, as Microsoft's scheduling page describes. Then choose a Time zone.
4.  Add the SharePoint action Get items. Choose your Site Address and the Vendors list.
5.  In Advanced options, set Filter Query to: W9Status ne '3 Received' and RemindersSent lt 3
6.  Set Top Count to 5000. Open the action Settings and turn Pagination on. The Get items default limit is 100 and Top Count goes up to 5,000, per Microsoft. See "[Power Automate Get items stops at 100 rows: how to get them all](/guides/power-automate-get-items-only-returns-100/)".
7.  Add Send an email (V2) from Office 365 Outlook. Power Automate wraps it in Apply to each. Set To to the VendorEmail value. Write a short subject and body asking for the W-9.
8.  After the email, add the SharePoint action Update item. Set RemindersSent to the current value plus 1, and W9Status to 2 Requested.
9.  Select Save.

Microsoft's Get items page lists ne and lt among the supported comparisons. Run it once and read the Get items output to confirm it returns the rows you expect.

The count stops the flow from emailing the same vendor without end. Our advice, not a Microsoft rule: this is the guard for a flow that emails outside people. The flow runs on a schedule, so Update item does not start it again. If you ever change the trigger to When an item is created or modified, add a Yes/No column named Reminder sent. Have the flow check that it is not Yes, send, then set it to Yes.

What the email says is your call. Keep it short, name the form, and say who to reply to. Do not ask the vendor to put a taxpayer identification number in the email body.

## Step 5. Year-end check

1.  In early January, open the Needs a form view and chase the rest.
2.  Hand your tax advisor a view of all vendors with ThresholdFlag equal to Review.
3.  After filing, copy the list to an archive and reset PaidThisYear for the new year. See "[Move closed items to an archive list so the main list stays fast](/guides/archive-closed-items-to-another-list/)".

Also see "[How to set up a vendor list with renewal dates in SharePoint](/guides/setup-vendor-list-renewal-dates-sharepoint/)" and "[Send a reminder before a due date in a SharePoint list](/guides/send-reminder-before-due-date/)".

## Honest limits

- This list does not tell you whether a payment counts toward the \$2,000. Your tax advisor does.
- PaidThisYear is a number someone keeps up. The list does not read your bank or accounting system.
- A reminder flow that emails outside people sends real mail. Test it with your own address first.

## When to get help

You can build all of this yourself in Microsoft 365. If you would rather have it built and tested for your team, I do that. A tracker like this is a fixed price: \$5,000 for one, built in 2 weeks. See "[What a SharePoint tracker costs to build](/guides/what-a-sharepoint-tracker-costs/)". Bring one example of the problem to a free call.

I am Al Davies. I run 250 High Street LLC and build SharePoint trackers and Power Automate flows for operations teams. I work remotely. The first call is free, and I will not try to sell you anything.

See trackers I built: [Tools I built](/portfolio/)

## FAQ

### When is the 1099-NEC due for 2026 payments?

The IRS says January 31, and if that date falls on a Saturday, Sunday or legal holiday it moves to the next business day. January 31, 2027 is a Sunday, so ask your tax advisor to confirm February 1, 2027.

### What is the 1099 threshold now?

The IRS instructions say the minimum reporting amount for certain payments increased to \$2,000 for tax years beginning after 2025.

### What vendors receive a 1099?

I do not decide that. The IRS Instructions for Forms 1099-MISC and 1099-NEC set the rules, and your tax advisor applies them to your vendors.

### How do I track 1099 vendors in SharePoint?

Keep one row per vendor with W-9 status, date received and amount paid this year, plus a flag column at \$2,000.

### Should I store tax IDs in a SharePoint list?

Our advice, not a Microsoft rule: no. Keep W-9 forms in a restricted library and store only the file name in the list.

## Sources

- [IRS, Information return reporting](https://www.irs.gov/businesses/small-businesses-self-employed/information-return-reporting)
- [IRS, Instructions for Forms 1099-MISC and 1099-NEC](https://www.irs.gov/pub/irs-prior/i1099mec--2026.pdf)
- [IRS, About Form W-9, Request for Taxpayer Identification Number and Certification](https://www.irs.gov/forms-pubs/about-form-w-9)
- [Microsoft Support, Examples of common formulas in lists](https://support.microsoft.com/en-us/office/examples-of-common-formulas-in-sharepoint-lists-d81f5f21-2b4e-45ce-b170-bf7ebf6988b3)
- [Microsoft Support, Customize permissions for a SharePoint list or library](https://support.microsoft.com/en-us/office/edit-permissions-for-a-list-or-library-02d770f3-59eb-4910-a608-5f84cc297782)
- [Microsoft Learn, In-depth analysis into Get items and Get files SharePoint actions](https://learn.microsoft.com/en-us/sharepoint/dev/business-apps/power-automate/guidance/working-with-get-items-and-get-files)
- [Microsoft Learn, Run a cloud flow on a schedule in Power Automate](https://learn.microsoft.com/en-us/power-automate/run-scheduled-tasks)

## Related guides

- [Certificate of insurance tracker in SharePoint](/guides/certificate-of-insurance-tracker-sharepoint/)
- [Vendor onboarding takes weeks: how to see every stage and speed it up](/guides/vendor-onboarding-takes-weeks/)
- [Event vendor tracker: quotes, deposits and day-of contacts](/guides/event-vendor-tracker-sharepoint/)

Source: https://250highstreet.com/guides/sharepoint-vendor-w9-1099-tracker/
