careCycle
Reference

Book of Business Field Reference

Every field, format, and matching rule for Medicare and ACA customer and policy imports.

This is the complete field and matching reference for book of business imports and syncs. For the step-by-step import walkthrough, see Import Your Book of Business.

careCycle uses upsert logic for all imports and syncs: if a matching record already exists, it gets updated; if not, a new record is created.

Medicare Matching

Customer matching cascade

  1. mbiNumber is checked first as the primary identifier.
  2. lastName + dateOfBirth + phoneNumber is used as the fallback if there is no MBI match. The MBI is updated on the record if matched this way.

Policy matching cascade

  1. sunFireEnrollmentCode is checked first if present.
  2. planCode + effectiveDate is used as the fallback if there is no SunFire code match.

Medicare plan code rules

For Medicare Advantage and Part D policies, planCode should be a CMS contract-style code. Dashes are optional in the import or sync payload, and careCycle stores the canonical dashed form.

policyTypeAccepted contract prefixesAccepted examplesStored as
MA / MAPDH or RH1234-001-000, H1234001000, H1234-001H1234-001-000
PDPS, H, R, E, or XS1234-001-000, S1234001000, S1234-001S1234-001-000
MSCarrier-specificPlan G, Aetna Plan NStored as provided, except trailing -null cleanup

For Medicare Advantage and Part D, the final three-digit segment is optional. If you send contract+plan only (for example H3146-036), careCycle infers the segment from CMS reference data and stores the complete code: it uses the plan's only segment when there is exactly one, defaults to -000 for a non-segmented plan, and rejects the record only when the plan has multiple segments (in which case include the segment to disambiguate).

ACA Matching

Customer matching cascade

  1. healthSherpaCustomerId
  2. externalId, meaning your system's customer ID
  3. carrierAssignedCustomerId
  4. lastName + dateOfBirth + phoneNumber

Policy matching cascade

  1. healthSherpaPolicyId
  2. carrierAssignedPolicyId

For ACA, when a new policy is created, any existing policies for that customer with an effective date more than one year ago are automatically terminated.

Required Fields

Customer Fields

These fields are required for all books.

FieldFormatExample
firstName1-255 charactersMargaret
lastName1-255 charactersThompson
phoneNumber+1XXXXXXXXXX, XXXXXXXXXX, or (XXX) XXX-XXXX+13125551234

Medicare Customer Fields

FieldFormatExample
mbiNumberMedicare Beneficiary Identifier1EG4-TE5-MK73

TCPA Compliance Fields

At least one of these must be present on every record. Without a time zone or postal code, outbound campaigns will not fire for that contact.

FieldFormatExample
postalCode5 digits60614
timezoneIANA time zone or abbreviationAmerica/Chicago

Medicare Policy Fields

FieldFormatExample
policyTypeMA, MAPD, MS, or PDPMAPD
carrierName1-255 charactersHumana
planName1-255 charactersHumana Gold Plus HMO
planCodeCMS contract-style code for MA, MAPD, and PDP; carrier-specific for MSH1036-228
effectiveDateMM/DD/YYYY or MM-DD-YYYY01/01/2026
enrollmentDateMM/DD/YYYY or MM-DD-YYYY10/22/2025
aorNpnAgent of Record NPN, max 50 characters8245019
writingAgentNpnWriting Agent NPN, max 50 characters8245019

ACA Policy Fields

policyType is automatically set to ACA on import. No policyType column is needed.

FieldFormatExample
carrierNameMax 255 charactersBlue Shield of California
planNameMax 255 charactersBlue Shield Silver 70 PPO
planCodeMax 255 characters93689CA0620004
effectiveDateMM/DD/YYYY or MM-DD-YYYY01/01/2026
enrollmentDateMM/DD/YYYY or MM-DD-YYYY12/10/2025
aorNpnAgent of Record NPN, max 50 characters8245019
writingAgentNpnWriting Agent NPN, max 50 characters8245019

Including these is highly recommended. They unlock more capable campaigns, better task automations, and richer member context for Cora.

  • Customer details: externalId, email, dateOfBirth, address, city, state, language
  • Communication preferences: doNotCall, doNotSMS, doNotEmail, doNotMail
  • Policy details: policySubType, policyNumber, applicationId, status, electionPeriod
  • ACA-specific: exchangeStatus, metalLevel, usingSubsidy, subsidyAmount, grossPremium, netPremium, paidThroughDate, gracePeriodStartDate, healthSherpaPolicyId
  • Commission and financial: monthlyPremium, deductible, outOfPocketMax, initialCommission, renewalCommission, policyLives
  • Ancillary premium payments: premiumMode, paymentMode, paymentMethod
  • Underwriting (life and final expense): heightInches, weightPounds, smokerStatus
  • Final expense and life policy details: deathBenefit, coverageLevel, draftDay, term, maturityDate, riders

Underwriting Fields

Carriers ask for these on life and final expense applications. Supplying them up front means an agent does not have to collect them mid-call.

FieldTypeNotes
heightInchesintegerTotal height in inches, so 6'0" is 72. Not a formatted string.
weightPoundsintegerPounds.
smokerStatusbooleanOmit or send null when unknown. false means confirmed non-smoker, which is not the same answer as unknown.

Final Expense Policy Fields

FieldAccepted valuesExample
deathBenefitdecimal string25000.00
coverageLevelImmediate, Graded/ROP, Modified Level, Standard Level, Preferred LevelImmediate
draftDayinteger 1 to 3115

deathBenefit is the field agents often call "face value"; there is one field for both names. draftDay is the day of the month the premium drafts, not a date. Coverage level names carry age bands at most carriers (Immediate and Graded/ROP typically apply to ages 0 to 79); the field stores the level only.

Ancillary Premium Payment Fields

These fields apply to policy types outside MA, MAPD, PDP, MS, and ACA.

FieldAccepted valuesExample
premiumModeMonthly, Quarterly, Semi-Annual, AnnualMonthly
paymentModeACH, Credit/ debit card, Direct billACH
paymentMethodCredit Card, Debit Card, Check, ACH / Bank Draft, Money Order, Cash, OtherACH / Bank Draft

CSV imports normalize common capitalization and formatting variants to these canonical values. API requests must use one of the accepted values shown above.

Communication preferences are enforced natively. Contacts marked do-not-call or do-not-SMS are automatically suppressed from future campaigns.

Full Sync Field Coverage

For complete sync field coverage via the API, see:

On this page