Skip to content

feat: add 5010 Dental (837D / X224A2) map - #184

Open
xuzahn wants to merge 1 commit into
azoner:masterfrom
xuzahn:feat/5010-dental-map-x224a2
Open

feat: add 5010 Dental (837D / X224A2) map#184
xuzahn wants to merge 1 commit into
azoner:masterfrom
xuzahn:feat/5010-dental-map-x224a2

Conversation

@xuzahn

@xuzahn xuzahn commented Jun 19, 2026

Copy link
Copy Markdown

pyx12 ships maps for 5010 Professional (X222A1) and Institutional (X223A2) but not Dental. Add the 837D X224A2 implementation-guide map and register it in maps.xml so files with GS08=005010X224A2 / GS01=HC resolve and validate.

The map reuses the existing codes.xml / dataele.xml — no new code or data-element definitions are required.

Coverage (both layers per project convention):

  • unit: map_index resolves 005010X224A2/HC -> 837.5010.X224.A2.xml / 837D
  • regression: simple_837d drives a clean dental claim through x12n_document; the 999 acks A (IK5A / AK9A11*1) and the JSON output is asserted exact.

pyx12 ships maps for 5010 Professional (X222A1) and Institutional
(X223A2) but not Dental. Add the 837D X224A2 implementation-guide map
and register it in maps.xml so files with GS08=005010X224A2 / GS01=HC
resolve and validate.

The map reuses the existing codes.xml / dataele.xml — no new code or
data-element definitions are required.

Coverage (both layers per project convention):
- unit: map_index resolves 005010X224A2/HC -> 837.5010.X224.A2.xml / 837D
- regression: simple_837d drives a clean dental claim through
  x12n_document; the 999 acks A (IK5*A / AK9*A*1*1*1) and the JSON
  output is asserted exact.

Note: this map carries a few deliberate deviations from the strict
X224A2 IG (SV311 loosened R->S; 2000C/2010CA patient loops, HCP, CN1
and 2010BB REF kept Situational; DN1/DN2 added to 2300) so it parses
both CMS Medicare and commercial dental traffic. Documented in the map
header.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants