List Candidate Modifiers
Candidate (NOT eligible) modifiers for a CPT/HCPCS code.
Narrows the Super Bill editor’s modifier picker to the union of:
- PROCEDURE modifiers the AMA CPT Modifier Crosswalk associates with the
line’s code (
cpt_modifier->modifierfor the label), and - every INSURANCE modifier, regardless of code.
The union exists because the crosswalk only catalogs procedure modifiers — facts about how a procedure was performed (26 professional component, 50 bilateral). INSURANCE modifiers (the CMS ABN family: GA/GX/GY/GZ) instead describe whether the PAYER covers the line, which turns on the patient’s plan rather than the procedure — so no code->modifier crosswalk can express them, and their absence from it is guaranteed rather than evidence of invalidity. Crosswalk-only candidates hid GY from chiropractic billers, who need it on essentially every line that isn’t 98940/98941/98942.
Final correctness still depends on payer, documentation, POS, provider type, the other claim lines, and encounter context — so these are candidates, and the picker keeps its free-type escape.
An unknown code returns the insurance modifiers (not []): they are
code-independent, and free-typed lines carrying codes absent from the
licensed cpt catalog (e.g. J-codes) are exactly where a biller reaches
for GY.
Each row carries crosswalked — whether the crosswalk pairs it with THIS
code, as opposed to being present only because it is an insurance modifier.
The picker warns about an off-list modifier only for a code the crosswalk
actually has rows for; because insurance modifiers make the list never-empty,
“no rows for this code” is no longer an empty list and needs this flag to
stay detectable. It is derived per request, not the modifier’s stored type.
