Skip to main content

clinik.claims

Claims (FHIR Claim) represent healthcare billing requests submitted to insurers for reimbursement. ClinikAPI exposes the most commonly used fields — use the FHIR passthrough for advanced claim scenarios.

create

const { data, meta } = await clinik.claims.create(request): Promise<ApiResponse<Claim>>
FieldTypeRequiredDescription
statusstringYesactive, cancelled, draft
typestringYesinstitutional, oral, pharmacy, professional, vision
usestringYesclaim, preauthorization, predetermination
patientIdstringYesPatient ID
createdstringNoWhen created (defaults to now)
providerIdstringYesProvider (Practitioner/Organization ID)
insurerIdstringNoInsurer Organization ID
prioritystringYesnormal, immediate, deferred, stat
billablePeriod{ start?, end? }NoBillable period
diagnosisArrayNoDiagnoses
procedureArrayNoProcedures
insuranceArrayYesInsurance coverage (min 1)
itemArrayNoLine items
total{ value, currency? }NoTotal claim amount
notestringNoAdditional notes

Insurance Object

FieldTypeRequiredDescription
sequencenumberYesSequence number
focalbooleanYesWhether this is the focal coverage
coverageIdstringYesCoverage resource ID

Item Object

FieldTypeRequiredDescription
sequencenumberYesSequence number
productOrServicestringYesProduct or service code
quantity{ value, unit? }NoQuantity
unitPrice{ value, currency? }NoUnit price
net{ value, currency? }NoNet amount

Example

const { data } = await clinik.claims.create({
  status: 'active',
  type: 'professional',
  use: 'claim',
  patientId: 'pt_abc123',
  providerId: 'Practitioner/prac_dr456',
  priority: 'normal',
  insurance: [{ sequence: 1, focal: true, coverageId: 'cov_ins789' }],
  diagnosis: [
    { sequence: 1, code: 'E11.9' },
    { sequence: 2, code: 'I10' },
  ],
  item: [
    {
      sequence: 1,
      productOrService: '99213',
      unitPrice: { value: 150.00, currency: 'USD' },
      net: { value: 150.00, currency: 'USD' },
    },
    {
      sequence: 2,
      productOrService: '85025',
      unitPrice: { value: 45.00, currency: 'USD' },
      net: { value: 45.00, currency: 'USD' },
    },
  ],
  total: { value: 195.00, currency: 'USD' },
});
Same pattern as other resources. Update supports status only. Search supports patientId, status, use, providerId, dateFrom, dateTo filters.