HCPCS Level II Code
identity.medical.hcpcsHealthcare Common Procedure Coding System Level II code for non-physician services, supplies, and equipment. Format: letter (A-V) followed by 4 digits.
Shape
^[A-V]\d{4}$| Value | Length | Shape |
|---|---|---|
| J1234 | 5 | matches |
| E0114 | 5 | matches |
| A4253 | 5 | matches |
| L3000 | 5 | matches |
| G0008 | 5 | matches |
| J123 | 4 | rejected: one character short |
Background
Origin
HCPCS was established in 1978 to provide a standardised coding system for describing the items and services provided in the delivery of health care.[1] The acronym originally stood for HCFA Common Procedure Coding System, after the Health Care Financing Administration, as CMS was known before 2001.[1] Use of the codes was initially voluntary, and became mandatory for transactions involving health care information with the implementation of the Health Insurance Portability and Accountability Act of 1996 (HIPAA).[1]
HCPCS is divided into two main subsystems, Level I and Level II.[2] CMS maintains the Level II codes, including decisions about additions, revisions and deletions.[2] CMS says the HCPCS Level II coding system began in the 1980s.[2] A third level of local codes, developed by state Medicaid agencies, Medicare contractors and private insurers, was discontinued on December 31, 2003.[1]
Use
A Level II code consists of a single alphabetical letter followed by four numeric digits.[2] The leading letter falls in the range A to V.[3] The letter names a section: A codes cover transportation, medical and surgical supplies, E codes durable medical equipment, J codes drugs administered other than by mouth, and L codes orthotic and prosthetic procedures.[3] C, G, K and Q are listed as temporary code sections.[3] S codes are listed as private payer codes, and T codes as state Medicaid agency codes.[3]
CMS publishes the official code set as an Alpha-Numeric HCPCS File in a quarterly update.[4] Validate codes against the release that matches the date of service, not just the shape, since a well-formed code can be one that was added or retired between releases. (Meridian's view) Keep the column as text: the letter prefix is part of the code, and treating it as a number or trimming it loses the section. (Meridian's view) Upper-case and trim values before matching the letter-and-four-digits shape, so that a stray space or a lower-case letter does not hide a valid code. (Meridian's view)
Where you'll meet it
CMS's Medicare Physician & Other Practitioners by Provider and Service data has an HCPCS_Cd field identifying the specific medical service furnished by the provider.[5] Its data dictionary says that field holds both Level I CPT codes and the Level II codes created by CMS.[5] The same dictionary notes that CMS Level II descriptions in the file are truncated to 256 bytes, so one description can be associated with more than one code.[5]
Sources
- [1]Healthcare Common Procedure Coding Systemsecondary source
- [2]Healthcare Common Procedure Coding System (HCPCS)documentation
- [3]HCPCS Level 2secondary source
- [4]HCPCS Quarterly Update | CMSdocumentation
- [5]Medicare Physician & Other Practitioners - by Provider and Service Data Dictionarydataset
Detection notes
HCPCS Level II maintained by CMS. Letter prefix indicates category (A=transportation/supplies, E=DME, J=drugs, L=orthotics, etc.).
Use it
$ finetype infer -i "J1234" --mode column
→ identity.medical.hcpcs
SELECT ft_infer('J1234');
-- → 'identity.medical.hcpcs'CAST({col} AS VARCHAR)Schema
https://meridian.online/schemas/identity.medical.hcpcs · Frictionless type string
finetype taxonomy identity.medical.hcpcs -o json-schema