# Jeremylongshore Claude Code Plugins Plus Skills Guidewire Core Workflow A

> Guidewire Core Workflow A: Policy Lifecycle

- Skill: `tomevault-io/jeremylongshore-claude-code-plugins-plus-skills-guidewir-3` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/jeremylongshore-claude-code-plugins-plus-skills-guidewir-3`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/jeremylongshore-claude-code-plugins-plus-skills-guidewir-3/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/jeremylongshore-claude-code-plugins-plus-skills-guidewir-3

---


# Guidewire Core Workflow A: Policy Lifecycle

## Overview

The complete policy lifecycle in PolicyCenter: account creation, submission, quoting, binding, issuance, endorsements, and renewals via Cloud API.

## Policy Lifecycle States

```
Account -> Submission -> Quote -> Bind -> Issue -> In-Force
                                                    |
                                          Endorse / Renew / Cancel
```

## Instructions

### Step 1: Create Account

```typescript
const account = await fetch(`${GW_PC}/account/v1/accounts`, {
  method: 'POST', headers,
  body: JSON.stringify({
    data: { attributes: {
      accountHolderContact: {
        firstName: 'John', lastName: 'Smith',
        primaryAddress: { addressLine1: '123 Main St', city: 'Atlanta', state: 'GA', postalCode: '30301' },
        dateOfBirth: '1985-03-15',
      },
      producerCodes: [{ id: 'pc:100' }],
    }}
  }),
}).then(r => r.json());
console.log(`Account: ${account.data.attributes.accountNumber}`);
```

### Step 2: Create Submission

```typescript
const submission = await fetch(`${GW_PC}/job/v1/submissions`, {
  method: 'POST', headers,
  body: JSON.stringify({
    data: { attributes: {
      account: { id: account.data.id },
      baseState: 'GA', effectiveDate: '2025-04-01',
      product: { code: 'PersonalAuto' },
      producerCode: { id: 'pc:100' },
    }}
  }),
}).then(r => r.json());
```

### Step 3: Quote -> Bind -> Issue

```typescript
// Quote the submission
await fetch(`${GW_PC}/job/v1/submissions/${submission.data.id}/quote`, { method: 'POST', headers });

// Bind
await fetch(`${GW_PC}/job/v1/submissions/${submission.data.id}/bind`, { method: 'POST', headers });

// Issue
await fetch(`${GW_PC}/job/v1/submissions/${submission.data.id}/issue`, { method: 'POST', headers });
console.log('Policy issued successfully');
```

## Error Handling

| Error | Cause | Solution |
|-------|-------|----------|
| `Cannot quote` | Missing coverages/vehicles | Add required data before quoting |
| `UW hold` | Underwriting referral | Process UW approval in PolicyCenter |
| `Rating error` | Rate table issue | Check product configuration |

For detailed Gosu and API examples, see: [implementation guide](references/implementation-guide.md)

## Resources

- [PolicyCenter Cloud API](https://docs.guidewire.com/cloud/pc/202503/apiref/)

## Next Steps

For claims processing, see `guidewire-core-workflow-b`.

---
> Converted and distributed by [TomeVault](https://tomevault.io/claim/jeremylongshore) — claim your Tome and manage your conversions.
<!-- tomevault:4.0:skill_md:2026-04-11 -->

