Overview

The Health Insurance Card model extracts and structures information from US health insurance cards, including member information, prescription details, plan information, and Medicare/Medicaid data. The model handles various card formats and insurance types.

Model Details

  • Model ID: HEALTH_INSURANCE
  • Supported Locales: en-US
  • Version: GA
  • Release Date: November 30, 2024

Schema Structure

Root Level Fields

FieldTypeDescription
Insurerstring?Health insurance provider name
MemberMember?Member information
DependentsDependent[]Array of dependents
IdNumberIdNumber?Identification number information
GroupNumberstring?Insurance Group Number
PrescriptionInfoPrescriptionInfo?Prescription information
Pbmstring?Pharmacy Benefit Manager
EffectiveDatestring?Plan effective date
CopaysCopay[]Array of copay benefits
PayerPayer?Payer information
PlanPlan?Plan information
MedicareMedicaidInfoMedicareMedicaidInfo?Medicare/Medicaid information

Member Fields

FieldTypeDescription
Namestring?Member name
BirthDatestring?Member date of birth
Employerstring?Member employer
Genderstring?Member gender
IdNumberSuffixstring?Identification Number Suffix

Dependent Fields

FieldTypeDescription
Namestring?Dependent name

ID Number Fields

FieldTypeDescription
Prefixstring?ID number prefix
Numberstring?ID number

Prescription Information Fields

FieldTypeDescription
Issuerstring?ANSI issuer identification number
RxBINstring?Prescription issued BIN number
RxPCNstring?Prescription processor control number
RxGrpstring?Prescription group number
RxIdstring?Prescription identification number
RxPlanstring?Prescription Plan number

Copay Fields

FieldTypeDescription
Benefitstring?Co-Pay Benefit name
Amountnumber?Co-Pay required amount

Plan Fields

FieldTypeDescription
Numberstring?Plan number
Namestring?Plan name
Typestring?Plan type

Type Definitions

import type {
  Member,
  Dependent,
  IdNumber,
  PrescriptionInfo,
  Copay,
  Payer,
  Plan,
  MedicareMedicaidInfo,
  HealthInsuranceCard,
  HealthInsuranceCardResponse,
  StrictHealthInsuranceCardResponse
} from '@your-package/models';

Validation Rules

Basic Validation

  • All fields are optional by default
  • Dependents and Copays default to empty arrays if not specified

Strict Validation

The following fields are required in strict mode:

  • Insurer
  • Member.Name
  • Member.BirthDate
  • IdNumber.Number
  • Plan.Name
  • Plan.Type

Example Usage

import { validateHealthInsuranceCard, healthInsuranceCardUtils } from '@your-package/models';

// Example health insurance card data
const cardData = {
  Insurer: "PREMERA BLUE CROSS",
  Member: {
    Name: "ANGEL BROWN",
    BirthDate: "1958-01-06",
    Gender: "M"
  },
  IdNumber: {
    Prefix: "ABC",
    Number: "123456789"
  },
  GroupNumber: "1000000",
  Plan: {
    Name: "HEALTH SAVINGS PLAN",
    Type: "PPO"
  }
};

// Validate the card
const validatedCard = validateHealthInsuranceCard(cardData);

// Access validated data through result property
const memberId = healthInsuranceCardUtils.getFullMemberId(validatedCard.result);

Date Handling

The model accepts dates in multiple formats:

  • ISO 8601 datetime strings
  • YYYY-MM-DD format
  • MM/DD/YYYY format
  • MM-DD-YYYY format

All dates are converted to ISO format during validation.

Best Practices

  1. Always validate cards before processing:
const card = validateHealthInsuranceCard(cardData);
  1. Use full member ID for lookups:
const memberId = healthInsuranceCardUtils.getFullMemberId(card);
  1. Format copay amounts consistently:
const formattedCopay = healthInsuranceCardUtils.formatCopayAmount(copay.amount);
  1. Check card validity:
if (!healthInsuranceCardUtils.isCardValid(card)) {
  // Handle invalid card
}
  1. Handle prescription information carefully as it may be on a separate card

  2. Preserve original ID numbers and group numbers as strings