From guidewire-pack
Executes Guidewire ClaimCenter claims workflow: FNOL creation, reserves, payments, and settlement using TypeScript REST API calls.
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin guidewire-packThis skill is limited to using the following tools:
Claims lifecycle in ClaimCenter: First Notice of Loss (FNOL), investigation, reserve setting, payment processing, and settlement.
Implements Guidewire PolicyCenter policy lifecycle via Cloud API: create accounts/submissions, quote, bind, issue, endorse, renew policies.
Implements durable multi-step workflows on Cloudflare Workers with retries, state persistence, sleeps, event waiting, and NonRetryableError handling. Use for long-running tasks.
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Share bugs, ideas, or general feedback.
Claims lifecycle in ClaimCenter: First Notice of Loss (FNOL), investigation, reserve setting, payment processing, and settlement.
FNOL -> Investigation -> Reserve -> Payment -> Settlement -> Close
const claim = await fetch(`${GW_CC}/claim/v1/claims`, {
method: 'POST', headers,
body: JSON.stringify({
data: { attributes: {
lossDate: '2025-03-15T14:30:00Z',
lossCause: { code: 'vehcollision' },
lossType: { code: 'AUTO' },
policyNumber: 'PA-000001',
description: 'Rear-end collision at intersection',
reporter: {
firstName: 'John', lastName: 'Smith',
primaryPhone: { phoneNumber: '555-0100' },
},
}}
}),
}).then(r => r.json());
console.log(`Claim created: ${claim.data.attributes.claimNumber}`);
await fetch(`${GW_CC}/claim/v1/claims/${claimId}/reserves`, {
method: 'POST', headers,
body: JSON.stringify({
data: { attributes: {
reserveAmount: { amount: 5000, currency: 'usd' },
costType: { code: 'claimcost' },
costCategory: { code: 'body' },
}}
}),
});
await fetch(`${GW_CC}/claim/v1/claims/${claimId}/payments`, {
method: 'POST', headers,
body: JSON.stringify({
data: { attributes: {
paymentType: { code: 'partial' },
amount: { amount: 3000, currency: 'usd' },
payee: { contact: { id: claimantContactId } },
}}
}),
});
| Error | Cause | Solution |
|---|---|---|
Policy not found | Invalid policy number | Verify policy exists and is in-force |
Reserve exceeds limit | Authority level exceeded | Escalate to supervisor approval |
Payment validation | Missing payee info | Add contact details before payment |
For detailed implementation, see: implementation guide
For common errors, see guidewire-common-errors.