Remote logo -
Remote logo -

Description

Remote is a global contractor and payroll management platform that helps companies hire, manage, and pay international contractors compliantly, with built-in tax and labor law support.

Products

Fractional Insurance

Automated Certificate Review

Search vendor guides...

Search vendor guides...

Remote Integration Guide

Learn how to integrate Remote’s contractor management platform with 1099Policy to automate fractional insurance, validate COIs, and keep global contractor compliance in sync with every engagement.
Contractor focused

This integration applies only to independent contractors managed in Remote. 1099Policy does not provide coverage for employees or EOR engagements. Ignore any Remote Employment/EOR endpoints.

1. Overview

Connect Remote contractor data to 1099Policy to ensure every engagement is insured or validated before work begins. This integration allows you to automate policy binding, COI validation, and webhook-driven compliance tracking.

You can:

  • Offer fractional, on-demand coverage aligned to contractor engagements.
  • Automatically validate or upload Certificates of Insurance (COIs).
  • Keep compliance in sync through 1099Policy webhooks (policy.*, certificate.*).
  • Map Remote contractor pay to 1099Policy job.wage (cents) and wage_type.
  • Persist Remote contractor and agreement IDs in custom_metadata for reconciliation.

2. Integration Flow

Coverage should activate as soon as a contractor agreement is finalized in Remote and before the official start date. This ensures insurance binds before any deliverables or payments occur.

  • Primary trigger: Contractor agreement finalized or signed.
  • Alternative triggers: Invoice schedule created or updated; contractor start date confirmed.
  • Event delivery: Remote Webhooks (contract.finalized, invoice_schedule.created, etc.)
  • Required data: contract.id, contractor.id, rate.amount, rate.type, start_date, end_date.
  • Authentication: Remote API uses bearer tokens for all requests.

3. Core Concepts

Each Remote object maps to a corresponding 1099Policy resource, ensuring consistent coverage and validation.

Remote Object1099Policy ResourceDescription
Contractor AgreementJob + AssignmentDefines work scope, rate, and coverage window
ContractorContractorRepresents the insured individual
Document (COI upload)CertificateValidates uploaded insurance certificates
Contract IDscustom_metadata.*Used for reconciliation only

4. End-to-End Implementation

Follow these steps to integrate Remote and 1099Policy for contractor insurance compliance.

4.1 Create Contractor

Each Remote contractor must exist in 1099Policy before creating quotes or assignments. Every Contractor requires a unique contact.email to ensure tenant-level uniqueness. Generate a proxy (e.g., <contractor_id>@relay.yourdomain.com) if Remote does not expose an email.

Remote Field1099Policy ContractorNotes
contractor.idcustom_metadata.remote_contractor_idReconciliation key
first_name, last_namecontact.first_name, contact.last_nameRequired
emailcontact.emailRequired; use proxy if missing
countryaddress.countryOptional
region / cityaddress.region / address.cityOptional

Source: Remote (REST)


GET https://api.remote.com/v1/contractors/{contractor_id}
Authorization: Bearer remote_live_***

Destination: 1099Policy (POST /contractors)


POST https://api.1099policy.com/api/v1/contractors
Authorization: Bearer t9k_test_***
Content-Type: application/json
Idempotency-Key: remote-contractor-<CONTRACTOR_ID>


{
  "contact": {
    "first_name": "Jordan",
    "last_name": "Cruz",
    "email": "ctr_8831@relay.yourdomain.com"
  },
  "address": {
    "country": "US",
    "region": "CA"
  },
  "custom_metadata": {
    "remote_contractor_id": "ctr_8831"
  }
}

4.2 Create Job

Jobs represent the engagement’s scope, category, and compensation. Create a Job when a Remote agreement is finalized or ready to begin.

1099Policy Job FieldRemote SourceNotes
nameAgreement title or engagement nameRole name
descriptionContract/SOW descriptionScope
entityInternal client/account IDMust exist in 1099Policy
category_codeRole → mapped 1099Policy categoryMaintain mapping
wage (cents)agreement.rate.amount × 100Required
wage_typeDerived from compensation basishourly or flatfee
regionEngagement regionDefaults to contractor region
custom_metadata.contract_idAgreement IDReconciliation
custom_metadata.contractor_idContractor IDReconciliation
custom_metadata.invoice_schedule_idInvoice schedule IDOptional

Source: Remote (REST)


GET https://api.remote.com/v1/contracts/{contract_id}
Authorization: Bearer remote_live_***

Destination: 1099Policy (POST /jobs)


POST https://api.1099policy.com/api/v1/jobs
Authorization: Bearer t9k_test_***
Content-Type: application/json


