guides:claim-rules:modifier-rules
Table of Contents
Modifier Rules
Add, remove, or replace modifiers on claim service lines. Filter by payer and CPT codes. This module replaces the need for hardcoded modifier logic — you can configure any modifier change per payer.
Applies to: Professional (837P), Institutional (837I), Dental (837D)
When to Use This
- A payer requires modifier 25 on E/M codes when billed with a procedure
- You need to replace modifier 59 with the appropriate X-modifier (XE, XP, XS, XU) per payer
- Telehealth claims need modifier GT, 95, or FQ depending on the payer
- A payer rejects a specific modifier and you need to remove it
- You need to add modifier 26 (Professional Component) for specific CPT codes
Fields
| Field | Required | Description |
|---|---|---|
| Start Date | Yes | When this rule becomes active |
| End Date | No | When this rule expires |
| Payer Number | No | Only apply for a specific payer. Blank = all payers |
| Action | Yes | Add Modifier (1), Remove Modifier (2), or Replace Modifier (3) |
| Modifier Value | Yes | The modifier to add, remove, or find (for replace) |
| Replacement Modifier | Only for Replace | The modifier to replace with (only visible when Action = Replace) |
| CPT Codes | No | Comma-separated CPT codes. Only apply to service lines with these codes. Blank = all service lines |
| Modifier Position | No | Auto/Any = first available slot for Add, any matching position for Remove/Replace. Or pick a specific position (1-4) |
| Notes | No | Your reference notes |
Actions Explained
- Add — Puts the modifier in the specified position. If “Auto”, finds the first empty modifier slot. Won't overwrite existing modifiers in Auto mode.
- Remove — Finds the modifier on the service line and clears it. If position is “Any”, removes it from whichever slot it's in.
- Replace — Finds the modifier on the service line and swaps it with the replacement. If position is “Any”, replaces it wherever it's found.
Examples
Example 1: Add Modifier 25 for E/M Codes
Add modifier 25 to all E/M codes for Aetna.
| Field | Value |
|---|---|
| Payer Number | 60054 |
| Action | Add Modifier |
| Modifier Value | 25 |
| CPT Codes | 99211,99212,99213,99214,99215 |
| Modifier Position | Auto |
Example 2: Replace Modifier 59 with XE
Medicare wants modifier 59 replaced with XE (Separate Encounter).
| Field | Value |
|---|---|
| Payer Number | 00882 |
| Action | Replace Modifier |
| Modifier Value | 59 |
| Replacement Modifier | XE |
| Modifier Position | Any |
Example 3: Add Telehealth Modifier
Cigna requires modifier 95 on telehealth E/M codes.
| Field | Value |
|---|---|
| Payer Number | 62308 |
| Action | Add Modifier |
| Modifier Value | 95 |
| CPT Codes | 99211,99212,99213,99214,99215 |
| Modifier Position | Auto |
Example 4: Remove Modifier
A payer rejects claims with modifier TC on certain codes.
| Field | Value |
|---|---|
| Payer Number | 00621 |
| Action | Remove Modifier |
| Modifier Value | TC |
| CPT Codes | 80053,80061 |
| Modifier Position | Any |
What Happens on the Claim
- For each service line (Loop 2400), checks the SV1 segment (Professional/Dental) or SV2 segment (Institutional)
- Modifiers are in the procedure code composite element: positions 2-5 correspond to modifiers 1-4
- Add: Sets the modifier in the specified or first empty position
- Remove: Clears the modifier from the matching position(s)
- Replace: Swaps the old modifier with the new one in the matching position(s)
- A warning is logged for each service line modified (e.g., “Added modifier 25 on 99213”)
- Shows in Applied Validation Modules as “ModifierRuleModule”
guides/claim-rules/modifier-rules.txt · Last modified: by brad.sharp
