Guide · Contingent Workforce Programs

How contingent workforce programs require and verify contractor insurance.

In most MSP-run programs the insurance requirement is written into the supplier agreement, and no one checks it for individual contractors until an audit or a claim. The check belongs in onboarding, before the assignment is released, with the result recorded against the contractor and the assignment.

Where it's writtenWhen it's checkedVerify or enrollConnect the VMSAnswer the auditors
Step 1

Write the requirement into the agreements the program already enforces.

A contingent workforce program has three documents that can carry an insurance requirement. Each one does a different job, and a requirement that lives in only one of them tends to go unchecked.

The MSP agreement

The client sets the requirement and the MSP enforces it as part of supplier compliance. Put the lines of coverage, the limits by category of work, and the proof standard in the MSP's scope of work, so certificate review is a named deliverable with a service level.

The contractor agreement

Make coverage a condition of engagement: the contractor carries the listed lines in their own name for the length of the assignment. Say what counts as proof and what happens when coverage lapses: work pauses until it is restored.

The SOW or assignment

The assignment names the category of work and the state where the work is performed. Those two facts decide which lines and limits apply. A program run from Illinois with a freelancer working in New Jersey has a New Jersey requirement.

Set limits by category of work, not per contractor. A program with thousands of contractors cannot negotiate limits one at a time. Your risk team signs off on a short table: category of work, lines required, limits, and whether the client is named as additional insured.

Step 2

Check coverage at onboarding, before the assignment is released.

In many programs, certificate review is a manual queue at the MSP, and it falls behind whenever start dates are close. Moving the check into the onboarding step means every contractor passes it before work begins.

The onboarding step asks each contractor for proof of coverage or offers them a policy. 1099Policy reads the certificates contractors bring, lets contractors who have none buy a policy in their own name, and records the coverage status against the contractor and the assignment.

Your VMS or procurement system decides whether an assignment can start. 1099Policy reports the coverage status to it. The program keeps control of the release decision, and the MSP stops reviewing certificates by hand.

