Advanced guides

Managing repeat coverage

Learn how contractors with an existing policy are automatically covered.


Overview

Contractors that have previously procured coverage using 1099Policy are automatically covered for every subsequent assignment they take provided that it's through the same labor platform they used initially to sign up for insurance. In addition to the APIs detailed in the Getting started section of our documention, we make available an assignment API that labor platforms can use after a contractor has a completed and approved insurance application on file.


Requirements for automatic coverage

The contractor only needs to complete an insurance application once. Once they’ve procured coverage via 1099Policy, every subsequent assignment they take is automatically covered, with the following caveats:

  • the coverage types are the same as what they originally procured (e.g., workers-compensation, general, etc.);
  • the work state hasn’t changed from when the application was completed if seeking workers compensation coverage (e.g., job.address.locality);
  • the residence state hasn't changed from when the application was completed if seeking general liability coverage (e.g., contractor.address.locality);
  • job category hasn't changed from when the application was completed (e.g., job.category_code);
  • the labor platform hasn’t changed (e.g., same as the one used to complete their insurance application);
  • the assignment details are reported back to 1099Policy (assignment api); and
  • the contractor’s card is successfully charged, provided that the contractors is paying via credit card.

If any of the above conditions aren't met, you'll receive an ineligible response similar to the following when making an assignment POST request:

  {
    ...
    "contractor": "cn_Ehb3bYa",
    "eligible": {
      "message": "Job category mismatch. Check that the job category code matches the category code associated with the active policy.",
      "result": false
    },
    "job": "jb_jsb9KEcTpc",
    ...
  }

You can find a more complete list of ineligible messages detailed below. The solution is to simply POST a new quote request with the job and contractor details and create an insurance application session (e.g., session).

Rate change transparency

The goal is to have the contractor experience be seamless while ensuring that the contractor completes an insurance application whenever the underlying factors that determine their insurance rates change.

One thing worth noting is that this contractor convenience (i.e, only having to complete an insurance application once) introduces state management complexity which we highlight in more detail below.


State management

At a minimum, you’ll want to persist the contractor unique ids (e.g., cn_CfjkPfRrAe) and the policy unique ids (e.g., pl_WzFRszJhoY ). You'll want to keep a map between your unique contractor id and the subset of unique ids that get returned from 1099Policy platform (i.e., contractor uid, quote uid, policy uid, etc.). You'll use these to keep up-to-date on the contractor's insurance coverage status. Persisting these details also prevent duplicate email errors, which arise when you create a contractor record with an email that already exists for a tenant organization on 1099Policy platform.


Assignment Eligibility Messages

ResultMessage
trueContractor is pre-approved for insurance coverage.
falseNo policy associated with contractor. Check that the contractor has a valid quote and policy.
falseNo policy associated with contractor. Check that the contractor has a valid policy.
falseNo policy associated with contractor. Check that the contractor policy is active.
falseNo valid job category. Check that job is assigned a valid job category.
falseJob category mismatch. Check that the job category code matches the category code associated with the active policy.
Previous
Designing your workflow