{
  "name": "Q4 Launch Assets — Contractor Agreement",
  "description": "Deliver landing page, ad set, and brand kit",
  "entity": "en_12AbC3",
  "category_code": "MARKETING_DESIGN",
  "wage": 500000,
  "wage_type": "flatfee",
  "region": "US",
  "custom_metadata": {
    "contract_id": "ct_8f21",
    "contractor_id": "ctr_9a81",
    "invoice_schedule_id": "cis_44fd"
  }
}

4.3 Create Quote

Quotes define the coverage duration and insurance type for each engagement.

1099Policy Quote FieldRemote SourceNotes
contractorContractor mapped from RemoteRequired
jobReturned Job IDRequired
coverage_type[]Coverage requirementse.g., ["general","workers-comp"]
effective_dateContract start date (epoch UTC)Required
end_dateContract end date (epoch UTC)Required
custom_metadata.*Remote IDsReconciliation

Destination: 1099Policy (POST /quotes)


POST https://api.1099policy.com/api/v1/quotes
Authorization: Bearer t9k_test_***
Content-Type: application/json


{
  "contractor": "cn_Kh18Qs",
  "job": "jb_Dl9n42",
  "coverage_type": ["general","workers-comp"],
  "effective_date": 1764300000,
  "end_date": 1766892000,
  "custom_metadata": { "contract_id": "ct_8f21" }
}

4.4 Create Insurance Application Session

Contractors complete this session once to activate their first policy.

Destination: 1099Policy (POST /apply/sessions)


POST https://api.1099policy.com/api/v1/apply/sessions
Authorization: Bearer t9k_test_***
Content-Type: application/json

{
  "quote": "qt_Pf5LmA",
  "success_url": "https://dashboard.remote.com/contractors/ctr_9a81/contracts/ct_8f21?coverage=active",
  "cancel_url": "https://dashboard.remote.com/contractors/ctr_9a81/contracts/ct_8f21?coverage=canceled",
  "custom_metadata": { "invoice_schedule_id": "cis_44fd" }
}

4.5 Create Assignment

Assignments apply coverage automatically for returning contractors who have already completed their opt-in.

Destination: 1099Policy (POST /assignments)


POST https://api.1099policy.com/api/v1/assignments
Authorization: Bearer t9k_test_***
Content-Type: application/json


{
  "contractor": "cn_Kh18Qs",
  "job": "jb_Dl9n42",
  "effective_date": 1764300000,
  "end_date": 1766892000,
  "coverage_type": ["general","workers-comp"],
  "custom_metadata": { "contract_id": "ct_8f21" }
}

4.6 Upload Certificate (BYO-COI)

If a contractor provides their own COI through Remote, upload it to 1099Policy for validation.

Destination: 1099Policy (POST /files/certificates)
(multipart upload)

Fields:

  • certificate=@file.pdf
  • contractor=cn_Kh18Qs
  • custom_metadata[contract_id]=ct_8f21

4.7 Record Invoice (Optional)

If the contractor’s final pay differs from the original estimate, record the actual remuneration for reconciliation and audit. This step is optional and does not affect insurance coverage.

Destination: 1099Policy (POST /invoices)


POST https://api.1099policy.com/api/v1/invoices
Authorization: Bearer t9k_test_***
Content-Type: application/json


{
  "contractor": "cn_ti8eXviE4A",
  "job": "jb_rajdrwMUKi",
  "gross_pay": 1200,
  "paycycle_startdate": 1714419793,
  "paycycle_enddate": 1714419793
}

Unix timestamp

Use Unix seconds (UTC) for paycycle_startdate and paycycle_enddate. See full API reference: https://docs.1099policy.com/group/endpoint-invoice

5. Webhooks

Remote and 1099Policy both rely on webhooks for real-time updates.

SourceEventAction
RemoteAgreement finalized/signedCreate Job and Quote
RemoteInvoice schedule updatedAdjust coverage dates
1099Policypolicy.activeMark contractor insured
1099Policypolicy.canceled / policy.expiredMark unprotected; prompt re-bind
1099Policycertificate.validatedMark COI valid
1099Policycertificate.flaggedFlag for review

6. Testing Checklist

Run these checks to verify that coverage is created, bound, and synchronized correctly.

  • Contractor created (proxy email if missing)
  • Job created with correct wage and category mapping
  • Quote created with proper coverage window
  • Application Session launches successfully
  • Assignment aligns with engagement term
  • COI uploads validated and webhook verified
  • Optional invoice recorded if final pay differs

7. References

  • Remote Developer Docs (Contractors, Contracts, Invoice Schedules, Webhooks)

Was this page helpful?

Yes

No

Was this page helpful?

Yes

No

Was this page helpful?

Yes

No

Was this page helpful?

Yes

No

Was this page helpful?

Yes

No

© Copyright 2024. All rights reserved.

© Copyright 2024. All rights reserved.

© Copyright 2024. All rights reserved.

© Copyright 2024. All rights reserved.

© Copyright 2024. All rights reserved.