Onboarding compliance in detail →
MSP agreement · Supplier compliance[ REQUIRED // IN SCOPE ]
Onboarding · Coverage step[ VERIFY // OR ENROLL ]
VMS · Assignment release[ READS // STATUS ]
Step 3

Verify the contractors who have coverage. Enroll the ones who don't.

Many independent contractors engaged through a program do not carry a policy of their own. A requirement that only accepts an uploaded certificate stalls those contractors at onboarding, and the program either waives the requirement or loses the contractor.

Path one: verify. The contractor uploads a certificate. COI Review reads the ACORD form and checks the named insured, the policy dates against the assignment, the limits against the category minimums, and the certificate holder and additional-insured fields. A person reviews only the exceptions.

Path two: enroll. The contractor has nothing to send. They apply for a policy in their own name during onboarding, priced to that engagement, and a certificate is issued to the program when the policy is active. The contractor takes out the policy in their own name, and 1099Policy, as the licensed agency, binds it.

How per-engagement coverage works →
01 // Brings a certificate
ACORD 25 read and checked[ PARSED ]
Matched to category minimums[ MATCH ]
Status recorded on the assignment[ ACTIVE ]
02 // Has nothing to send
Applies in their own name[ ENROLL ]
Policy active, certificate issued[ ISSUED ]
Status recorded on the assignment[ ACTIVE ]
Same status, either way.
Both paths end with an active status and a certificate on the contractor's record, which is what the VMS reads.
In practice

Jack Morton runs more than 2,000 freelancers a year through this workflow.

Jack Morton, the brand-experience agency, uses Worksuite as the system of record for its freelance network, with 1099Policy inside the same intake. Freelancers pick up workers' comp and general liability for the specific project, in their own name, in the step that captures their tax forms and deal memo. The certificate attaches to the assignment.

  1. 80+ hours a week returned to the production team
    Mandy Johnson, Production Services Director, counted the time after onboarding, contracts and per-assignment insurance moved into one workflow.
  2. Certificates issued through 1099Policy skip manual review
    "If people get their policies through 1099Policy, we don't review it. We don't even have to look at it." Mandy Johnson, Jack Morton
  3. Coverage is settled before call time
    Freelancers buy their per-assignment coverage during onboarding, so the team no longer decides under deadline whether to accept a certificate below the requirement.
Read the Jack Morton and Worksuite story →
Step 4

Connect coverage status to the VMS through the API.

Programs that run on Worksuite use the existing integration. For other systems, the program's integration team connects to the 1099Policy API, which exposes contractors, jobs, quotes, assignments, certificates and webhook events.

A typical integration creates a quote for the assignment, sends the contractor to a short application, and listens for webhook events that report policy status. The VMS workflow uses that status as a condition on the assignment, in the same way it uses a signed agreement or a completed tax form.

Teams that manage the program through an AI assistant can use the 1099Policy MCP server to look up policies and assignments in plain language.

API documentation →
# quote coverage in the contractor's name
quote = ten99policy.Quotes.create(
    job="jb_8Kq2mXa",
    contractor="cn_Ehb3bYa",
    coverage_type=["workers-comp", "general"],
)

# contractor applies; policy is in their name
session = ten99policy.InsuranceApplicationSessions.create(
    quote=quote.id,
    success_url="https://vms.example.com/onboarding/done",
    cancel_url="https://vms.example.com/onboarding",
)

# webhook events report status to the VMS
Step 5

Keep one record that answers the questions each reviewer asks.

Three different people will ask about contractor coverage, and each one is asking a different question. The record that onboarding produces should answer all three without anyone searching an inbox.

  1. The carrier's premium auditor: "Which contractors carried their own workers' comp during our policy period?"
    Contractors without their own coverage can be added to the client's payroll basis at the workers' comp premium audit. Certificates by contractor and assignment, with policy dates, answer the question directly. Workers' comp audit prep
  2. The claims team: "Whose policy answers this injury?"
    When the contractor is the named insured, the claim goes to the contractor's policy. The record shows the policy, the line, the limits and the dates for the day of the incident.
  3. The state unemployment-tax auditor: "Is this person an employee?"
    This auditor tests classification, and insurance does not answer that question. The answer depends on how the work is directed and paid. Review classification with counsel.

A note on classification. Requiring coverage is an insurance control. In New Jersey, from October 1, 2026, coverage a company requires or encourages is not evidence of independent contractor status under N.J.A.C. 12:11-1.5(g). What changes in New Jersey · Co-employment risk

FAQ

Questions contingent workforce program leads ask.

The client usually sets the requirement and the MSP enforces it as part of supplier compliance, but the answer depends on your MSP agreement. If certificate review is not a named deliverable with a service level, it is likely being done inconsistently or not at all. Moving the check into onboarding makes it happen for every contractor.

Your VMS decides whether an assignment starts, and whether it can use coverage as a condition depends on how its workflow is configured. 1099Policy reports coverage status for each contractor and assignment through the API and webhook events, so the VMS can treat it like any other onboarding condition.

They apply for a policy in their own name during onboarding, priced to that engagement, and a certificate is issued to the program when the policy is active. The contractor stays in the program instead of stalling at a certificate upload.

Coverage in the contractor's own name keeps claims, certificates and premium audits on the contractor's policy. Extending your own workers' comp to contractors may be read as treating them as employees. Review that choice with counsel and your broker.

1099Policy is licensed in every state. Workers' compensation is available in 46 states and DC. North Dakota, Ohio, Washington and Wyoming run monopolistic state funds, where only the state fund can write workers' comp.

Coverage is underwritten by a Fortune 500 carrier rated A+ (Superior) by AM Best. Each contractor takes out their own policy through 1099Policy, which binds it as a licensed agency. The contractor is the named insured.

Treat it as an insurance control. Classification turns on how the work is directed and paid under the applicable test. In New Jersey, from October 1, 2026, required coverage does not count as evidence of independence, and it is not held against the company either. Review classification with counsel.

Call to action section for 1099Policy

Put the coverage check in onboarding, where every contractor already passes.

See how certificate review, per-engagement coverage and a status your VMS can read fit into an existing program.

Kinettix
INVNT
Shiraz
Simon
TechNet