Back to Guides
15 min read

Binding Policies

Convert quotes to active policies and process payments.

Overview

Binding a policy converts a quote into active insurance coverage. This process includes payment processing and policy document generation.

Binding a Quote

To bind a quote, provide the quote ID and payment information:

const policy = await coverkit.policies.create({
  quoteId: 'quote_abc123',
  payment: {
    method: 'stripe',
    token: 'tok_visa',  // Stripe payment token
  },
  customer: {
    name: 'John Doe',
    email: 'john@example.com',
    phone: '+1-555-123-4567',
  },
});

Policy Response

{
  "id": "policy_xyz789",
  "quoteId": "quote_abc123",
  "status": "active",
  "product": "shipping_protection",
  "premium": 299,
  "coverage": {
    "itemValue": 15000,
    "coverageLimit": 15000,
    "deductible": 0
  },
  "effectiveDate": "2024-12-20T00:00:00Z",
  "expirationDate": "2024-12-27T00:00:00Z",
  "documents": {
    "policyDocument": "https://api.coverkit.io/documents/policy_xyz789.pdf",
    "certificateOfInsurance": "https://api.coverkit.io/documents/coi_xyz789.pdf"
  },
  "createdAt": "2024-12-20T00:00:00Z"
}

Policy Lifecycle

pending

Policy is being processed

active

Coverage is in effect

expired

Coverage period has ended

cancelled

Policy was cancelled

Payment Methods

CoverKit supports multiple payment methods:

Stripe

Credit/debit cards via Stripe

Invoice

Net-30 invoicing for enterprise

Cancelling a Policy

Active policies can be cancelled with a pro-rated refund:

const cancelled = await coverkit.policies.cancel('policy_xyz789', {
  reason: 'customer_request',
});

// cancelled.refundAmount contains the pro-rated refund

Next Steps