Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ICD-10 Codes for Chiropractic Practice

A curated, machine-readable dataset of the ICD-10-CM diagnosis codes most commonly used in chiropractic practice in the United States — with Medicare-coverage flags, AT-modifier requirements, billable status, and clinical-usage notes.

Built and maintained by the team at ChiroScribe. Used in production for AI-assisted SOAP-note generation, treatment plans, and superbill creation.

Currently includes 80+ codes across spine dysfunction, pain, radiculopathy, disc disorders, syndromes, sprains/strains (with initial/subsequent/sequela encounter codes for MVA and PI cases), headaches, joint pain, tendinitis, neuropathies, and chronic pain.

Install

npm install @chiroscribe/icd10-chiropractic

Or download the raw JSON:

curl -O https://raw.githubusercontent.com/chiroscribe/icd10-chiropractic/main/src/data/codes.json

Use

TypeScript / JavaScript

import { codes, getByCode, getByRegion, getMedicareCovered } from '@chiroscribe/icd10-chiropractic'

const lumbar = getByCode('M99.03')
// {
//   code: 'M99.03',
//   description: 'Segmental and somatic dysfunction of lumbar region',
//   category: 'spine_dysfunction',
//   region: 'lumbar',
//   medicareCovered: true,
//   atModifierRequired: true,
//   billable: true,
//   notes: 'Medicare-covered. AT modifier required. Most commonly billed chiropractic Medicare code.'
// }

const cervicalCodes = getByRegion('cervical')
const medicareCovered = getMedicareCovered()

Raw JSON (any language)

import json, urllib.request
url = 'https://raw.githubusercontent.com/chiroscribe/icd10-chiropractic/main/src/data/codes.json'
codes = json.loads(urllib.request.urlopen(url).read())
lumbar = [c for c in codes if c['region'] == 'lumbar']

Schema

Each code entry has the following shape:

type ChiroIcd10Code = {
  /** The ICD-10-CM code (e.g. "M99.03", "S33.5XXA"). */
  code: string
  /** Full official description from ICD-10-CM. */
  description: string
  /** Loose category for grouping (e.g. "spine_dysfunction", "injury_sprain"). */
  category: string
  /** Anatomic region (e.g. "lumbar", "cervical"). */
  region: string
  /** True if Medicare reimburses for chiropractic care under this diagnosis. */
  medicareCovered: boolean
  /** True if Medicare requires the AT (active treatment) modifier on CPT codes when billing this diagnosis. */
  atModifierRequired: boolean
  /** True if this is a billable code (some parent codes are not). */
  billable: boolean
  /** Optional clinical or billing notes. */
  notes?: string
}

Why this exists

ICD-10 reference tables are widely available but rarely curated for a specific specialty. Chiropractors need to know not just what a code means, but:

  1. Whether Medicare covers it for chiropractic services (most codes outside M99.0x are supportive diagnoses, not primary)
  2. Whether the AT modifier is required to bill active treatment (Medicare requires AT for M99.01–M99.05; without it, claims deny)
  3. Which encounter suffix to use for trauma (S-series): A (initial), D (subsequent), S (sequela) — critical for MVA / PI cases
  4. The maintenance vs. active care distinction (M99.10–M99.15 = maintenance, NOT covered by Medicare; document patient-pay)

This dataset bakes that domain knowledge into the data so downstream tools (EHRs, scribes, AI assistants) don't have to re-derive it every time.

Citing this dataset

You're welcome to use, modify, and redistribute under the MIT license below. If you build something on top of it, a link back to this repo or to https://chiroscribe.io is appreciated but not required.

For academic citation:

ChiroScribe LLC (2026). ICD-10 codes for chiropractic practice (icd10-chiropractic, v0.1.0). GitHub. https://github.com/chiroscribe/icd10-chiropractic

Methodology + caveats

  • Codes are drawn from the FY2026 ICD-10-CM official update.
  • "Medicare covered" flags reflect CMS national coverage policy as of 2026. Local MAC (Medicare Administrative Contractor) policies may differ; verify with your MAC for specific cases.
  • "AT modifier required" reflects Medicare's coverage policy for chiropractic manipulative treatment (CPT 98940-98942). It does NOT apply to non-Medicare payers.
  • Clinical-usage notes are guidance, not a substitute for current coding training or auditor-grade compliance review.
  • This dataset is curated by chiropractic-software practitioners, not by certified medical coders. For audit-critical billing decisions, consult a CPC-certified coder.

Contributing

PRs welcome. Open an issue first for additions outside the existing categories so we can discuss whether the code belongs in the chiropractic-focused subset.

Companion projects

License

MIT — see LICENSE for details.


Maintained by ChiroScribe LLC. Issues, PRs, and corrections welcome.

About

Curated ICD-10-CM diagnosis codes used in chiropractic practice, with Medicare-coverage flags and AT-modifier requirements.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages