From 86cf55aa4db7667b96b50c62c7626f13a76ae103 Mon Sep 17 00:00:00 2001 From: ff Date: Sat, 6 Jun 2026 21:11:58 -0400 Subject: [PATCH] feat: AI chat claim confirmation, CDT alias learning, and eligibility auto-trigger fixes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Claim flow: show green confirm card (patient, CDT codes, service date) before Selenium starts - CDT lookup: add DIRECT_CODE_MAP + ALIAS_MAP with 60+ dental abbreviations from office fee schedule (2BW→D0272, 4BW→D0274, PA→D0220, FL→D1208, RCT codes, composite tooth#/surface parser, etc.) - Composite filling parser: auto-map "#29 OB" → D2392 based on tooth# (front/back) and surface count - Ask-and-learn: unknown CDT terms block claim and ask user; answer saved to DB alias map for future use - Cancel on confirm card returns to chat (not full reset) so user can correct and retry - Eligibility auto-trigger fix: reset autoTriggeredRef when autoTrigger resets to false so second chatbot eligibility check on same page visit fires correctly (all 5 provider buttons fixed) - check_eligibility by name now returns eligibility_id_ready with correct siteKey for non-MH patients - DDMA/CCA/United/Tufts fee schedules updated with office prices (single Price field, no age split) - getCodeMap case-insensitive matching fix (ddma/cca/etc. now correctly selected) - Family plan member disambiguation: insuranceId+DOB composite lookup prevents overwriting siblings - AI chat date fix: send clientDate from browser to avoid UTC midnight rollover (EST→wrong day) - AI prompt: appointmentDate extracted for claim_only intent when user says "today" or a date Co-Authored-By: Claude Sonnet 4.6 --- apps/Backend/src/ai/cdt-lookup.ts | 260 ++- apps/Backend/src/ai/internal-chat-graph.ts | 65 +- apps/Backend/src/ai/internal-chat-workflow.ts | 86 +- apps/Backend/src/queue/processors/_shared.ts | 36 +- apps/Backend/src/routes/ai-settings.ts | 24 +- .../src/assets/data/procedureCodesCCA.json | 1401 +++------------- .../src/assets/data/procedureCodesDDMA.json | 1403 +++-------------- .../assets/data/procedureCodesTuftsSCO.json | 1403 +++-------------- .../assets/data/procedureCodesUnitedDH.json | 1403 +++-------------- .../insurance-status/cca-button-modal.tsx | 3 +- .../insurance-status/ddma-buton-modal.tsx | 3 +- .../deltains-button-modal.tsx | 3 +- .../tufts-sco-button-modal.tsx | 3 +- .../united-sco-button-modal.tsx | 3 +- .../src/components/layout/chatbot.tsx | 172 +- .../src/utils/procedureCombosMapping.ts | 50 +- 16 files changed, 1405 insertions(+), 4913 deletions(-) diff --git a/apps/Backend/src/ai/cdt-lookup.ts b/apps/Backend/src/ai/cdt-lookup.ts index 9486e1ed..58602a7d 100644 --- a/apps/Backend/src/ai/cdt-lookup.ts +++ b/apps/Backend/src/ai/cdt-lookup.ts @@ -38,37 +38,220 @@ const CODE_TOKENS: { code: string; description: string; tokens: Set }[] // Common aliases that don't appear verbatim in descriptions const ALIAS_MAP: Record = { - "perio exam": "periodic oral evaluation", - "periodic exam": "periodic oral evaluation", - "recall exam": "periodic oral evaluation", - "adult cleaning": "prophylaxis adult", - "adult prophy": "prophylaxis adult", - "adult prophylaxis": "prophylaxis adult", - "child cleaning": "prophylaxis child", - "child prophy": "prophylaxis child", - "pedo cleaning": "prophylaxis child", - "full mouth xray": "intraoral complete series", - "fmx": "intraoral complete series", - "pano": "panoramic", - "panorex": "panoramic", - "bitewing": "bitewing", - "bw": "bitewing two", - "comp exam": "comprehensive oral evaluation", - "comprehensive exam":"comprehensive oral evaluation", - "new patient exam": "comprehensive oral evaluation", - "limited exam": "limited oral evaluation", - "emergency exam": "limited oral evaluation", - "sealant": "sealant", - "fluoride": "fluoride", - "scaling root planing": "scaling root planing", - "srp": "scaling root planing", - "perio maintenance": "periodontal maintenance", - "crown": "crown", - "extraction": "extraction", - "root canal": "root canal", - "filling": "resin", + // Exams + "perio exam": "periodic oral evaluation", + "periodic exam": "periodic oral evaluation", + "recall exam": "periodic oral evaluation", + "comp exam": "comprehensive oral evaluation", + "comprehensive exam": "comprehensive oral evaluation", + "new patient exam": "comprehensive oral evaluation", + "new patient": "comprehensive oral evaluation", + "limited exam": "limited oral evaluation", + "emergency exam": "limited oral evaluation", + // Prophylaxis / cleaning + "adult cleaning": "prophylaxis adult", + "adult prophy": "prophylaxis adult", + "adult prophylaxis": "prophylaxis adult", + "child cleaning": "prophylaxis child", + "child prophy": "prophylaxis child", + "pedo cleaning": "prophylaxis child", + "kid prophy": "prophylaxis child", + // X-rays + "full mouth xray": "intraoral complete series", + "fmx": "intraoral complete series", + "pano": "panoramic", + "panorex": "panoramic", + "bitewing": "bitewing", + "bw": "bitewing two", + "2bw": "bitewing two", + "4bw": "bitewing four", + "periapical": "periapical first", + // Fluoride / sealant + "sealant": "sealant", + "fluoride": "fluoride", + "fl": "fluoride", + "fl varnish": "fluoride varnish", + "fluoride treatment": "fluoride", + "fluoride application": "fluoride", + "topical fluoride": "fluoride", + // Perio + "scaling root planing": "scaling root planing", + "srp": "scaling root planing", + "srp 4": "scaling root planing four", + "srp 1 3": "scaling root planing one", + "perio maintenance": "periodontal maintenance", + "perio maintains": "periodontal maintenance", + "perio maint": "periodontal maintenance", + // Fillings / restorations + "filling": "resin", + "composite": "resin", + "amalgam": "amalgam", + "core buildup": "core buildup", + "core bu": "core buildup", + "buildup": "core buildup", + // Crowns + "crown": "crown", + "porcelain crown": "porcelain ceramic", + "pfm": "porcelain fused", + "pfc": "porcelain fused", + "high noble crown": "porcelain fused high noble", + "base metal crown": "porcelain fused base metal", + "re cement crown": "re-cement", + "recement crown": "re-cement", + "recement": "re-cement", + "post core": "post and core", + "post and core": "post and core", + // Root canal (endodontic) + "root canal": "endodontic therapy", + "rct": "endodontic therapy", + "endo": "endodontic therapy", + "anterior rct": "endodontic anterior", + "rct anterior": "endodontic anterior", + "premolar rct": "endodontic premolar", + "rct premolar": "endodontic premolar", + "bicuspid rct": "endodontic premolar", + "molar rct": "endodontic molar", + "rct molar": "endodontic molar", + // Extractions + "extraction": "extraction", + "ext": "extraction erupted", + "simple extraction": "extraction erupted", + "surgical extraction": "extraction bone", + "surgical ext": "extraction bone", + "baby tooth ext": "extraction primary", + "baby tooth extraction": "extraction primary", + "primary tooth ext": "extraction primary", + "soft tissue impaction": "impacted soft tissue", + "partial bony": "impacted partially bony", + "partial bony impaction":"impacted partially bony", + "complete bony": "impacted completely bony", + "complete bony impaction":"impacted completely bony", + "root tip": "surgical removal residual", + // Dentures + "full upper denture": "complete denture maxillary", + "complete upper denture":"complete denture maxillary", + "full lower denture": "complete denture mandibular", + "complete lower denture":"complete denture mandibular", + "partial upper denture": "partial denture maxillary", + "partial lower denture": "partial denture mandibular", + // Implant / abutment + "abutment": "abutment", + "implant crown": "implant crown ceramic", + // Suture + "suture": "suture small wound", }; +// Direct phrase → CDT code for terms not in the MH fee schedule JSON +// or short abbreviations that need precise mapping (checked before keyword search) +const DIRECT_CODE_MAP: Record = { + // X-rays + "2bw": "D0272", + "2 bw": "D0272", + "4bw": "D0274", + "4 bw": "D0274", + "pa": "D0220", + "first pa": "D0220", + "2nd pa": "D0230", + "additional pa": "D0230", + "cbct": "D0367", + "cone beam": "D0367", + // Fluoride + "fl": "D1208", + // Perio + "srp 4+": "D4341", + "srp 1-3": "D4342", + // Core / post + "core bu": "D2950", + "p/c": "D2954", + "post core": "D2954", + // Crowns + "recement": "D2920", + "re cement": "D2920", + "porcelain crown": "D2740", + "pfm": "D2750", + "high noble crown": "D2750", + "base metal crown": "D2751", + "noble crown": "D2752", + // Root canal + "rct anterior": "D3310", + "anterior rct": "D3310", + "rct premolar": "D3320", + "premolar rct": "D3320", + "bicuspid rct": "D3320", + "rct molar": "D3330", + "molar rct": "D3330", + "primary anterior rct": "D3230", + "rct primary anterior": "D3230", + "primary molar rct": "D3240", + "rct primary molar": "D3240", + "baby tooth rct": "D3230", + // Extractions + "baby tooth ext": "D7111", + "baby tooth extraction": "D7111", + "primary tooth ext": "D7111", + "surgical extraction": "D7210", + "surgical ext": "D7210", + "soft tissue impaction": "D7220", + "partial bony": "D7230", + "complete bony": "D7240", + "root tip": "D7250", + "suture": "D7910", + // Bone grafts / sinus (not in MH schedule) + "socket preservation": "D7953", + "bone graft socket": "D7953", + "socket graft": "D7953", + "sinus lift": "D7951", + "lateral sinus lift": "D7951", + "lateral sinus": "D7951", + "vertical sinus lift": "D7952", + "vertical sinus": "D7952", + "sinus augmentation": "D7951", + "bone graft": "D4263", + // Implant (not in MH schedule) + "implant": "D6010", + "implant body": "D6010", + "custom abutment": "D6057", + "abutment": "D6057", + "implant crown": "D6058", +}; + +// Composite filling tooth classification +const FRONT_TEETH = new Set([6, 7, 8, 9, 10, 11, 22, 23, 24, 25, 26, 27]); +const BACK_TEETH = new Set([1, 2, 3, 4, 5, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 28, 29, 30, 31, 32]); + +/** + * Parse composite filling notation like "#29 OB", "composite #8 MO", "tooth 11 MOD". + * Returns the correct D233x/D239x code based on tooth location and surface count. + */ +function parseCompositeCode(input: string): CdtMatch | null { + const s = input.trim(); + // Match #NN SURFACES or tooth NN SURFACES (surfaces = 1-5 letters, valid dental surface chars) + const m = s.match(/#(\d{1,2})\s+([A-Za-z]{1,5})\b/) ?? s.match(/\btooth\s+(\d{1,2})\s+([A-Za-z]{1,5})\b/i); + if (!m) return null; + + const toothNum = parseInt(m[1]!, 10); + const surfaces = m[2]!; + + if (toothNum < 1 || toothNum > 32) return null; + // Surfaces must only be dental surface letters (O M D B L F I V) + if (!/^[OMDBLFIV]+$/i.test(surfaces)) return null; + + const surfaceCount = surfaces.length; + const isFront = FRONT_TEETH.has(toothNum); + + if (!isFront && !BACK_TEETH.has(toothNum)) return null; + + let code: string; + if (isFront) { + code = surfaceCount === 1 ? "D2330" : surfaceCount === 2 ? "D2331" : surfaceCount === 3 ? "D2332" : "D2335"; + } else { + code = surfaceCount === 1 ? "D2391" : surfaceCount === 2 ? "D2392" : surfaceCount === 3 ? "D2393" : "D2394"; + } + + const row = ALL_CODES.find((r) => r["Procedure Code"] === code); + return { code, description: row?.Description ?? code, input }; +} + /** * Score how well a set of query tokens matches a code's description tokens. * Each matched token contributes 1 point; shorter descriptions get a bonus @@ -148,14 +331,21 @@ export function lookupCdtCodes( if (customMap[cleaned]) { const code = customMap[cleaned]!; const row = ALL_CODES.find((r) => r["Procedure Code"].toUpperCase() === code); - return { - code, - description: row?.Description ?? code, - input: name, - }; + return { code, description: row?.Description ?? code, input: name }; } - // 2. Hardcoded alias + keyword search + // 2. Composite filling by tooth# and surfaces (e.g. "#29 OB", "composite #8 MO") + const compositeMatch = parseCompositeCode(name); + if (compositeMatch) return compositeMatch; + + // 3. Hardcoded direct code map (short abbreviations / codes not in MH schedule) + if (DIRECT_CODE_MAP[cleaned]) { + const code = DIRECT_CODE_MAP[cleaned]!; + const row = ALL_CODES.find((r) => r["Procedure Code"].toUpperCase() === code); + return { code, description: row?.Description ?? code, input: name }; + } + + // 3. Hardcoded alias + keyword search const match = matchOne(name); if (match) return match; diff --git a/apps/Backend/src/ai/internal-chat-graph.ts b/apps/Backend/src/ai/internal-chat-graph.ts index 2fa38742..d23d10b9 100644 --- a/apps/Backend/src/ai/internal-chat-graph.ts +++ b/apps/Backend/src/ai/internal-chat-graph.ts @@ -31,24 +31,27 @@ export interface ChatClassification { // ─── System prompt ──────────────────────────────────────────────────────────── -const BASE_SYSTEM_PROMPT = `You are an internal assistant for a dental office management app. +function buildSystemPrompt(today: string, extra?: string | null): string { + const base = `You are an internal assistant for a dental office management app. Staff type natural language commands. Your ONLY job is to classify the intent and extract structured parameters. Do NOT map procedure names to CDT codes — return them as plain text. +TODAY'S DATE: ${today} + Respond ONLY with valid JSON (no markdown fences): { "intent": "", "patientName": "", - "memberId": "", - "dob": "", + "memberId": "", + "dob": "", "insuranceHint": "", "procedureNames": ["", ...], - "appointmentDate": "", + "appointmentDate": "", "appointmentTime": "", "fallbackReply": "<1-2 sentence reply to show the user>" } -Omit any field that is not present in the message. +Omit any field that is not present in the message or history. Intents: - check_eligibility : user wants to check insurance for a patient identified by NAME only @@ -66,9 +69,11 @@ Intents: e.g. "add Jane Doe at 10:30" - claim_only : submit a claim for procedures WITHOUT an eligibility check e.g. "claim comprehensive exam and Pano for her" - e.g. "claim D0120 and D1110 for John Smith" - e.g. "bill adult cleaning for Maria" + e.g. "claim D0120 and D1110 for John Smith today" + e.g. "bill adult cleaning for Maria on 05/15/2026" + e.g. "claim perio exam, 2BW for John Smith" Use this when no eligibility check is requested — just billing/claiming services + Always extract appointmentDate when a date or "today" is mentioned - navigate_claims : open the claims page - navigate_schedule : open the appointments/schedule page - general : anything else @@ -76,15 +81,24 @@ Intents: Rules: - For check_and_claim and claim_only, procedureNames should be the RAW user text (e.g. "perio exam", "adult cleaning", "D0120") — do NOT translate to codes +- For composite fillings with a tooth number, preserve the EXACT notation including tooth# and surfaces: + e.g. "composite #29 O", "#8 MO", "composite #11 MOD" — keep the #number and surface letters together as one entry - insuranceHint is only set when the user explicitly names an insurance in the message - Keep fallbackReply to 1-2 sentences - For navigate intents, fallbackReply = "Opening the [page] page..." -- For schedule_appointment, appointmentDate omitted means today; appointmentTime omitted means no preference +- appointmentDate applies to BOTH schedule_appointment AND claim_only/check_and_claim: + always set it to today's date (${today}) when the user says "today", "this visit", or similar + set it to the specified date when the user mentions a date (e.g. "05/15/2026") + omit it only when no date is mentioned at all (the backend will find the last appointment) +- For schedule_appointment, appointmentTime omitted means no preference - IMPORTANT: Use the conversation history to resolve pronouns and references. If the user says "her", "him", "them", "the patient", or "same patient", look back through - the conversation history to find the patient name that was mentioned most recently. - Always populate patientName (or memberId) from history when a pronoun is used. + the conversation history to find the patient name, memberId, AND dob that were mentioned most recently. + Always populate patientName (or memberId) AND dob from history when a pronoun is used. + Family members may share the same memberId — always include the dob so the correct family member is identified. Never return an empty patientName just because the current message uses a pronoun.`; + return extra?.trim() ? `${base}\n\nAdditional office context:\n${extra.trim()}` : base; +} // ─── Classifier ─────────────────────────────────────────────────────────────── @@ -94,7 +108,8 @@ export async function classifyInternalChat( extraSystemPrompt?: string, history: { role: "user" | "assistant"; text: string }[] = [], provider: AiProvider = "google", - model?: string + model?: string, + clientDate?: string // YYYY-MM-DD from the browser's local clock ): Promise { const fallback: ChatClassification = { intent: "general", @@ -104,18 +119,18 @@ export async function classifyInternalChat( if (!apiKey) return fallback; - const systemPrompt = extraSystemPrompt - ? `${BASE_SYSTEM_PROMPT}\n\nAdditional office context:\n${extraSystemPrompt}` - : BASE_SYSTEM_PROMPT; + // Prefer the client's local date (avoids UTC midnight rollover for US timezones) + const today = (clientDate && /^\d{4}-\d{2}-\d{2}$/.test(clientDate)) + ? clientDate + : (() => { const n = new Date(); return `${n.getFullYear()}-${String(n.getMonth()+1).padStart(2,"0")}-${String(n.getDate()).padStart(2,"0")}`; })(); + const systemPrompt = buildSystemPrompt(today, extraSystemPrompt); try { const llm = getLlm(provider, apiKey, model); - // Gemini requires conversation to start with a user turn — drop any leading assistant messages - const trimmedHistory = history.slice( - history.findIndex((h) => h.role === "user") - ).filter((_, i, arr) => { - // Also drop consecutive same-role messages (keep last of each run) + // Drop leading assistant messages (some providers require conversation to start with user turn) + const firstUserIdx = history.findIndex((h) => h.role === "user"); + const trimmedHistory = (firstUserIdx === -1 ? [] : history.slice(firstUserIdx)).filter((_, i, arr) => { if (i === arr.length - 1) return true; return arr[i]!.role !== arr[i + 1]!.role; }); @@ -131,11 +146,21 @@ export async function classifyInternalChat( ]); const raw = String(response.content).trim(); + console.log("[internal-chat] raw LLM response:", raw.slice(0, 400)); const jsonStr = raw.replace(/^```json\s*/i, "").replace(/```\s*$/, "").trim(); const parsed = JSON.parse(jsonStr) as ChatClassification; if (!parsed.intent || !parsed.fallbackReply) return fallback; return parsed; - } catch { + } catch (err) { + const msg = err instanceof Error ? err.message : String(err); + console.error("[internal-chat] classifyInternalChat error (provider=%s model=%s): %s", provider, model, msg); + // Surface billing/auth errors so the user sees a useful message in the chat + if (/credit balance|billing|quota|insufficient|authentication|api.key|invalid_api_key/i.test(msg)) { + return { + intent: "general", + fallbackReply: `AI provider error: ${msg.slice(0, 200)}`, + }; + } return fallback; } } diff --git a/apps/Backend/src/ai/internal-chat-workflow.ts b/apps/Backend/src/ai/internal-chat-workflow.ts index f5d5dc3d..e5b9d354 100644 --- a/apps/Backend/src/ai/internal-chat-workflow.ts +++ b/apps/Backend/src/ai/internal-chat-workflow.ts @@ -39,7 +39,8 @@ export interface ChatResponse { | "need_insurance_clarification" | "appointment_created" | "claim_only_ready" - | "need_appointment_selection"; + | "need_appointment_selection" + | "need_cdt_clarification"; actionData?: Record; } @@ -75,6 +76,7 @@ interface StorageLike { offset: number; }): Promise; getPatientByInsuranceId(id: string): Promise; + getPatientByInsuranceIdAndDob(id: string, dob: Date): Promise; createAppointment(appointment: any): Promise; getAppointmentsByDateForUser(dateStr: string, userId: number): Promise; getOfficeHours(userId: number): Promise; @@ -98,6 +100,22 @@ function patientToResult(p: any): ResolvedPatient { }; } +/** Look up by memberId, preferring the insuranceId+DOB combo when DOB is available. */ +async function findPatientByMemberId( + memberId: string, + dob: string | null | undefined, + storage: StorageLike +): Promise { + const dobDate = dob ? new Date(dob) : null; + if (dobDate && !isNaN(dobDate.getTime())) { + const byCombo = await storage.getPatientByInsuranceIdAndDob(memberId, dobDate); + if (byCombo) return byCombo; + // DOB provided but no record with that combo → this is a new family member not yet in DB + return null; + } + return storage.getPatientByInsuranceId(memberId); +} + async function findPatientByName( name: string, storage: StorageLike @@ -196,6 +214,28 @@ export async function runInternalChatWorkflow( actionData: { patient }, }; } + + // If patient has DOB + known insurance, route through eligibility_id_ready so the + // correct provider button (DDMA, CCA, etc.) auto-triggers instead of always MH. + const resolvedDob = patient.dateOfBirth ?? null; + const siteKey = resolveSiteKey( + patient.insuranceProvider ?? null, + classification.insuranceHint ?? null + ); + if (resolvedDob && siteKey) { + return { + reply: `Found ${fullName}. Ready to check eligibility.`, + action: "eligibility_id_ready", + actionData: { + patient, + memberId: patient.insuranceId, + dob: resolvedDob, + siteKey, + autoCheck: siteKeyToAutoCheck(siteKey), + }, + }; + } + return { reply: `Found ${fullName}. Ready to check eligibility.`, action: "check_eligibility_prefill", @@ -246,8 +286,8 @@ async function handleEligibilityById( }; } - // Try to resolve existing patient for name display + insurance - const existingPatient = await storage.getPatientByInsuranceId(memberId); + // Try to resolve existing patient for name display + insurance (use DOB to pick the right family member) + const existingPatient = await findPatientByMemberId(memberId, dob, storage); const patient: ResolvedPatient | null = existingPatient ? patientToResult(existingPatient) : null; @@ -312,7 +352,7 @@ async function handleCheckAndClaim( const dob = c.dob?.trim() ?? null; if (memberId) { - const existing = await storage.getPatientByInsuranceId(memberId); + const existing = await findPatientByMemberId(memberId, dob, storage); if (existing) patient = patientToResult(existing); } else if (c.patientName?.trim()) { const raw = await findPatientByName(c.patientName.trim(), storage); @@ -368,18 +408,24 @@ async function handleCheckAndClaim( const matched = cdtResults.filter((r) => r.code !== null); const unmatched = cdtResults.filter((r) => r.code === null); + // Block if any term couldn't be mapped — ask instead of proceeding + if (unmatched.length > 0) { + const phrases = unmatched.map((r) => r.input); + return { + reply: `I don't recognize ${phrases.map((p) => `"${p}"`).join(", ")}. What CDT code${phrases.length > 1 ? "s are" : " is"} ${phrases.length > 1 ? "they" : "it"}? (e.g. D0272)`, + action: "need_cdt_clarification", + actionData: { unknownPhrases: phrases, matchedSoFar: matched.map((r) => ({ code: r.code!, description: r.description })) }, + }; + } + const label = patient ? `${patient.firstName ?? ""} ${patient.lastName ?? ""}`.trim() : `Member ID ${memberId}`; - let reply = `Ready to check eligibility for ${label} and claim: ${ + const reply = `Ready to check eligibility for ${label} and claim: ${ matched.map((r) => `${r.code} (${r.description})`).join(", ") || "no procedures mapped" }.`; - if (unmatched.length > 0) { - reply += ` Could not map: ${unmatched.map((r) => `"${r.input}"`).join(", ")} — please verify these codes manually.`; - } - return { reply, action: "check_and_claim_ready", @@ -402,11 +448,11 @@ async function handleClaimOnly( storage: StorageLike, customAliases: { phrase: string; cdtCode: string }[] ): Promise { - // Resolve patient + // Resolve patient — use insuranceId+DOB when DOB is available to distinguish family members let patient: ResolvedPatient | null = null; if (c.memberId?.trim()) { - const existing = await storage.getPatientByInsuranceId(c.memberId.trim()); + const existing = await findPatientByMemberId(c.memberId.trim(), c.dob, storage); if (existing) patient = patientToResult(existing); } else if (c.patientName?.trim()) { const raw = await findPatientByName(c.patientName.trim(), storage); @@ -431,6 +477,16 @@ async function handleClaimOnly( const matched = cdtResults.filter((r) => r.code !== null); const unmatched = cdtResults.filter((r) => r.code === null); + // Block if any term couldn't be mapped — ask instead of proceeding + if (unmatched.length > 0) { + const phrases = unmatched.map((r) => r.input); + return { + reply: `I don't recognize ${phrases.map((p) => `"${p}"`).join(", ")}. What CDT code${phrases.length > 1 ? "s are" : " is"} ${phrases.length > 1 ? "they" : "it"}? (e.g. D0272)`, + action: "need_cdt_clarification", + actionData: { unknownPhrases: phrases, matchedSoFar: matched.map((r) => ({ code: r.code!, description: r.description })) }, + }; + } + // Resolve service date: use explicit date from message, then latest appointment, then ask let serviceDate: string | null = c.appointmentDate ?? null; let appointmentId: number | null = null; @@ -480,11 +536,9 @@ async function handleClaimOnly( } if (!serviceDate) { - // No appointment on file — ask for the service date - const codesPreview = matched.map((r) => `${r.code}`).join(", ") || "the procedures"; - return { - reply: `Found ${fullName} but no appointments on file. What was the service date for ${codesPreview}? (e.g. "6/2/2026")`, - }; + // No appointment on file and no date in message — default to today + const now = new Date(); + serviceDate = `${now.getFullYear()}-${String(now.getMonth() + 1).padStart(2, "0")}-${String(now.getDate()).padStart(2, "0")}`; } const siteKey = resolveSiteKey(patient.insuranceProvider ?? null, c.insuranceHint ?? null) ?? "MH"; diff --git a/apps/Backend/src/queue/processors/_shared.ts b/apps/Backend/src/queue/processors/_shared.ts index f0cb9584..92fe9305 100644 --- a/apps/Backend/src/queue/processors/_shared.ts +++ b/apps/Backend/src/queue/processors/_shared.ts @@ -102,8 +102,28 @@ export async function createOrUpdatePatientByInsuranceId(options: { console.log(`[createOrUpdatePatient] insuranceId="${normalizedId}" firstName="${incomingFirst}" lastName="${incomingLast}" userId=${userId}`); - let patient = await storage.getPatientByInsuranceId(normalizedId); - console.log(`[createOrUpdatePatient] existing patient lookup: ${patient ? `found id=${patient.id}` : "not found"}`); + // Family members often share the same insuranceId (e.g. Delta Dental family plans). + // When a DOB is provided, look up by insuranceId+DOB so each family member is a + // distinct patient record. If the combo doesn't exist → new patient; never + // overwrite a different family member who happens to share the same insuranceId. + let dobDate: Date | null = null; + if (dob) { + const parsed = new Date(dob); + if (!isNaN(parsed.getTime())) dobDate = parsed; + } + + let patient = null; + if (dobDate) { + // Primary lookup: exact insuranceId + DOB match + patient = await storage.getPatientByInsuranceIdAndDob(normalizedId, dobDate); + console.log(`[createOrUpdatePatient] id+DOB lookup: ${patient ? `found id=${patient.id}` : "not found"}`); + // Do NOT fall back to insuranceId-only lookup — another record with that ID + // is a different family member and must not be overwritten. + } else { + // No DOB supplied — fall back to insuranceId-only (legacy / non-family plans) + patient = await storage.getPatientByInsuranceId(normalizedId); + console.log(`[createOrUpdatePatient] id-only lookup: ${patient ? `found id=${patient.id}` : "not found"}`); + } if (patient && patient.id) { const updates: any = {}; @@ -111,14 +131,14 @@ export async function createOrUpdatePatientByInsuranceId(options: { updates.firstName = incomingFirst; if (incomingLast && String(patient.lastName ?? "").trim() !== incomingLast) updates.lastName = incomingLast; - if (dob && !patient.dateOfBirth) { - const parsed = new Date(dob); - if (!isNaN(parsed.getTime())) updates.dateOfBirth = parsed; - } + // Store DOB if not already set + if (dobDate && !patient.dateOfBirth) updates.dateOfBirth = dobDate; if (Object.keys(updates).length > 0) { console.log(`[createOrUpdatePatient] updating patient id=${patient.id} with`, updates); await storage.updatePatient(patient.id, updates); - patient = await storage.getPatientByInsuranceId(normalizedId); + patient = dobDate + ? await storage.getPatientByInsuranceIdAndDob(normalizedId, dobDate) + : await storage.getPatientByInsuranceId(normalizedId); } return patient; } @@ -126,7 +146,7 @@ export async function createOrUpdatePatientByInsuranceId(options: { const createPayload: any = { firstName: incomingFirst, lastName: incomingLast, - dateOfBirth: dob, + dateOfBirth: dobDate ?? dob, // use parsed Date; fallback to raw string if dobDate is null gender: "", phone: "", userId, diff --git a/apps/Backend/src/routes/ai-settings.ts b/apps/Backend/src/routes/ai-settings.ts index f3ab5eff..369f35e5 100644 --- a/apps/Backend/src/routes/ai-settings.ts +++ b/apps/Backend/src/routes/ai-settings.ts @@ -251,13 +251,32 @@ router.put("/cdt-aliases", async (req: Request, res: Response): Promise => } }); +// POST /api/ai/cdt-aliases/add — add/update a single alias without overwriting others +router.post("/cdt-aliases/add", async (req: Request, res: Response): Promise => { + try { + const userId = req.user?.id; + if (!userId) return res.status(401).json({ message: "Unauthorized" }); + const { phrase, cdtCode } = req.body; + if (typeof phrase !== "string" || typeof cdtCode !== "string") { + return res.status(400).json({ message: "Body must be { phrase, cdtCode }" }); + } + const existing = await storage.getCdtAliases(userId); + const newEntry = { phrase: phrase.trim().toLowerCase(), cdtCode: cdtCode.trim().toUpperCase() }; + const updated = [...existing.filter((a) => a.phrase !== newEntry.phrase), newEntry]; + await storage.saveCdtAliases(userId, updated); + return res.status(200).json(newEntry); + } catch (err) { + return res.status(500).json({ error: "Failed to add CDT alias", details: String(err) }); + } +}); + // POST /api/ai/internal-chat router.post("/internal-chat", async (req: Request, res: Response): Promise => { try { const userId = req.user?.id; if (!userId) return res.status(401).json({ message: "Unauthorized" }); - const { message, history } = req.body; + const { message, history, clientDate } = req.body; if (!message?.trim()) return res.status(400).json({ message: "message is required" }); const aiSettings = await storage.getAiSettings(userId); @@ -279,7 +298,8 @@ router.post("/internal-chat", async (req: Request, res: Response): Promise extraSystemPrompt || undefined, Array.isArray(history) ? history : [], activeAi.provider, - activeAi.model + activeAi.model, + typeof clientDate === "string" ? clientDate : undefined ); const response = await runInternalChatWorkflow(classification, userId, storage, customAliases); diff --git a/apps/Frontend/src/assets/data/procedureCodesCCA.json b/apps/Frontend/src/assets/data/procedureCodesCCA.json index 7f5516c1..247c4b2b 100644 --- a/apps/Frontend/src/assets/data/procedureCodesCCA.json +++ b/apps/Frontend/src/assets/data/procedureCodesCCA.json @@ -1,1196 +1,209 @@ [ - { - "Procedure Code": "D0120", - "Description": "Periodic oral evaluation - established patient", - "PriceLTEQ21": "24", - "PriceGT21": "24" - }, - { - "Procedure Code": "D0140", - "Description": "Limited oral evaluation - problem focused", - "PriceLTEQ21": "43", - "PriceGT21": "43" - }, - { - "Procedure Code": "D0145", - "Description": "Oral evaluation for a patient under three years of age and counseling with primary caregiver", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D0150", - "Description": "Comprehensive oral evaluation - new or established patient", - "PriceLTEQ21": "41", - "PriceGT21": "41" - }, - { - "Procedure Code": "D0180", - "Description": "Comprehensive periodontal evaluation - new or established patient", - "PriceLTEQ21": "37", - "PriceGT21": "37" - }, - { - "Procedure Code": "D0190", - "Description": "Screening of a patient (PHDH only)", - "PriceLTEQ21": "20", - "PriceGT21": "20" - }, - { - "Procedure Code": "D0191", - "Description": "Assessment of a patient (PHDH only)", - "PriceLTEQ21": "20", - "PriceGT21": "20" - }, - { - "Procedure Code": "D0210", - "Description": "Intraoral - complete series of radiographic images", - "PriceLTEQ21": "76", - "PriceGT21": "76" - }, - { - "Procedure Code": "D0220", - "Description": "Intraoral - periapical, first radiographic image", - "PriceLTEQ21": "15", - "PriceGT21": "15" - }, - { - "Procedure Code": "D0230", - "Description": "Intraoral - periapical, each additional radiographic image", - "PriceLTEQ21": "13", - "PriceGT21": "13" - }, - { - "Procedure Code": "D0240", - "Description": "Intraoral - occlusal radiographic image", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D0270", - "Description": "Bitewing - single radiographic image", - "PriceLTEQ21": "14", - "PriceGT21": "14" - }, - { - "Procedure Code": "D0272", - "Description": "Bitewings - two radiographic images", - "PriceLTEQ21": "25", - "PriceGT21": "25" - }, - { - "Procedure Code": "D0273", - "Description": "Bitewings - three radiographic images", - "PriceLTEQ21": "27", - "PriceGT21": "27" - }, - { - "Procedure Code": "D0274", - "Description": "Bitewings - four radiographic images", - "PriceLTEQ21": "36", - "PriceGT21": "36" - }, - { - "Procedure Code": "D0330", - "Description": "Panoramic radiographic image", - "PriceLTEQ21": "69", - "PriceGT21": "69" - }, - { - "Procedure Code": "D0340", - "Description": "Cephalometric radiograph image (Oral surgeon only)", - "PriceLTEQ21": "74", - "PriceGT21": "74" - }, - { - "Procedure Code": "D0364", - "Description": "Less than one jaw", - "Price": "350" - }, - { - "Procedure Code": "D0365", - "Description": "Mand", - "Price": "350" - }, - { - "Procedure Code": "D0366", - "Description": "Max", - "Price": "350" - }, - { - "Procedure Code": "D0367", - "Description": "", - "Price": "400" - }, - { - "Procedure Code": "D0368", - "Description": "include TMJ", - "Price": "375" - }, - { - "Procedure Code": "D0380", - "Description": "Less than one jaw", - "Price": "300" - }, - { - "Procedure Code": "D0381", - "Description": "Mand", - "Price": "300" - }, - { - "Procedure Code": "D0382", - "Description": "Max", - "Price": "300" - }, - { - "Procedure Code": "D0383", - "Description": "", - "Price": "350" - }, - { - "Procedure Code": "D1110", - "Description": "Prophylaxis \u2013 adult, 14 yo or older", - "PriceLTEQ21": "60", - "PriceGT21": "60" - }, - { - "Procedure Code": "D1120", - "Description": "Prophylaxis \u2013 child, 0-13 yo", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1206", - "Description": "Topical application of fluoride varnish", - "PriceLTEQ21": "26", - "PriceGT21": "26" - }, - { - "Procedure Code": "D1208", - "Description": "Topical application of fluoride \u2013 excluding varnish", - "PriceLTEQ21": "29", - "PriceGT21": "29" - }, - { - "Procedure Code": "D1351", - "Description": "Sealant \u2013 per tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1354", - "Description": "Application of caries arresting medicament - per tooth", - "PriceLTEQ21": "15", - "PriceGT21": "15" - }, - { - "Procedure Code": "D1510", - "Description": "Space maintainer \u2013 fixed,unilateral \u2013 per quadrant", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1516", - "Description": "Space maintainer- fixed- bilateral, maxillary", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1517", - "Description": "Space maintainer- fixed- bilateral, mandibular", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1520", - "Description": "Space maintainer \u2013 removable- unilateral- per quadrant", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1526", - "Description": "Space maintainer- removable- bilateral, maxillary", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1527", - "Description": "Space maintainer- removable- bilateral, mandibular", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1575", - "Description": "Distal shoe space maintainer - fixed- unilateral- Per Quadrant I.C", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1701", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration \u2013 first dose SARSCOV2 COVID-19 VAC mRNA 30mcg/0.3mL IM DOSE 1", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1702", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration \u2013 second dose SARSCOV2 COVID-19 VAC mRNA 30mcg/0.3mL IM DOSE 2", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1707", - "Description": "Janssen Covid-19 vaccine administration SARSCOV2 COVID-19 VAC Ad26 5x1010 VP/.5mL IM SINGLE DOSE", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1708", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration \u2013 third dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1709", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration \u2013 booster dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1712", - "Description": "Janssen Covid-19 vaccine administration - booster dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1713", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration tris-sucrose pediatric \u2013 first dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1714", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration tris-sucrose pediatric \u2013 second dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1999", - "Description": "", - "Price": "50" - }, - { - "Procedure Code": "D2140", - "Description": "Amalgam-one surface, primary or permanent", - "PriceLTEQ21": "62", - "PriceGT21": "62" - }, - { - "Procedure Code": "D2150", - "Description": "Amalgam-two surfaces, primary or permanent", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D2955", - "Description": "post renoval", - "Price": "350" - }, - { - "Procedure Code": "D4910", - "Description": "perio maintains", - "Price": "250" - }, - { - "Procedure Code": "D5510", - "Description": "Repair broken complete denture base (QUAD)", - "Price": "400" - }, - { - "Procedure Code": "D6010", - "Description": "Surgical placement of implant body", - "Price": "1600" - }, - { - "Procedure Code": "D6056", - "Description": "pre fab abut", - "Price": "750" - }, - { - "Procedure Code": "D6057", - "Description": "custom abut", - "Price": "800" - }, - { - "Procedure Code": "D6058", - "Description": "porcelain, implant crown, ceramic crown", - "Price": "1400" - }, - { - "Procedure Code": "D6059", - "Description": "", - "Price": "1400" - }, - { - "Procedure Code": "D6100", - "Description": "", - "Price": "320" - }, - { - "Procedure Code": "D6110", - "Description": "implant", - "Price": "1600" - }, - { - "Procedure Code": "D6242", - "Description": "noble metal. For united", - "Price": "1400" - }, - { - "Procedure Code": "D6245", - "Description": "porcelain, not for united", - "Price": "1400" - }, - { - "Procedure Code": "D7910", - "Description": "suture, small wound up to 5 mm", - "Price": "400" - }, - { - "Procedure Code": "D7950", - "Description": "max", - "Price": "800" - }, - { - "Procedure Code": "D2160", - "Description": "Amalgam-three surfaces, primary or permanent", - "PriceLTEQ21": "92", - "PriceGT21": "92" - }, - { - "Procedure Code": "D2161", - "Description": "Amalgam-four or more surfaces, primary or permanent", - "PriceLTEQ21": "116", - "PriceGT21": "116" - }, - { - "Procedure Code": "D2330", - "Description": "Resin-based composite \u2013 one surface, anterior", - "PriceLTEQ21": "72", - "PriceGT21": "72" - }, - { - "Procedure Code": "D2331", - "Description": "Resin-based composite \u2013 two surfaces, anterior", - "PriceLTEQ21": "92", - "PriceGT21": "92" - }, - { - "Procedure Code": "D2332", - "Description": "Resin-based composite \u2013 three surfaces, anterior", - "PriceLTEQ21": "116", - "PriceGT21": "116" - }, - { - "Procedure Code": "D2335", - "Description": "Resin-based composite \u2013 four or more surfaces or involving incisal angle (anterior)", - "PriceLTEQ21": "146", - "PriceGT21": "146" - }, - { - "Procedure Code": "D2390", - "Description": "Resin-based composite crown, anterior", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2391", - "Description": "Resin-based composite \u2013 one surface, posterior", - "PriceLTEQ21": "62", - "PriceGT21": "62" - }, - { - "Procedure Code": "D2392", - "Description": "Resin-based composite \u2013 two surfaces, posterior", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D2393", - "Description": "Resin-based composite \u2013 three surfaces, posterior", - "PriceLTEQ21": "92", - "PriceGT21": "92" - }, - { - "Procedure Code": "D2394", - "Description": "Resin-based composite \u2013 four or more surfaces, posterior", - "PriceLTEQ21": "116", - "PriceGT21": "116" - }, - { - "Procedure Code": "D2710", - "Description": "Crown \u2013 resin-based composite (indirect)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2740", - "Description": "Crown \u2013 porcelain/ceramic", - "PriceLTEQ21": "729", - "PriceGT21": "729" - }, - { - "Procedure Code": "D2750", - "Description": "Crown \u2013 porcelain fused to high noble metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2751", - "Description": "Crown \u2013 porcelain fused to predominantly base metal", - "PriceLTEQ21": "613", - "PriceGT21": "613" - }, - { - "Procedure Code": "D2752", - "Description": "Crown \u2013 porcelain fused to noble metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2790", - "Description": "Crown \u2013 full cast high noble metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2910", - "Description": "Re-cement or re-bond inlay, onlay or partial coverage restoration", - "PriceLTEQ21": "57", - "PriceGT21": "57" - }, - { - "Procedure Code": "D2920", - "Description": "Re-cement or re-bond crown", - "PriceLTEQ21": "57", - "PriceGT21": "57" - }, - { - "Procedure Code": "D2929", - "Description": "Prefabricated porcelain/ceramic crown \u2013 primary tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2930", - "Description": "Prefabricated stainless steel crown \u2013 primary tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2931", - "Description": "Prefabricated stainless steel crown \u2013 permanent tooth", - "PriceLTEQ21": "171", - "PriceGT21": "171" - }, - { - "Procedure Code": "D2932", - "Description": "Prefabricated resin crown", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2934", - "Description": "Prefabricated esthetic coated stainless steel crown \u2013 primary tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2950", - "Description": "Core buildup, including any pins when required", - "PriceLTEQ21": "164", - "PriceGT21": "164" - }, - { - "Procedure Code": "D2951", - "Description": "Pin retention \u2013 per tooth, in addition to restoration", - "PriceLTEQ21": "27", - "PriceGT21": "27" - }, - { - "Procedure Code": "D2954", - "Description": "Prefabricated post and core in addition to crown", - "PriceLTEQ21": "191", - "PriceGT21": "191" - }, - { - "Procedure Code": "D2980", - "Description": "Crown repair necessitated by restorative material failure", - "PriceLTEQ21": "115", - "PriceGT21": "115" - }, - { - "Procedure Code": "D2999", - "Description": "Unspecified restorative procedure, by report", - "PriceLTEQ21": "IC", - "PriceGT21": "IC" - }, - { - "Procedure Code": "D3120", - "Description": "Pulp cap \u2013 indirect (excluding final restoration)", - "PriceLTEQ21": "34", - "PriceGT21": "34" - }, - { - "Procedure Code": "D3220", - "Description": "Therapeutic pulpotomy (excluding final restoration) \u2013 removal of pulp coronal to the dentinocemental junction and application of medicament", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D3310", - "Description": "Endodontic therapy, anterior (excluding final restoration)", - "PriceLTEQ21": "544", - "PriceGT21": "544" - }, - { - "Procedure Code": "D3320", - "Description": "Endodontic therapy, premolar tooth (excluding final restoration)", - "PriceLTEQ21": "639", - "PriceGT21": "639" - }, - { - "Procedure Code": "D3330", - "Description": "Endodontic therapy, molar tooth (excluding final restoration)", - "PriceLTEQ21": "829", - "PriceGT21": "829" - }, - { - "Procedure Code": "D3346", - "Description": "Retreatment of previous root canal therapy \u2013 anterior", - "PriceLTEQ21": "456", - "PriceGT21": "456" - }, - { - "Procedure Code": "D3347", - "Description": "Retreatment of previous root canal therapy \u2013 premolar", - "PriceLTEQ21": "538", - "PriceGT21": "538" - }, - { - "Procedure Code": "D3348", - "Description": "Retreatment of previous root canal therapy \u2013 molar", - "PriceLTEQ21": "613", - "PriceGT21": "613" - }, - { - "Procedure Code": "D3410", - "Description": "Apicoectomy \u2013 anterior", - "PriceLTEQ21": "407", - "PriceGT21": "407" - }, - { - "Procedure Code": "D3421", - "Description": "Apicoectomy \u2013 premolar (first root)", - "PriceLTEQ21": "460", - "PriceGT21": "460" - }, - { - "Procedure Code": "D3425", - "Description": "Apicoectomy \u2013 molar (first root)", - "PriceLTEQ21": "598", - "PriceGT21": "598" - }, - { - "Procedure Code": "D3426", - "Description": "Apicoectomy (each additional root)", - "PriceLTEQ21": "230", - "PriceGT21": "230" - }, - { - "Procedure Code": "D4210", - "Description": "Gingivectomy or gingivoplasty - Four or more contiguous teeth or bounded teeth spaces per quadrant", - "PriceLTEQ21": "307", - "PriceGT21": "307" - }, - { - "Procedure Code": "D4211", - "Description": "Gingivectomy or gingivoplasty - one to three contiguous teeth or bounded teeth spaces per quadrant", - "PriceLTEQ21": "111", - "PriceGT21": "111" - }, - { - "Procedure Code": "D4341", - "Description": "Periodontal scaling and root planing - four or more teeth per quadrant", - "PriceLTEQ21": "134", - "PriceGT21": "134" - }, - { - "Procedure Code": "D4342", - "Description": "Periodontal scaling and root planing - one to three teeth, per quadrant", - "PriceLTEQ21": "90", - "PriceGT21": "90" - }, - { - "Procedure Code": "D4346", - "Description": "Scaling in presence of generalized moderate or severe gingival inflammation \u2013 full mouth, after oral evaluation", - "PriceLTEQ21": "60", - "PriceGT21": "60" - }, - { - "Procedure Code": "D5110", - "Description": "Complete denture \u2013 maxillary", - "PriceLTEQ21": "730", - "PriceGT21": "730" - }, - { - "Procedure Code": "D5120", - "Description": "Complete denture \u2013 mandibular", - "PriceLTEQ21": "730", - "PriceGT21": "730" - }, - { - "Procedure Code": "D5130", - "Description": "Immediate denture \u2013 maxillary", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5140", - "Description": "Immediate denture - mandibular", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5211", - "Description": "Maxillary partial denture - resin base (including retentive/clasping materials, rests and teeth)", - "PriceLTEQ21": "556", - "PriceGT21": "556" - }, - { - "Procedure Code": "D5212", - "Description": "Mandibular partial denture - resin base (including retentive/clasping materials, rests and teeth)", - "PriceLTEQ21": "595", - "PriceGT21": "595" - }, - { - "Procedure Code": "D5213", - "Description": "Maxillary partial denture- cast metal framework with resin denture bases (including retentive/clasping materials, rests and teeth)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5214", - "Description": "Mandibular partial denture - cast metal framework with resin denture bases (including retentive/clasping materials, rests and teeth)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5225", - "Description": "Maxillary partial denture- flexible base", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5226", - "Description": "Mandibular partial denture- flexible base", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5511", - "Description": "Repair broken complete denture base, mandibular", - "PriceLTEQ21": "85", - "PriceGT21": "85" - }, - { - "Procedure Code": "D5512", - "Description": "Repair broken complete denture base, maxillary", - "PriceLTEQ21": "85", - "PriceGT21": "85" - }, - { - "Procedure Code": "D5520", - "Description": "Replace missing or broken teeth - complete denture (each tooth)", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D5611", - "Description": "Repair broken resin partial denture base, mandibular", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D5612", - "Description": "Repair broken resin partial denture base, maxillary", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D5621", - "Description": "Repair broken cast partial denture base, mandibular", - "PriceLTEQ21": "104", - "PriceGT21": "104" - }, - { - "Procedure Code": "D5622", - "Description": "Repair broken cast partial denture base, maxillary", - "PriceLTEQ21": "104", - "PriceGT21": "104" - }, - { - "Procedure Code": "D5630", - "Description": "Repair or replace broken retentive/clasping materials \u2013 per tooth", - "PriceLTEQ21": "99", - "PriceGT21": "99" - }, - { - "Procedure Code": "D5640", - "Description": "Replace broken teeth - per tooth", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D5650", - "Description": "Add tooth to existing partial denture", - "PriceLTEQ21": "92", - "PriceGT21": "92" - }, - { - "Procedure Code": "D5660", - "Description": "Add clasp to existing partial denture per tooth", - "PriceLTEQ21": "98", - "PriceGT21": "98" - }, - { - "Procedure Code": "D5730", - "Description": "Reline complete maxillary denture (direct)", - "PriceLTEQ21": "158", - "PriceGT21": "158" - }, - { - "Procedure Code": "D5731", - "Description": "Reline lower complete mandibular denture (direct)", - "PriceLTEQ21": "173", - "PriceGT21": "173" - }, - { - "Procedure Code": "D5740", - "Description": "Reline maxillary partial denture(chairside)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5741", - "Description": "Reline mandibular partial denture(chairside)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5750", - "Description": "Reline complete maxillary denture (indirect)", - "PriceLTEQ21": "214", - "PriceGT21": "214" - }, - { - "Procedure Code": "D5751", - "Description": "Reline complete mandibular denture (indirect)", - "PriceLTEQ21": "215", - "PriceGT21": "215" - }, - { - "Procedure Code": "D5760", - "Description": "Reline maxillary partial denture (laboratory)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5761", - "Description": "Reline mandibular partial denture (laboratory)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6241", - "Description": "Pontic-porcelain fused metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6751", - "Description": "Retainer crown-porcelain fused to metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6930", - "Description": "Re-cement or re-bond fixed partial denture", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6980", - "Description": "Fixed partial denture repair", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6999", - "Description": "Fixed prosthodontic procedure", - "PriceLTEQ21": "IC", - "PriceGT21": "IC" - }, - { - "Procedure Code": "D7111", - "Description": "Extraction, coronal remnants - primary tooth", - "PriceLTEQ21": "75", - "PriceGT21": "75" - }, - { - "Procedure Code": "D7140", - "Description": "Extraction, erupted tooth or exposed root (elevation and/or forceps removal)", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D7210", - "Description": "Extraction, erupted tooth requiring removal of bone and/or sectioning of tooth, and including elevation of mucoperiosteal flap if indicated", - "PriceLTEQ21": "149", - "PriceGT21": "149" - }, - { - "Procedure Code": "D7220", - "Description": "Removal of impacted tooth - soft tissue", - "PriceLTEQ21": "191", - "PriceGT21": "191" - }, - { - "Procedure Code": "D7230", - "Description": "Removal of impacted tooth - partially bony", - "PriceLTEQ21": "249", - "PriceGT21": "249" - }, - { - "Procedure Code": "D7240", - "Description": "Removal of impacted tooth - completely bony", - "PriceLTEQ21": "295", - "PriceGT21": "295" - }, - { - "Procedure Code": "D7250", - "Description": "Surgical removal of residual tooth roots (cutting procedure)", - "PriceLTEQ21": "144", - "PriceGT21": "144" - }, - { - "Procedure Code": "D7251", - "Description": "Coronectomy- intentional partial tooth removal, impacted teeth only", - "PriceLTEQ21": "134", - "PriceGT21": "134" - }, - { - "Procedure Code": "D7270", - "Description": "Tooth reimplantation and/or stabilization of accidentally evulsed or displaced tooth", - "PriceLTEQ21": "106", - "PriceGT21": "106" - }, - { - "Procedure Code": "D7280", - "Description": "Surgical access of an unerupted tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D7283", - "Description": "Placement of device to facilitate eruption of impacted tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D7310", - "Description": "Alveoloplasty in conjunction with extractions-four or more teeth or tooth spaces, per quadrant", - "PriceLTEQ21": "142", - "PriceGT21": "142" - }, - { - "Procedure Code": "D7311", - "Description": "Alveoloplasty in conjunction with extractions - one to three teeth or tooth spaces, per quadrant", - "PriceLTEQ21": "128", - "PriceGT21": "128" - }, - { - "Procedure Code": "D7320", - "Description": "Alveoloplasty not in conjunction with extractions- four or more teeth or tooth spaces, per quadrant", - "PriceLTEQ21": "187", - "PriceGT21": "187" - }, - { - "Procedure Code": "D7321", - "Description": "Alveoloplasty not in conjunction with extractions - one to three teeth or tooth spaces, per quadrant", - "PriceLTEQ21": "149", - "PriceGT21": "149" - }, - { - "Procedure Code": "D7340", - "Description": "Vestibuloplasty - ridge extension (second epithelialization)", - "PriceLTEQ21": "747", - "PriceGT21": "747" - }, - { - "Procedure Code": "D7350", - "Description": "Vestibuloplasty - ridge extension (Oral surgeon only)", - "PriceLTEQ21": "943", - "PriceGT21": "943" - }, - { - "Procedure Code": "D7410", - "Description": "Radical excision - lesion diameter up to 1.25cm", - "PriceLTEQ21": "115", - "PriceGT21": "115" - }, - { - "Procedure Code": "D7411", - "Description": "Excision of benign lesion greater than 1.25 cm", - "PriceLTEQ21": "208", - "PriceGT21": "208" - }, - { - "Procedure Code": "D7450", - "Description": "Removal of benign odontogenic cyst or tumor - lesion diameter up to 1.25 cm", - "PriceLTEQ21": "248", - "PriceGT21": "248" - }, - { - "Procedure Code": "D7451", - "Description": "Removal of benign odontogenic cyst or tumor - lesion diameter greater than 1.25 cm", - "PriceLTEQ21": "288", - "PriceGT21": "288" - }, - { - "Procedure Code": "D7460", - "Description": "Removal of benign nonodontogenic cyst or tumor - lesion diameter up to 1.25 cm", - "PriceLTEQ21": "121", - "PriceGT21": "121" - }, - { - "Procedure Code": "D7461", - "Description": "Removal of benign nonodontogenic cyst or tumor - lesion diameter greater than 1.25 cm", - "PriceLTEQ21": "143", - "PriceGT21": "143" - }, - { - "Procedure Code": "D7471", - "Description": "Removal of lateral exostosis (maxilla or mandible) (Oral surgeon only)", - "PriceLTEQ21": "143", - "PriceGT21": "143" - }, - { - "Procedure Code": "D7472", - "Description": "Removal of torus palatinus (Oral surgeon only)", - "PriceLTEQ21": "143", - "PriceGT21": "143" - }, - { - "Procedure Code": "D7473", - "Description": "Removal of torus mandibularis (Oral surgeon only)", - "PriceLTEQ21": "143", - "PriceGT21": "143" - }, - { - "Procedure Code": "D7961", - "Description": "Buccal/labial frenectomy (frenulectomy)", - "PriceLTEQ21": "107", - "PriceGT21": "107" - }, - { - "Procedure Code": "D7962", - "Description": "Lingual frenectomy (frenulectomy)", - "PriceLTEQ21": "107", - "PriceGT21": "107" - }, - { - "Procedure Code": "D7963", - "Description": "Frenuloplasty", - "PriceLTEQ21": "416", - "PriceGT21": "416" - }, - { - "Procedure Code": "D7970", - "Description": "Excision of hyperplastic tissue - per arch", - "PriceLTEQ21": "246", - "PriceGT21": "246" - }, - { - "Procedure Code": "D7999", - "Description": "Unspecified oral surgery procedure, by report", - "PriceLTEQ21": "IC", - "PriceGT21": "IC" - }, - { - "Procedure Code": "D8010", - "Description": "Limited orthodontic treamtnent of the primary transition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8020", - "Description": "Limited orthodontic treatment of the transitional dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8030", - "Description": "Limited orthodontic treatment of the adolescent dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8040", - "Description": "Limited orthodontic treatment of the adult dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8070", - "Description": "Comprehensive orthodontic treatment of the transitional dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8080", - "Description": "Comprehensive orthodontic treatment of the adolescent dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8090", - "Description": "Comprehensive orthodontic treatment of the adult dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8660", - "Description": "Pre-orthodontic treatment examination to monitor growth and development (records fee) (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8670", - "Description": "Periodic orthodontic treatment visit (Orthodontist only)", - "PriceLTEQ21": "215", - "PriceGT21": "215" - }, - { - "Procedure Code": "D8680", - "Description": "Orthodontic retention (removal of appliances, construction and placement of retainer(s)) (Orthodontist only)", - "PriceLTEQ21": "85", - "PriceGT21": "85" - }, - { - "Procedure Code": "D8703", - "Description": "Replacement of lost or broken retainer- maxillary (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8704", - "Description": "Replacement of lost or broken retainer- mandibular (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8999", - "Description": "Unspecified orthodontic procedure, by report (Orthodontist only) I.C I.C** Y Y**", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9110", - "Description": "Palliative treatment of dental pain \u2013 per visit", - "PriceLTEQ21": "36", - "PriceGT21": "36" - }, - { - "Procedure Code": "D9222", - "Description": "Deep sedation/general anesthesia \u2013 first 15 minutes", - "PriceLTEQ21": "90", - "PriceGT21": "90" - }, - { - "Procedure Code": "D9223", - "Description": "Deep sedation/general anesthesia \u2013 each additional 15- minute increment", - "PriceLTEQ21": "90", - "PriceGT21": "90" - }, - { - "Procedure Code": "D9230", - "Description": "Analgesia, anxiolysis, inhalation of nitrous oxide", - "PriceLTEQ21": "15", - "PriceGT21": "15" - }, - { - "Procedure Code": "D9248", - "Description": "Nonintravenous conscious sedation", - "PriceLTEQ21": "45", - "PriceGT21": "45" - }, - { - "Procedure Code": "D9310", - "Description": "Consultation- Diagnostic service provided by dentist or physician other than requesting dentist or physician (Specialist only)", - "PriceLTEQ21": "63", - "PriceGT21": "63" - }, - { - "Procedure Code": "D9410", - "Description": "House/extended care facility call, once per facility per day", - "PriceLTEQ21": "39", - "PriceGT21": "39" - }, - { - "Procedure Code": "D9450", - "Description": "Rural add-on encounter payment", - "PriceLTEQ21": "31", - "PriceGT21": "31" - }, - { - "Procedure Code": "D9920", - "Description": "Behavior management, by report", - "PriceLTEQ21": "86", - "PriceGT21": "86" - }, - { - "Procedure Code": "D9930", - "Description": "Treatment of complications (postsurgical) - unusual circumstances, by report", - "PriceLTEQ21": "30", - "PriceGT21": "30" - }, - { - "Procedure Code": "D9941", - "Description": "Fabrication of athletic mouthguard", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9944", - "Description": "Occlusal guard - hard appliance, full arch", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9945", - "Description": "Occlusal guard - soft appliance, full arch", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9946", - "Description": "Occlusal guard - hard appliance, partial arch", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9999", - "Description": "Unspecified adjunctive procedure, by report", - "PriceLTEQ21": "IC", - "PriceGT21": "IC" - } + { "Procedure Code": "D0120", "Description": "Periodic oral evaluation - established patient", "Price": 105 }, + { "Procedure Code": "D0140", "Description": "Limited oral evaluation - problem focused", "Price": 90 }, + { "Procedure Code": "D0145", "Description": "Oral evaluation for a patient under three years of age and counseling with primary caregiver", "Price": "NC" }, + { "Procedure Code": "D0150", "Description": "Comprehensive oral evaluation - new or established patient", "Price": 120 }, + { "Procedure Code": "D0180", "Description": "Comprehensive periodontal evaluation - new or established patient", "Price": 37 }, + { "Procedure Code": "D0190", "Description": "Screening of a patient (PHDH only)", "Price": 20 }, + { "Procedure Code": "D0191", "Description": "Assessment of a patient (PHDH only)", "Price": 20 }, + { "Procedure Code": "D0210", "Description": "Intraoral - complete series of radiographic images", "Price": 120 }, + { "Procedure Code": "D0220", "Description": "Intraoral - periapical, first radiographic image", "Price": 60 }, + { "Procedure Code": "D0230", "Description": "Intraoral - periapical, each additional radiographic image", "Price": 50 }, + { "Procedure Code": "D0240", "Description": "Intraoral - occlusal radiographic image", "Price": "NC" }, + { "Procedure Code": "D0270", "Description": "Bitewing - single radiographic image", "Price": 14 }, + { "Procedure Code": "D0272", "Description": "Bitewings - two radiographic images", "Price": 80 }, + { "Procedure Code": "D0273", "Description": "Bitewings - three radiographic images", "Price": 27 }, + { "Procedure Code": "D0274", "Description": "Bitewings - four radiographic images", "Price": 160 }, + { "Procedure Code": "D0330", "Description": "Panoramic radiographic image", "Price": 150 }, + { "Procedure Code": "D0340", "Description": "Cephalometric radiograph image (Oral surgeon only)", "Price": 74 }, + { "Procedure Code": "D0364", "Description": "CBCT - less than one jaw (interpret)", "Price": 350 }, + { "Procedure Code": "D0365", "Description": "CBCT - mandible (interpret)", "Price": 350 }, + { "Procedure Code": "D0366", "Description": "CBCT - maxilla (interpret)", "Price": 350 }, + { "Procedure Code": "D0367", "Description": "CBCT - both jaws (interpret)", "Price": 400 }, + { "Procedure Code": "D0368", "Description": "CBCT - include TMJ (interpret)", "Price": 375 }, + { "Procedure Code": "D0380", "Description": "CBCT - less than one jaw (capture only)", "Price": 300 }, + { "Procedure Code": "D0381", "Description": "CBCT - mandible (capture only)", "Price": 300 }, + { "Procedure Code": "D0382", "Description": "CBCT - maxilla (capture only)", "Price": 300 }, + { "Procedure Code": "D0383", "Description": "CBCT - both jaws / include TMJ (capture only)", "Price": 350 }, + { "Procedure Code": "D1110", "Description": "Prophylaxis - adult, 14 yo or older", "Price": 150 }, + { "Procedure Code": "D1120", "Description": "Prophylaxis - child, 0-13 yo", "Price": 120 }, + { "Procedure Code": "D1206", "Description": "Topical application of fluoride varnish", "Price": 26 }, + { "Procedure Code": "D1208", "Description": "Topical application of fluoride - excluding varnish", "Price": 90 }, + { "Procedure Code": "D1351", "Description": "Sealant - per tooth", "Price": 80 }, + { "Procedure Code": "D1354", "Description": "Application of caries arresting medicament - per tooth", "Price": 15 }, + { "Procedure Code": "D1510", "Description": "Space maintainer - fixed, unilateral - per quadrant", "Price": "NC" }, + { "Procedure Code": "D1516", "Description": "Space maintainer - fixed, bilateral, maxillary", "Price": "NC" }, + { "Procedure Code": "D1517", "Description": "Space maintainer - fixed, bilateral, mandibular", "Price": "NC" }, + { "Procedure Code": "D1520", "Description": "Space maintainer - removable, unilateral, per quadrant", "Price": "NC" }, + { "Procedure Code": "D1526", "Description": "Space maintainer - removable, bilateral, maxillary", "Price": "NC" }, + { "Procedure Code": "D1527", "Description": "Space maintainer - removable, bilateral, mandibular", "Price": "NC" }, + { "Procedure Code": "D1575", "Description": "Distal shoe space maintainer - fixed, unilateral, per quadrant", "Price": "NC" }, + { "Procedure Code": "D1701", "Description": "Pfizer-BioNTech Covid-19 vaccine - first dose", "Price": 45.87 }, + { "Procedure Code": "D1702", "Description": "Pfizer-BioNTech Covid-19 vaccine - second dose", "Price": 45.87 }, + { "Procedure Code": "D1707", "Description": "Janssen Covid-19 vaccine - single dose", "Price": 45.87 }, + { "Procedure Code": "D1708", "Description": "Pfizer-BioNTech Covid-19 vaccine - third dose", "Price": 45.87 }, + { "Procedure Code": "D1709", "Description": "Pfizer-BioNTech Covid-19 vaccine - booster dose", "Price": 45.87 }, + { "Procedure Code": "D1712", "Description": "Janssen Covid-19 vaccine - booster dose", "Price": 45.87 }, + { "Procedure Code": "D1713", "Description": "Pfizer-BioNTech Covid-19 vaccine pediatric - first dose", "Price": 45.87 }, + { "Procedure Code": "D1714", "Description": "Pfizer-BioNTech Covid-19 vaccine pediatric - second dose", "Price": 45.87 }, + { "Procedure Code": "D1999", "Description": "Unspecified preventive procedure, by report", "Price": 50 }, + { "Procedure Code": "D2140", "Description": "Amalgam - one surface, primary or permanent", "Price": 150 }, + { "Procedure Code": "D2150", "Description": "Amalgam - two surfaces, primary or permanent", "Price": 200 }, + { "Procedure Code": "D2160", "Description": "Amalgam - three surfaces, primary or permanent", "Price": 92 }, + { "Procedure Code": "D2161", "Description": "Amalgam - four or more surfaces, primary or permanent", "Price": 116 }, + { "Procedure Code": "D2330", "Description": "Resin-based composite - one surface, anterior", "Price": 180 }, + { "Procedure Code": "D2331", "Description": "Resin-based composite - two surfaces, anterior", "Price": 220 }, + { "Procedure Code": "D2332", "Description": "Resin-based composite - three surfaces, anterior", "Price": 280 }, + { "Procedure Code": "D2335", "Description": "Resin-based composite - four or more surfaces or involving incisal angle (anterior)", "Price": 350 }, + { "Procedure Code": "D2390", "Description": "Resin-based composite crown, anterior", "Price": "NC" }, + { "Procedure Code": "D2391", "Description": "Resin-based composite - one surface, posterior", "Price": 200 }, + { "Procedure Code": "D2392", "Description": "Resin-based composite - two surfaces, posterior", "Price": 250 }, + { "Procedure Code": "D2393", "Description": "Resin-based composite - three surfaces, posterior", "Price": 280 }, + { "Procedure Code": "D2394", "Description": "Resin-based composite - four or more surfaces, posterior", "Price": 320 }, + { "Procedure Code": "D2710", "Description": "Crown - resin-based composite (indirect)", "Price": "NC" }, + { "Procedure Code": "D2740", "Description": "Crown - porcelain/ceramic", "Price": 1300 }, + { "Procedure Code": "D2750", "Description": "Crown - porcelain fused to high noble metal", "Price": 1300 }, + { "Procedure Code": "D2751", "Description": "Crown - porcelain fused to predominantly base metal", "Price": 1200 }, + { "Procedure Code": "D2752", "Description": "Crown - porcelain fused to noble metal", "Price": 1200 }, + { "Procedure Code": "D2790", "Description": "Crown - full cast high noble metal", "Price": "NC" }, + { "Procedure Code": "D2910", "Description": "Re-cement or re-bond inlay, onlay or partial coverage restoration", "Price": 57 }, + { "Procedure Code": "D2920", "Description": "Re-cement or re-bond crown", "Price": 120 }, + { "Procedure Code": "D2929", "Description": "Prefabricated porcelain/ceramic crown - primary tooth", "Price": "NC" }, + { "Procedure Code": "D2930", "Description": "Prefabricated stainless steel crown - primary tooth", "Price": "NC" }, + { "Procedure Code": "D2931", "Description": "Prefabricated stainless steel crown - permanent tooth", "Price": 171 }, + { "Procedure Code": "D2932", "Description": "Prefabricated resin crown", "Price": "NC" }, + { "Procedure Code": "D2934", "Description": "Prefabricated esthetic coated stainless steel crown - primary tooth", "Price": "NC" }, + { "Procedure Code": "D2950", "Description": "Core buildup, including any pins when required", "Price": 350 }, + { "Procedure Code": "D2951", "Description": "Pin retention - per tooth, in addition to restoration", "Price": 27 }, + { "Procedure Code": "D2954", "Description": "Prefabricated post and core in addition to crown", "Price": 450 }, + { "Procedure Code": "D2955", "Description": "Post removal", "Price": 350 }, + { "Procedure Code": "D2980", "Description": "Crown repair necessitated by restorative material failure", "Price": 115 }, + { "Procedure Code": "D2999", "Description": "Unspecified restorative procedure, by report", "Price": "IC" }, + { "Procedure Code": "D3120", "Description": "Pulp cap - indirect (excluding final restoration)", "Price": 34 }, + { "Procedure Code": "D3220", "Description": "Therapeutic pulpotomy (excluding final restoration)", "Price": "NC" }, + { "Procedure Code": "D3230", "Description": "Pulpal therapy (resorbable filling) - anterior, primary tooth", "Price": 280 }, + { "Procedure Code": "D3240", "Description": "Pulpal therapy (resorbable filling) - posterior, primary tooth", "Price": 490 }, + { "Procedure Code": "D3310", "Description": "Endodontic therapy, anterior tooth (excluding final restoration)", "Price": 900 }, + { "Procedure Code": "D3320", "Description": "Endodontic therapy, premolar tooth (excluding final restoration)", "Price": 1050 }, + { "Procedure Code": "D3330", "Description": "Endodontic therapy, molar tooth (excluding final restoration)", "Price": 1250 }, + { "Procedure Code": "D3346", "Description": "Retreatment of previous root canal therapy - anterior", "Price": 950 }, + { "Procedure Code": "D3347", "Description": "Retreatment of previous root canal therapy - premolar", "Price": 1100 }, + { "Procedure Code": "D3348", "Description": "Retreatment of previous root canal therapy - molar", "Price": 1500 }, + { "Procedure Code": "D3410", "Description": "Apicoectomy - anterior", "Price": 407 }, + { "Procedure Code": "D3421", "Description": "Apicoectomy - premolar (first root)", "Price": 460 }, + { "Procedure Code": "D3425", "Description": "Apicoectomy - molar (first root)", "Price": 598 }, + { "Procedure Code": "D3426", "Description": "Apicoectomy (each additional root)", "Price": 230 }, + { "Procedure Code": "D4210", "Description": "Gingivectomy or gingivoplasty - four or more contiguous teeth per quadrant", "Price": 307 }, + { "Procedure Code": "D4211", "Description": "Gingivectomy or gingivoplasty - one to three contiguous teeth per quadrant", "Price": 111 }, + { "Procedure Code": "D4341", "Description": "Periodontal scaling and root planing - four or more teeth per quadrant", "Price": 250 }, + { "Procedure Code": "D4342", "Description": "Periodontal scaling and root planing - one to three teeth, per quadrant", "Price": 90 }, + { "Procedure Code": "D4346", "Description": "Scaling in presence of generalized moderate or severe gingival inflammation - full mouth", "Price": 60 }, + { "Procedure Code": "D4910", "Description": "Periodontal maintenance", "Price": 250 }, + { "Procedure Code": "D5110", "Description": "Complete denture - maxillary", "Price": 1700 }, + { "Procedure Code": "D5120", "Description": "Complete denture - mandibular", "Price": 1700 }, + { "Procedure Code": "D5130", "Description": "Immediate denture - maxillary", "Price": "NC" }, + { "Procedure Code": "D5140", "Description": "Immediate denture - mandibular", "Price": "NC" }, + { "Procedure Code": "D5211", "Description": "Maxillary partial denture - resin base", "Price": 1300 }, + { "Procedure Code": "D5212", "Description": "Mandibular partial denture - resin base", "Price": 1300 }, + { "Procedure Code": "D5213", "Description": "Maxillary partial denture - cast metal framework with resin denture bases", "Price": 1700 }, + { "Procedure Code": "D5214", "Description": "Mandibular partial denture - cast metal framework with resin denture bases", "Price": 1700 }, + { "Procedure Code": "D5225", "Description": "Maxillary partial denture - flexible base", "Price": "NC" }, + { "Procedure Code": "D5226", "Description": "Mandibular partial denture - flexible base", "Price": "NC" }, + { "Procedure Code": "D5510", "Description": "Repair broken complete denture base (QUAD)", "Price": 400 }, + { "Procedure Code": "D5511", "Description": "Repair broken complete denture base, mandibular", "Price": 85 }, + { "Procedure Code": "D5512", "Description": "Repair broken complete denture base, maxillary", "Price": 85 }, + { "Procedure Code": "D5520", "Description": "Replace missing or broken teeth - complete denture (each tooth)", "Price": 200 }, + { "Procedure Code": "D5611", "Description": "Repair broken resin partial denture base, mandibular", "Price": 77 }, + { "Procedure Code": "D5612", "Description": "Repair broken resin partial denture base, maxillary", "Price": 77 }, + { "Procedure Code": "D5621", "Description": "Repair broken cast partial denture base, mandibular", "Price": 104 }, + { "Procedure Code": "D5622", "Description": "Repair broken cast partial denture base, maxillary", "Price": 104 }, + { "Procedure Code": "D5630", "Description": "Repair or replace broken retentive/clasping materials - per tooth", "Price": 99 }, + { "Procedure Code": "D5640", "Description": "Replace broken teeth - per tooth", "Price": 77 }, + { "Procedure Code": "D5650", "Description": "Add tooth to existing partial denture", "Price": 92 }, + { "Procedure Code": "D5660", "Description": "Add clasp to existing partial denture per tooth", "Price": 98 }, + { "Procedure Code": "D5730", "Description": "Reline complete maxillary denture (chairside)", "Price": 500 }, + { "Procedure Code": "D5731", "Description": "Reline complete mandibular denture (chairside)", "Price": 500 }, + { "Procedure Code": "D5740", "Description": "Reline maxillary partial denture (chairside)", "Price": "NC" }, + { "Procedure Code": "D5741", "Description": "Reline mandibular partial denture (chairside)", "Price": "NC" }, + { "Procedure Code": "D5750", "Description": "Reline complete maxillary denture (laboratory)", "Price": 600 }, + { "Procedure Code": "D5751", "Description": "Reline complete mandibular denture (laboratory)", "Price": 600 }, + { "Procedure Code": "D5760", "Description": "Reline maxillary partial denture (laboratory)", "Price": "NC" }, + { "Procedure Code": "D5761", "Description": "Reline mandibular partial denture (laboratory)", "Price": "NC" }, + { "Procedure Code": "D6010", "Description": "Surgical placement of implant body", "Price": 1600 }, + { "Procedure Code": "D6056", "Description": "Prefabricated abutment", "Price": 750 }, + { "Procedure Code": "D6057", "Description": "Custom abutment", "Price": 800 }, + { "Procedure Code": "D6058", "Description": "Implant crown - porcelain/ceramic", "Price": 1400 }, + { "Procedure Code": "D6059", "Description": "Implant crown - PFM", "Price": 1400 }, + { "Procedure Code": "D6100", "Description": "Surgical removal of implant body", "Price": 320 }, + { "Procedure Code": "D6110", "Description": "Implant/abutment supported removable denture - maxillary", "Price": 1600 }, + { "Procedure Code": "D6111", "Description": "Implant/abutment supported removable denture - mandibular", "Price": 1600 }, + { "Procedure Code": "D6241", "Description": "Pontic - porcelain fused to metal", "Price": "NC" }, + { "Procedure Code": "D6242", "Description": "Pontic - noble metal", "Price": 1400 }, + { "Procedure Code": "D6245", "Description": "Pontic - porcelain/ceramic", "Price": 1400 }, + { "Procedure Code": "D6751", "Description": "Retainer crown - porcelain fused to metal", "Price": "NC" }, + { "Procedure Code": "D6930", "Description": "Re-cement or re-bond fixed partial denture", "Price": "NC" }, + { "Procedure Code": "D6980", "Description": "Fixed partial denture repair", "Price": "NC" }, + { "Procedure Code": "D6999", "Description": "Fixed prosthodontic procedure, by report", "Price": "IC" }, + { "Procedure Code": "D7111", "Description": "Extraction, coronal remnants - primary tooth", "Price": 120 }, + { "Procedure Code": "D7140", "Description": "Extraction, erupted tooth or exposed root (simple)", "Price": 150 }, + { "Procedure Code": "D7210", "Description": "Extraction, erupted tooth requiring removal of bone and/or sectioning (surgical)", "Price": 280 }, + { "Procedure Code": "D7220", "Description": "Removal of impacted tooth - soft tissue", "Price": 380 }, + { "Procedure Code": "D7230", "Description": "Removal of impacted tooth - partially bony", "Price": 450 }, + { "Procedure Code": "D7240", "Description": "Removal of impacted tooth - completely bony", "Price": 550 }, + { "Procedure Code": "D7250", "Description": "Surgical removal of residual tooth roots", "Price": 280 }, + { "Procedure Code": "D7251", "Description": "Coronectomy - intentional partial tooth removal, impacted teeth only", "Price": 134 }, + { "Procedure Code": "D7270", "Description": "Tooth reimplantation and/or stabilization of accidentally evulsed or displaced tooth", "Price": 106 }, + { "Procedure Code": "D7280", "Description": "Surgical access of an unerupted tooth", "Price": "NC" }, + { "Procedure Code": "D7283", "Description": "Placement of device to facilitate eruption of impacted tooth", "Price": "NC" }, + { "Procedure Code": "D7310", "Description": "Alveoloplasty in conjunction with extractions - four or more teeth per quadrant", "Price": 142 }, + { "Procedure Code": "D7311", "Description": "Alveoloplasty in conjunction with extractions - one to three teeth per quadrant", "Price": 128 }, + { "Procedure Code": "D7320", "Description": "Alveoloplasty not in conjunction with extractions - four or more teeth per quadrant", "Price": 187 }, + { "Procedure Code": "D7321", "Description": "Alveoloplasty not in conjunction with extractions - one to three teeth per quadrant", "Price": 149 }, + { "Procedure Code": "D7340", "Description": "Vestibuloplasty - ridge extension (second epithelialization)", "Price": 747 }, + { "Procedure Code": "D7350", "Description": "Vestibuloplasty - ridge extension (Oral surgeon only)", "Price": 943 }, + { "Procedure Code": "D7410", "Description": "Excision of benign lesion - diameter up to 1.25 cm", "Price": 115 }, + { "Procedure Code": "D7411", "Description": "Excision of benign lesion - diameter greater than 1.25 cm", "Price": 208 }, + { "Procedure Code": "D7450", "Description": "Removal of benign odontogenic cyst or tumor - up to 1.25 cm", "Price": 248 }, + { "Procedure Code": "D7451", "Description": "Removal of benign odontogenic cyst or tumor - greater than 1.25 cm", "Price": 288 }, + { "Procedure Code": "D7460", "Description": "Removal of benign nonodontogenic cyst or tumor - up to 1.25 cm", "Price": 121 }, + { "Procedure Code": "D7461", "Description": "Removal of benign nonodontogenic cyst or tumor - greater than 1.25 cm", "Price": 143 }, + { "Procedure Code": "D7471", "Description": "Removal of lateral exostosis (maxilla or mandible)", "Price": 143 }, + { "Procedure Code": "D7472", "Description": "Removal of torus palatinus", "Price": 143 }, + { "Procedure Code": "D7473", "Description": "Removal of torus mandibularis", "Price": 143 }, + { "Procedure Code": "D7910", "Description": "Suture of recent small wounds up to 5 cm", "Price": 400 }, + { "Procedure Code": "D7950", "Description": "Bone graft - maxilla/mandible", "Price": 800 }, + { "Procedure Code": "D7953", "Description": "Bone graft for socket preservation after extraction", "Price": 800 }, + { "Procedure Code": "D7961", "Description": "Buccal/labial frenectomy (frenulectomy)", "Price": 107 }, + { "Procedure Code": "D7962", "Description": "Lingual frenectomy (frenulectomy)", "Price": 107 }, + { "Procedure Code": "D7963", "Description": "Frenuloplasty", "Price": 416 }, + { "Procedure Code": "D7970", "Description": "Excision of hyperplastic tissue - per arch", "Price": 246 }, + { "Procedure Code": "D7999", "Description": "Unspecified oral surgery procedure, by report", "Price": "IC" }, + { "Procedure Code": "D8010", "Description": "Limited orthodontic treatment of the primary dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8020", "Description": "Limited orthodontic treatment of the transitional dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8030", "Description": "Limited orthodontic treatment of the adolescent dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8040", "Description": "Limited orthodontic treatment of the adult dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8070", "Description": "Comprehensive orthodontic treatment of the transitional dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8080", "Description": "Comprehensive orthodontic treatment of the adolescent dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8090", "Description": "Comprehensive orthodontic treatment of the adult dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8660", "Description": "Pre-orthodontic treatment examination (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8670", "Description": "Periodic orthodontic treatment visit (Orthodontist only)", "Price": 215 }, + { "Procedure Code": "D8680", "Description": "Orthodontic retention (Orthodontist only)", "Price": 85 }, + { "Procedure Code": "D8703", "Description": "Replacement of lost or broken retainer - maxillary (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8704", "Description": "Replacement of lost or broken retainer - mandibular (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8999", "Description": "Unspecified orthodontic procedure, by report (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D9110", "Description": "Palliative treatment of dental pain - per visit", "Price": 36 }, + { "Procedure Code": "D9222", "Description": "Deep sedation/general anesthesia - first 15 minutes", "Price": 90 }, + { "Procedure Code": "D9223", "Description": "Deep sedation/general anesthesia - each additional 15-minute increment", "Price": 90 }, + { "Procedure Code": "D9230", "Description": "Analgesia, anxiolysis, inhalation of nitrous oxide", "Price": 15 }, + { "Procedure Code": "D9248", "Description": "Nonintravenous conscious sedation", "Price": 45 }, + { "Procedure Code": "D9310", "Description": "Consultation - diagnostic service (Specialist only)", "Price": 63 }, + { "Procedure Code": "D9410", "Description": "House/extended care facility call, once per facility per day", "Price": 39 }, + { "Procedure Code": "D9450", "Description": "Rural add-on encounter payment", "Price": 31 }, + { "Procedure Code": "D9920", "Description": "Behavior management, by report", "Price": 86 }, + { "Procedure Code": "D9930", "Description": "Treatment of complications (postsurgical) - unusual circumstances, by report", "Price": 30 }, + { "Procedure Code": "D9941", "Description": "Fabrication of athletic mouthguard", "Price": "NC" }, + { "Procedure Code": "D9944", "Description": "Occlusal guard - hard appliance, full arch", "Price": "NC" }, + { "Procedure Code": "D9945", "Description": "Occlusal guard - soft appliance, full arch", "Price": "NC" }, + { "Procedure Code": "D9946", "Description": "Occlusal guard - hard appliance, partial arch", "Price": "NC" }, + { "Procedure Code": "D9999", "Description": "Unspecified adjunctive procedure, by report", "Price": "IC" } ] diff --git a/apps/Frontend/src/assets/data/procedureCodesDDMA.json b/apps/Frontend/src/assets/data/procedureCodesDDMA.json index 5bf3865b..247c4b2b 100644 --- a/apps/Frontend/src/assets/data/procedureCodesDDMA.json +++ b/apps/Frontend/src/assets/data/procedureCodesDDMA.json @@ -1,1196 +1,209 @@ [ - { - "Procedure Code": "D0120", - "Description": "Periodic oral evaluation - established patient", - "PriceLTEQ21": "24", - "PriceGT21": "24" - }, - { - "Procedure Code": "D0140", - "Description": "Limited oral evaluation - problem focused", - "PriceLTEQ21": 90, - "PriceGT21": 90 - }, - { - "Procedure Code": "D0145", - "Description": "Oral evaluation for a patient under three years of age and counseling with primary caregiver", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D0150", - "Description": "Comprehensive oral evaluation - new or established patient", - "PriceLTEQ21": "41", - "PriceGT21": "41" - }, - { - "Procedure Code": "D0180", - "Description": "Comprehensive periodontal evaluation - new or established patient", - "PriceLTEQ21": "37", - "PriceGT21": "37" - }, - { - "Procedure Code": "D0190", - "Description": "Screening of a patient (PHDH only)", - "PriceLTEQ21": "20", - "PriceGT21": "20" - }, - { - "Procedure Code": "D0191", - "Description": "Assessment of a patient (PHDH only)", - "PriceLTEQ21": "20", - "PriceGT21": "20" - }, - { - "Procedure Code": "D0210", - "Description": "Intraoral - complete series of radiographic images", - "PriceLTEQ21": "76", - "PriceGT21": "76" - }, - { - "Procedure Code": "D0220", - "Description": "Intraoral - periapical, first radiographic image", - "PriceLTEQ21": 60, - "PriceGT21": 60 - }, - { - "Procedure Code": "D0230", - "Description": "Intraoral - periapical, each additional radiographic image", - "PriceLTEQ21": "13", - "PriceGT21": "13" - }, - { - "Procedure Code": "D0240", - "Description": "Intraoral - occlusal radiographic image", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D0270", - "Description": "Bitewing - single radiographic image", - "PriceLTEQ21": "14", - "PriceGT21": "14" - }, - { - "Procedure Code": "D0272", - "Description": "Bitewings - two radiographic images", - "PriceLTEQ21": "25", - "PriceGT21": "25" - }, - { - "Procedure Code": "D0273", - "Description": "Bitewings - three radiographic images", - "PriceLTEQ21": "27", - "PriceGT21": "27" - }, - { - "Procedure Code": "D0274", - "Description": "Bitewings - four radiographic images", - "PriceLTEQ21": "36", - "PriceGT21": "36" - }, - { - "Procedure Code": "D0330", - "Description": "Panoramic radiographic image", - "PriceLTEQ21": "69", - "PriceGT21": "69" - }, - { - "Procedure Code": "D0340", - "Description": "Cephalometric radiograph image (Oral surgeon only)", - "PriceLTEQ21": "74", - "PriceGT21": "74" - }, - { - "Procedure Code": "D0364", - "Description": "Less than one jaw", - "Price": "350" - }, - { - "Procedure Code": "D0365", - "Description": "Mand", - "Price": "350" - }, - { - "Procedure Code": "D0366", - "Description": "Max", - "Price": "350" - }, - { - "Procedure Code": "D0367", - "Description": "", - "Price": "400" - }, - { - "Procedure Code": "D0368", - "Description": "include TMJ", - "Price": "375" - }, - { - "Procedure Code": "D0380", - "Description": "Less than one jaw", - "Price": "300" - }, - { - "Procedure Code": "D0381", - "Description": "Mand", - "Price": "300" - }, - { - "Procedure Code": "D0382", - "Description": "Max", - "Price": "300" - }, - { - "Procedure Code": "D0383", - "Description": "", - "Price": "350" - }, - { - "Procedure Code": "D1110", - "Description": "Prophylaxis – adult, 14 yo or older", - "PriceLTEQ21": "60", - "PriceGT21": "60" - }, - { - "Procedure Code": "D1120", - "Description": "Prophylaxis – child, 0-13 yo", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1206", - "Description": "Topical application of fluoride varnish", - "PriceLTEQ21": "26", - "PriceGT21": "26" - }, - { - "Procedure Code": "D1208", - "Description": "Topical application of fluoride – excluding varnish", - "PriceLTEQ21": "29", - "PriceGT21": "29" - }, - { - "Procedure Code": "D1351", - "Description": "Sealant – per tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1354", - "Description": "Application of caries arresting medicament - per tooth", - "PriceLTEQ21": "15", - "PriceGT21": "15" - }, - { - "Procedure Code": "D1510", - "Description": "Space maintainer – fixed,unilateral – per quadrant", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1516", - "Description": "Space maintainer- fixed- bilateral, maxillary", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1517", - "Description": "Space maintainer- fixed- bilateral, mandibular", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1520", - "Description": "Space maintainer – removable- unilateral- per quadrant", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1526", - "Description": "Space maintainer- removable- bilateral, maxillary", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1527", - "Description": "Space maintainer- removable- bilateral, mandibular", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1575", - "Description": "Distal shoe space maintainer - fixed- unilateral- Per Quadrant I.C", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1701", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration – first dose SARSCOV2 COVID-19 VAC mRNA 30mcg/0.3mL IM DOSE 1", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1702", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration – second dose SARSCOV2 COVID-19 VAC mRNA 30mcg/0.3mL IM DOSE 2", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1707", - "Description": "Janssen Covid-19 vaccine administration SARSCOV2 COVID-19 VAC Ad26 5x1010 VP/.5mL IM SINGLE DOSE", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1708", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration – third dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1709", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration – booster dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1712", - "Description": "Janssen Covid-19 vaccine administration - booster dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1713", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration tris-sucrose pediatric – first dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1714", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration tris-sucrose pediatric – second dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1999", - "Description": "", - "Price": "50" - }, - { - "Procedure Code": "D2140", - "Description": "Amalgam-one surface, primary or permanent", - "PriceLTEQ21": "62", - "PriceGT21": "62" - }, - { - "Procedure Code": "D2150", - "Description": "Amalgam-two surfaces, primary or permanent", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D2955", - "Description": "post renoval", - "Price": "350" - }, - { - "Procedure Code": "D4910", - "Description": "perio maintains", - "Price": "250" - }, - { - "Procedure Code": "D5510", - "Description": "Repair broken complete denture base (QUAD)", - "Price": "400" - }, - { - "Procedure Code": "D6010", - "Description": "Surgical placement of implant body", - "Price": "1600" - }, - { - "Procedure Code": "D6056", - "Description": "pre fab abut", - "Price": "750" - }, - { - "Procedure Code": "D6057", - "Description": "custom abut", - "Price": "800" - }, - { - "Procedure Code": "D6058", - "Description": "porcelain, implant crown, ceramic crown", - "Price": "1400" - }, - { - "Procedure Code": "D6059", - "Description": "", - "Price": "1400" - }, - { - "Procedure Code": "D6100", - "Description": "", - "Price": "320" - }, - { - "Procedure Code": "D6110", - "Description": "implant", - "Price": "1600" - }, - { - "Procedure Code": "D6242", - "Description": "noble metal. For united", - "Price": "1400" - }, - { - "Procedure Code": "D6245", - "Description": "porcelain, not for united", - "Price": "1400" - }, - { - "Procedure Code": "D7910", - "Description": "suture, small wound up to 5 mm", - "Price": "400" - }, - { - "Procedure Code": "D7950", - "Description": "max", - "Price": "800" - }, - { - "Procedure Code": "D2160", - "Description": "Amalgam-three surfaces, primary or permanent", - "PriceLTEQ21": "92", - "PriceGT21": "92" - }, - { - "Procedure Code": "D2161", - "Description": "Amalgam-four or more surfaces, primary or permanent", - "PriceLTEQ21": "116", - "PriceGT21": "116" - }, - { - "Procedure Code": "D2330", - "Description": "Resin-based composite – one surface, anterior", - "PriceLTEQ21": "72", - "PriceGT21": "72" - }, - { - "Procedure Code": "D2331", - "Description": "Resin-based composite – two surfaces, anterior", - "PriceLTEQ21": "92", - "PriceGT21": "92" - }, - { - "Procedure Code": "D2332", - "Description": "Resin-based composite – three surfaces, anterior", - "PriceLTEQ21": "116", - "PriceGT21": "116" - }, - { - "Procedure Code": "D2335", - "Description": "Resin-based composite – four or more surfaces or involving incisal angle (anterior)", - "PriceLTEQ21": "146", - "PriceGT21": "146" - }, - { - "Procedure Code": "D2390", - "Description": "Resin-based composite crown, anterior", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2391", - "Description": "Resin-based composite – one surface, posterior", - "PriceLTEQ21": "62", - "PriceGT21": "62" - }, - { - "Procedure Code": "D2392", - "Description": "Resin-based composite – two surfaces, posterior", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D2393", - "Description": "Resin-based composite – three surfaces, posterior", - "PriceLTEQ21": "92", - "PriceGT21": "92" - }, - { - "Procedure Code": "D2394", - "Description": "Resin-based composite – four or more surfaces, posterior", - "PriceLTEQ21": "116", - "PriceGT21": "116" - }, - { - "Procedure Code": "D2710", - "Description": "Crown – resin-based composite (indirect)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2740", - "Description": "Crown – porcelain/ceramic", - "PriceLTEQ21": "729", - "PriceGT21": "729" - }, - { - "Procedure Code": "D2750", - "Description": "Crown – porcelain fused to high noble metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2751", - "Description": "Crown – porcelain fused to predominantly base metal", - "PriceLTEQ21": "613", - "PriceGT21": "613" - }, - { - "Procedure Code": "D2752", - "Description": "Crown – porcelain fused to noble metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2790", - "Description": "Crown – full cast high noble metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2910", - "Description": "Re-cement or re-bond inlay, onlay or partial coverage restoration", - "PriceLTEQ21": "57", - "PriceGT21": "57" - }, - { - "Procedure Code": "D2920", - "Description": "Re-cement or re-bond crown", - "PriceLTEQ21": 150, - "PriceGT21": 150 - }, - { - "Procedure Code": "D2929", - "Description": "Prefabricated porcelain/ceramic crown – primary tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2930", - "Description": "Prefabricated stainless steel crown – primary tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2931", - "Description": "Prefabricated stainless steel crown – permanent tooth", - "PriceLTEQ21": "171", - "PriceGT21": "171" - }, - { - "Procedure Code": "D2932", - "Description": "Prefabricated resin crown", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2934", - "Description": "Prefabricated esthetic coated stainless steel crown – primary tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2950", - "Description": "Core buildup, including any pins when required", - "PriceLTEQ21": "164", - "PriceGT21": "164" - }, - { - "Procedure Code": "D2951", - "Description": "Pin retention – per tooth, in addition to restoration", - "PriceLTEQ21": "27", - "PriceGT21": "27" - }, - { - "Procedure Code": "D2954", - "Description": "Prefabricated post and core in addition to crown", - "PriceLTEQ21": "191", - "PriceGT21": "191" - }, - { - "Procedure Code": "D2980", - "Description": "Crown repair necessitated by restorative material failure", - "PriceLTEQ21": "115", - "PriceGT21": "115" - }, - { - "Procedure Code": "D2999", - "Description": "Unspecified restorative procedure, by report", - "PriceLTEQ21": "IC", - "PriceGT21": "IC" - }, - { - "Procedure Code": "D3120", - "Description": "Pulp cap – indirect (excluding final restoration)", - "PriceLTEQ21": "34", - "PriceGT21": "34" - }, - { - "Procedure Code": "D3220", - "Description": "Therapeutic pulpotomy (excluding final restoration) – removal of pulp coronal to the dentinocemental junction and application of medicament", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D3310", - "Description": "Endodontic therapy, anterior (excluding final restoration)", - "PriceLTEQ21": "544", - "PriceGT21": "544" - }, - { - "Procedure Code": "D3320", - "Description": "Endodontic therapy, premolar tooth (excluding final restoration)", - "PriceLTEQ21": "639", - "PriceGT21": "639" - }, - { - "Procedure Code": "D3330", - "Description": "Endodontic therapy, molar tooth (excluding final restoration)", - "PriceLTEQ21": "829", - "PriceGT21": "829" - }, - { - "Procedure Code": "D3346", - "Description": "Retreatment of previous root canal therapy – anterior", - "PriceLTEQ21": "456", - "PriceGT21": "456" - }, - { - "Procedure Code": "D3347", - "Description": "Retreatment of previous root canal therapy – premolar", - "PriceLTEQ21": "538", - "PriceGT21": "538" - }, - { - "Procedure Code": "D3348", - "Description": "Retreatment of previous root canal therapy – molar", - "PriceLTEQ21": "613", - "PriceGT21": "613" - }, - { - "Procedure Code": "D3410", - "Description": "Apicoectomy – anterior", - "PriceLTEQ21": "407", - "PriceGT21": "407" - }, - { - "Procedure Code": "D3421", - "Description": "Apicoectomy – premolar (first root)", - "PriceLTEQ21": "460", - "PriceGT21": "460" - }, - { - "Procedure Code": "D3425", - "Description": "Apicoectomy – molar (first root)", - "PriceLTEQ21": "598", - "PriceGT21": "598" - }, - { - "Procedure Code": "D3426", - "Description": "Apicoectomy (each additional root)", - "PriceLTEQ21": "230", - "PriceGT21": "230" - }, - { - "Procedure Code": "D4210", - "Description": "Gingivectomy or gingivoplasty - Four or more contiguous teeth or bounded teeth spaces per quadrant", - "PriceLTEQ21": "307", - "PriceGT21": "307" - }, - { - "Procedure Code": "D4211", - "Description": "Gingivectomy or gingivoplasty - one to three contiguous teeth or bounded teeth spaces per quadrant", - "PriceLTEQ21": "111", - "PriceGT21": "111" - }, - { - "Procedure Code": "D4341", - "Description": "Periodontal scaling and root planing - four or more teeth per quadrant", - "PriceLTEQ21": "134", - "PriceGT21": "134" - }, - { - "Procedure Code": "D4342", - "Description": "Periodontal scaling and root planing - one to three teeth, per quadrant", - "PriceLTEQ21": "90", - "PriceGT21": "90" - }, - { - "Procedure Code": "D4346", - "Description": "Scaling in presence of generalized moderate or severe gingival inflammation – full mouth, after oral evaluation", - "PriceLTEQ21": "60", - "PriceGT21": "60" - }, - { - "Procedure Code": "D5110", - "Description": "Complete denture – maxillary", - "PriceLTEQ21": "730", - "PriceGT21": "730" - }, - { - "Procedure Code": "D5120", - "Description": "Complete denture – mandibular", - "PriceLTEQ21": "730", - "PriceGT21": "730" - }, - { - "Procedure Code": "D5130", - "Description": "Immediate denture – maxillary", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5140", - "Description": "Immediate denture - mandibular", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5211", - "Description": "Maxillary partial denture - resin base (including retentive/clasping materials, rests and teeth)", - "PriceLTEQ21": "556", - "PriceGT21": "556" - }, - { - "Procedure Code": "D5212", - "Description": "Mandibular partial denture - resin base (including retentive/clasping materials, rests and teeth)", - "PriceLTEQ21": "595", - "PriceGT21": "595" - }, - { - "Procedure Code": "D5213", - "Description": "Maxillary partial denture- cast metal framework with resin denture bases (including retentive/clasping materials, rests and teeth)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5214", - "Description": "Mandibular partial denture - cast metal framework with resin denture bases (including retentive/clasping materials, rests and teeth)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5225", - "Description": "Maxillary partial denture- flexible base", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5226", - "Description": "Mandibular partial denture- flexible base", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5511", - "Description": "Repair broken complete denture base, mandibular", - "PriceLTEQ21": "85", - "PriceGT21": "85" - }, - { - "Procedure Code": "D5512", - "Description": "Repair broken complete denture base, maxillary", - "PriceLTEQ21": "85", - "PriceGT21": "85" - }, - { - "Procedure Code": "D5520", - "Description": "Replace missing or broken teeth - complete denture (each tooth)", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D5611", - "Description": "Repair broken resin partial denture base, mandibular", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D5612", - "Description": "Repair broken resin partial denture base, maxillary", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D5621", - "Description": "Repair broken cast partial denture base, mandibular", - "PriceLTEQ21": "104", - "PriceGT21": "104" - }, - { - "Procedure Code": "D5622", - "Description": "Repair broken cast partial denture base, maxillary", - "PriceLTEQ21": "104", - "PriceGT21": "104" - }, - { - "Procedure Code": "D5630", - "Description": "Repair or replace broken retentive/clasping materials – per tooth", - "PriceLTEQ21": "99", - "PriceGT21": "99" - }, - { - "Procedure Code": "D5640", - "Description": "Replace broken teeth - per tooth", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D5650", - "Description": "Add tooth to existing partial denture", - "PriceLTEQ21": "92", - "PriceGT21": "92" - }, - { - "Procedure Code": "D5660", - "Description": "Add clasp to existing partial denture per tooth", - "PriceLTEQ21": "98", - "PriceGT21": "98" - }, - { - "Procedure Code": "D5730", - "Description": "Reline complete maxillary denture (direct)", - "PriceLTEQ21": "158", - "PriceGT21": "158" - }, - { - "Procedure Code": "D5731", - "Description": "Reline lower complete mandibular denture (direct)", - "PriceLTEQ21": "173", - "PriceGT21": "173" - }, - { - "Procedure Code": "D5740", - "Description": "Reline maxillary partial denture(chairside)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5741", - "Description": "Reline mandibular partial denture(chairside)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5750", - "Description": "Reline complete maxillary denture (indirect)", - "PriceLTEQ21": "214", - "PriceGT21": "214" - }, - { - "Procedure Code": "D5751", - "Description": "Reline complete mandibular denture (indirect)", - "PriceLTEQ21": "215", - "PriceGT21": "215" - }, - { - "Procedure Code": "D5760", - "Description": "Reline maxillary partial denture (laboratory)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5761", - "Description": "Reline mandibular partial denture (laboratory)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6241", - "Description": "Pontic-porcelain fused metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6751", - "Description": "Retainer crown-porcelain fused to metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6930", - "Description": "Re-cement or re-bond fixed partial denture", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6980", - "Description": "Fixed partial denture repair", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6999", - "Description": "Fixed prosthodontic procedure", - "PriceLTEQ21": "IC", - "PriceGT21": "IC" - }, - { - "Procedure Code": "D7111", - "Description": "Extraction, coronal remnants - primary tooth", - "PriceLTEQ21": "75", - "PriceGT21": "75" - }, - { - "Procedure Code": "D7140", - "Description": "Extraction, erupted tooth or exposed root (elevation and/or forceps removal)", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D7210", - "Description": "Extraction, erupted tooth requiring removal of bone and/or sectioning of tooth, and including elevation of mucoperiosteal flap if indicated", - "PriceLTEQ21": "149", - "PriceGT21": "149" - }, - { - "Procedure Code": "D7220", - "Description": "Removal of impacted tooth - soft tissue", - "PriceLTEQ21": "191", - "PriceGT21": "191" - }, - { - "Procedure Code": "D7230", - "Description": "Removal of impacted tooth - partially bony", - "PriceLTEQ21": "249", - "PriceGT21": "249" - }, - { - "Procedure Code": "D7240", - "Description": "Removal of impacted tooth - completely bony", - "PriceLTEQ21": "295", - "PriceGT21": "295" - }, - { - "Procedure Code": "D7250", - "Description": "Surgical removal of residual tooth roots (cutting procedure)", - "PriceLTEQ21": "144", - "PriceGT21": "144" - }, - { - "Procedure Code": "D7251", - "Description": "Coronectomy- intentional partial tooth removal, impacted teeth only", - "PriceLTEQ21": "134", - "PriceGT21": "134" - }, - { - "Procedure Code": "D7270", - "Description": "Tooth reimplantation and/or stabilization of accidentally evulsed or displaced tooth", - "PriceLTEQ21": "106", - "PriceGT21": "106" - }, - { - "Procedure Code": "D7280", - "Description": "Surgical access of an unerupted tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D7283", - "Description": "Placement of device to facilitate eruption of impacted tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D7310", - "Description": "Alveoloplasty in conjunction with extractions-four or more teeth or tooth spaces, per quadrant", - "PriceLTEQ21": "142", - "PriceGT21": "142" - }, - { - "Procedure Code": "D7311", - "Description": "Alveoloplasty in conjunction with extractions - one to three teeth or tooth spaces, per quadrant", - "PriceLTEQ21": "128", - "PriceGT21": "128" - }, - { - "Procedure Code": "D7320", - "Description": "Alveoloplasty not in conjunction with extractions- four or more teeth or tooth spaces, per quadrant", - "PriceLTEQ21": "187", - "PriceGT21": "187" - }, - { - "Procedure Code": "D7321", - "Description": "Alveoloplasty not in conjunction with extractions - one to three teeth or tooth spaces, per quadrant", - "PriceLTEQ21": "149", - "PriceGT21": "149" - }, - { - "Procedure Code": "D7340", - "Description": "Vestibuloplasty - ridge extension (second epithelialization)", - "PriceLTEQ21": "747", - "PriceGT21": "747" - }, - { - "Procedure Code": "D7350", - "Description": "Vestibuloplasty - ridge extension (Oral surgeon only)", - "PriceLTEQ21": "943", - "PriceGT21": "943" - }, - { - "Procedure Code": "D7410", - "Description": "Radical excision - lesion diameter up to 1.25cm", - "PriceLTEQ21": "115", - "PriceGT21": "115" - }, - { - "Procedure Code": "D7411", - "Description": "Excision of benign lesion greater than 1.25 cm", - "PriceLTEQ21": "208", - "PriceGT21": "208" - }, - { - "Procedure Code": "D7450", - "Description": "Removal of benign odontogenic cyst or tumor - lesion diameter up to 1.25 cm", - "PriceLTEQ21": "248", - "PriceGT21": "248" - }, - { - "Procedure Code": "D7451", - "Description": "Removal of benign odontogenic cyst or tumor - lesion diameter greater than 1.25 cm", - "PriceLTEQ21": "288", - "PriceGT21": "288" - }, - { - "Procedure Code": "D7460", - "Description": "Removal of benign nonodontogenic cyst or tumor - lesion diameter up to 1.25 cm", - "PriceLTEQ21": "121", - "PriceGT21": "121" - }, - { - "Procedure Code": "D7461", - "Description": "Removal of benign nonodontogenic cyst or tumor - lesion diameter greater than 1.25 cm", - "PriceLTEQ21": "143", - "PriceGT21": "143" - }, - { - "Procedure Code": "D7471", - "Description": "Removal of lateral exostosis (maxilla or mandible) (Oral surgeon only)", - "PriceLTEQ21": "143", - "PriceGT21": "143" - }, - { - "Procedure Code": "D7472", - "Description": "Removal of torus palatinus (Oral surgeon only)", - "PriceLTEQ21": "143", - "PriceGT21": "143" - }, - { - "Procedure Code": "D7473", - "Description": "Removal of torus mandibularis (Oral surgeon only)", - "PriceLTEQ21": "143", - "PriceGT21": "143" - }, - { - "Procedure Code": "D7961", - "Description": "Buccal/labial frenectomy (frenulectomy)", - "PriceLTEQ21": "107", - "PriceGT21": "107" - }, - { - "Procedure Code": "D7962", - "Description": "Lingual frenectomy (frenulectomy)", - "PriceLTEQ21": "107", - "PriceGT21": "107" - }, - { - "Procedure Code": "D7963", - "Description": "Frenuloplasty", - "PriceLTEQ21": "416", - "PriceGT21": "416" - }, - { - "Procedure Code": "D7970", - "Description": "Excision of hyperplastic tissue - per arch", - "PriceLTEQ21": "246", - "PriceGT21": "246" - }, - { - "Procedure Code": "D7999", - "Description": "Unspecified oral surgery procedure, by report", - "PriceLTEQ21": "IC", - "PriceGT21": "IC" - }, - { - "Procedure Code": "D8010", - "Description": "Limited orthodontic treamtnent of the primary transition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8020", - "Description": "Limited orthodontic treatment of the transitional dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8030", - "Description": "Limited orthodontic treatment of the adolescent dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8040", - "Description": "Limited orthodontic treatment of the adult dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8070", - "Description": "Comprehensive orthodontic treatment of the transitional dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8080", - "Description": "Comprehensive orthodontic treatment of the adolescent dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8090", - "Description": "Comprehensive orthodontic treatment of the adult dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8660", - "Description": "Pre-orthodontic treatment examination to monitor growth and development (records fee) (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8670", - "Description": "Periodic orthodontic treatment visit (Orthodontist only)", - "PriceLTEQ21": "215", - "PriceGT21": "215" - }, - { - "Procedure Code": "D8680", - "Description": "Orthodontic retention (removal of appliances, construction and placement of retainer(s)) (Orthodontist only)", - "PriceLTEQ21": "85", - "PriceGT21": "85" - }, - { - "Procedure Code": "D8703", - "Description": "Replacement of lost or broken retainer- maxillary (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8704", - "Description": "Replacement of lost or broken retainer- mandibular (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8999", - "Description": "Unspecified orthodontic procedure, by report (Orthodontist only) I.C I.C** Y Y**", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9110", - "Description": "Palliative treatment of dental pain – per visit", - "PriceLTEQ21": "36", - "PriceGT21": "36" - }, - { - "Procedure Code": "D9222", - "Description": "Deep sedation/general anesthesia – first 15 minutes", - "PriceLTEQ21": "90", - "PriceGT21": "90" - }, - { - "Procedure Code": "D9223", - "Description": "Deep sedation/general anesthesia – each additional 15- minute increment", - "PriceLTEQ21": "90", - "PriceGT21": "90" - }, - { - "Procedure Code": "D9230", - "Description": "Analgesia, anxiolysis, inhalation of nitrous oxide", - "PriceLTEQ21": "15", - "PriceGT21": "15" - }, - { - "Procedure Code": "D9248", - "Description": "Nonintravenous conscious sedation", - "PriceLTEQ21": "45", - "PriceGT21": "45" - }, - { - "Procedure Code": "D9310", - "Description": "Consultation- Diagnostic service provided by dentist or physician other than requesting dentist or physician (Specialist only)", - "PriceLTEQ21": "63", - "PriceGT21": "63" - }, - { - "Procedure Code": "D9410", - "Description": "House/extended care facility call, once per facility per day", - "PriceLTEQ21": "39", - "PriceGT21": "39" - }, - { - "Procedure Code": "D9450", - "Description": "Rural add-on encounter payment", - "PriceLTEQ21": "31", - "PriceGT21": "31" - }, - { - "Procedure Code": "D9920", - "Description": "Behavior management, by report", - "PriceLTEQ21": "86", - "PriceGT21": "86" - }, - { - "Procedure Code": "D9930", - "Description": "Treatment of complications (postsurgical) - unusual circumstances, by report", - "PriceLTEQ21": "30", - "PriceGT21": "30" - }, - { - "Procedure Code": "D9941", - "Description": "Fabrication of athletic mouthguard", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9944", - "Description": "Occlusal guard - hard appliance, full arch", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9945", - "Description": "Occlusal guard - soft appliance, full arch", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9946", - "Description": "Occlusal guard - hard appliance, partial arch", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9999", - "Description": "Unspecified adjunctive procedure, by report", - "PriceLTEQ21": "IC", - "PriceGT21": "IC" - } -] \ No newline at end of file + { "Procedure Code": "D0120", "Description": "Periodic oral evaluation - established patient", "Price": 105 }, + { "Procedure Code": "D0140", "Description": "Limited oral evaluation - problem focused", "Price": 90 }, + { "Procedure Code": "D0145", "Description": "Oral evaluation for a patient under three years of age and counseling with primary caregiver", "Price": "NC" }, + { "Procedure Code": "D0150", "Description": "Comprehensive oral evaluation - new or established patient", "Price": 120 }, + { "Procedure Code": "D0180", "Description": "Comprehensive periodontal evaluation - new or established patient", "Price": 37 }, + { "Procedure Code": "D0190", "Description": "Screening of a patient (PHDH only)", "Price": 20 }, + { "Procedure Code": "D0191", "Description": "Assessment of a patient (PHDH only)", "Price": 20 }, + { "Procedure Code": "D0210", "Description": "Intraoral - complete series of radiographic images", "Price": 120 }, + { "Procedure Code": "D0220", "Description": "Intraoral - periapical, first radiographic image", "Price": 60 }, + { "Procedure Code": "D0230", "Description": "Intraoral - periapical, each additional radiographic image", "Price": 50 }, + { "Procedure Code": "D0240", "Description": "Intraoral - occlusal radiographic image", "Price": "NC" }, + { "Procedure Code": "D0270", "Description": "Bitewing - single radiographic image", "Price": 14 }, + { "Procedure Code": "D0272", "Description": "Bitewings - two radiographic images", "Price": 80 }, + { "Procedure Code": "D0273", "Description": "Bitewings - three radiographic images", "Price": 27 }, + { "Procedure Code": "D0274", "Description": "Bitewings - four radiographic images", "Price": 160 }, + { "Procedure Code": "D0330", "Description": "Panoramic radiographic image", "Price": 150 }, + { "Procedure Code": "D0340", "Description": "Cephalometric radiograph image (Oral surgeon only)", "Price": 74 }, + { "Procedure Code": "D0364", "Description": "CBCT - less than one jaw (interpret)", "Price": 350 }, + { "Procedure Code": "D0365", "Description": "CBCT - mandible (interpret)", "Price": 350 }, + { "Procedure Code": "D0366", "Description": "CBCT - maxilla (interpret)", "Price": 350 }, + { "Procedure Code": "D0367", "Description": "CBCT - both jaws (interpret)", "Price": 400 }, + { "Procedure Code": "D0368", "Description": "CBCT - include TMJ (interpret)", "Price": 375 }, + { "Procedure Code": "D0380", "Description": "CBCT - less than one jaw (capture only)", "Price": 300 }, + { "Procedure Code": "D0381", "Description": "CBCT - mandible (capture only)", "Price": 300 }, + { "Procedure Code": "D0382", "Description": "CBCT - maxilla (capture only)", "Price": 300 }, + { "Procedure Code": "D0383", "Description": "CBCT - both jaws / include TMJ (capture only)", "Price": 350 }, + { "Procedure Code": "D1110", "Description": "Prophylaxis - adult, 14 yo or older", "Price": 150 }, + { "Procedure Code": "D1120", "Description": "Prophylaxis - child, 0-13 yo", "Price": 120 }, + { "Procedure Code": "D1206", "Description": "Topical application of fluoride varnish", "Price": 26 }, + { "Procedure Code": "D1208", "Description": "Topical application of fluoride - excluding varnish", "Price": 90 }, + { "Procedure Code": "D1351", "Description": "Sealant - per tooth", "Price": 80 }, + { "Procedure Code": "D1354", "Description": "Application of caries arresting medicament - per tooth", "Price": 15 }, + { "Procedure Code": "D1510", "Description": "Space maintainer - fixed, unilateral - per quadrant", "Price": "NC" }, + { "Procedure Code": "D1516", "Description": "Space maintainer - fixed, bilateral, maxillary", "Price": "NC" }, + { "Procedure Code": "D1517", "Description": "Space maintainer - fixed, bilateral, mandibular", "Price": "NC" }, + { "Procedure Code": "D1520", "Description": "Space maintainer - removable, unilateral, per quadrant", "Price": "NC" }, + { "Procedure Code": "D1526", "Description": "Space maintainer - removable, bilateral, maxillary", "Price": "NC" }, + { "Procedure Code": "D1527", "Description": "Space maintainer - removable, bilateral, mandibular", "Price": "NC" }, + { "Procedure Code": "D1575", "Description": "Distal shoe space maintainer - fixed, unilateral, per quadrant", "Price": "NC" }, + { "Procedure Code": "D1701", "Description": "Pfizer-BioNTech Covid-19 vaccine - first dose", "Price": 45.87 }, + { "Procedure Code": "D1702", "Description": "Pfizer-BioNTech Covid-19 vaccine - second dose", "Price": 45.87 }, + { "Procedure Code": "D1707", "Description": "Janssen Covid-19 vaccine - single dose", "Price": 45.87 }, + { "Procedure Code": "D1708", "Description": "Pfizer-BioNTech Covid-19 vaccine - third dose", "Price": 45.87 }, + { "Procedure Code": "D1709", "Description": "Pfizer-BioNTech Covid-19 vaccine - booster dose", "Price": 45.87 }, + { "Procedure Code": "D1712", "Description": "Janssen Covid-19 vaccine - booster dose", "Price": 45.87 }, + { "Procedure Code": "D1713", "Description": "Pfizer-BioNTech Covid-19 vaccine pediatric - first dose", "Price": 45.87 }, + { "Procedure Code": "D1714", "Description": "Pfizer-BioNTech Covid-19 vaccine pediatric - second dose", "Price": 45.87 }, + { "Procedure Code": "D1999", "Description": "Unspecified preventive procedure, by report", "Price": 50 }, + { "Procedure Code": "D2140", "Description": "Amalgam - one surface, primary or permanent", "Price": 150 }, + { "Procedure Code": "D2150", "Description": "Amalgam - two surfaces, primary or permanent", "Price": 200 }, + { "Procedure Code": "D2160", "Description": "Amalgam - three surfaces, primary or permanent", "Price": 92 }, + { "Procedure Code": "D2161", "Description": "Amalgam - four or more surfaces, primary or permanent", "Price": 116 }, + { "Procedure Code": "D2330", "Description": "Resin-based composite - one surface, anterior", "Price": 180 }, + { "Procedure Code": "D2331", "Description": "Resin-based composite - two surfaces, anterior", "Price": 220 }, + { "Procedure Code": "D2332", "Description": "Resin-based composite - three surfaces, anterior", "Price": 280 }, + { "Procedure Code": "D2335", "Description": "Resin-based composite - four or more surfaces or involving incisal angle (anterior)", "Price": 350 }, + { "Procedure Code": "D2390", "Description": "Resin-based composite crown, anterior", "Price": "NC" }, + { "Procedure Code": "D2391", "Description": "Resin-based composite - one surface, posterior", "Price": 200 }, + { "Procedure Code": "D2392", "Description": "Resin-based composite - two surfaces, posterior", "Price": 250 }, + { "Procedure Code": "D2393", "Description": "Resin-based composite - three surfaces, posterior", "Price": 280 }, + { "Procedure Code": "D2394", "Description": "Resin-based composite - four or more surfaces, posterior", "Price": 320 }, + { "Procedure Code": "D2710", "Description": "Crown - resin-based composite (indirect)", "Price": "NC" }, + { "Procedure Code": "D2740", "Description": "Crown - porcelain/ceramic", "Price": 1300 }, + { "Procedure Code": "D2750", "Description": "Crown - porcelain fused to high noble metal", "Price": 1300 }, + { "Procedure Code": "D2751", "Description": "Crown - porcelain fused to predominantly base metal", "Price": 1200 }, + { "Procedure Code": "D2752", "Description": "Crown - porcelain fused to noble metal", "Price": 1200 }, + { "Procedure Code": "D2790", "Description": "Crown - full cast high noble metal", "Price": "NC" }, + { "Procedure Code": "D2910", "Description": "Re-cement or re-bond inlay, onlay or partial coverage restoration", "Price": 57 }, + { "Procedure Code": "D2920", "Description": "Re-cement or re-bond crown", "Price": 120 }, + { "Procedure Code": "D2929", "Description": "Prefabricated porcelain/ceramic crown - primary tooth", "Price": "NC" }, + { "Procedure Code": "D2930", "Description": "Prefabricated stainless steel crown - primary tooth", "Price": "NC" }, + { "Procedure Code": "D2931", "Description": "Prefabricated stainless steel crown - permanent tooth", "Price": 171 }, + { "Procedure Code": "D2932", "Description": "Prefabricated resin crown", "Price": "NC" }, + { "Procedure Code": "D2934", "Description": "Prefabricated esthetic coated stainless steel crown - primary tooth", "Price": "NC" }, + { "Procedure Code": "D2950", "Description": "Core buildup, including any pins when required", "Price": 350 }, + { "Procedure Code": "D2951", "Description": "Pin retention - per tooth, in addition to restoration", "Price": 27 }, + { "Procedure Code": "D2954", "Description": "Prefabricated post and core in addition to crown", "Price": 450 }, + { "Procedure Code": "D2955", "Description": "Post removal", "Price": 350 }, + { "Procedure Code": "D2980", "Description": "Crown repair necessitated by restorative material failure", "Price": 115 }, + { "Procedure Code": "D2999", "Description": "Unspecified restorative procedure, by report", "Price": "IC" }, + { "Procedure Code": "D3120", "Description": "Pulp cap - indirect (excluding final restoration)", "Price": 34 }, + { "Procedure Code": "D3220", "Description": "Therapeutic pulpotomy (excluding final restoration)", "Price": "NC" }, + { "Procedure Code": "D3230", "Description": "Pulpal therapy (resorbable filling) - anterior, primary tooth", "Price": 280 }, + { "Procedure Code": "D3240", "Description": "Pulpal therapy (resorbable filling) - posterior, primary tooth", "Price": 490 }, + { "Procedure Code": "D3310", "Description": "Endodontic therapy, anterior tooth (excluding final restoration)", "Price": 900 }, + { "Procedure Code": "D3320", "Description": "Endodontic therapy, premolar tooth (excluding final restoration)", "Price": 1050 }, + { "Procedure Code": "D3330", "Description": "Endodontic therapy, molar tooth (excluding final restoration)", "Price": 1250 }, + { "Procedure Code": "D3346", "Description": "Retreatment of previous root canal therapy - anterior", "Price": 950 }, + { "Procedure Code": "D3347", "Description": "Retreatment of previous root canal therapy - premolar", "Price": 1100 }, + { "Procedure Code": "D3348", "Description": "Retreatment of previous root canal therapy - molar", "Price": 1500 }, + { "Procedure Code": "D3410", "Description": "Apicoectomy - anterior", "Price": 407 }, + { "Procedure Code": "D3421", "Description": "Apicoectomy - premolar (first root)", "Price": 460 }, + { "Procedure Code": "D3425", "Description": "Apicoectomy - molar (first root)", "Price": 598 }, + { "Procedure Code": "D3426", "Description": "Apicoectomy (each additional root)", "Price": 230 }, + { "Procedure Code": "D4210", "Description": "Gingivectomy or gingivoplasty - four or more contiguous teeth per quadrant", "Price": 307 }, + { "Procedure Code": "D4211", "Description": "Gingivectomy or gingivoplasty - one to three contiguous teeth per quadrant", "Price": 111 }, + { "Procedure Code": "D4341", "Description": "Periodontal scaling and root planing - four or more teeth per quadrant", "Price": 250 }, + { "Procedure Code": "D4342", "Description": "Periodontal scaling and root planing - one to three teeth, per quadrant", "Price": 90 }, + { "Procedure Code": "D4346", "Description": "Scaling in presence of generalized moderate or severe gingival inflammation - full mouth", "Price": 60 }, + { "Procedure Code": "D4910", "Description": "Periodontal maintenance", "Price": 250 }, + { "Procedure Code": "D5110", "Description": "Complete denture - maxillary", "Price": 1700 }, + { "Procedure Code": "D5120", "Description": "Complete denture - mandibular", "Price": 1700 }, + { "Procedure Code": "D5130", "Description": "Immediate denture - maxillary", "Price": "NC" }, + { "Procedure Code": "D5140", "Description": "Immediate denture - mandibular", "Price": "NC" }, + { "Procedure Code": "D5211", "Description": "Maxillary partial denture - resin base", "Price": 1300 }, + { "Procedure Code": "D5212", "Description": "Mandibular partial denture - resin base", "Price": 1300 }, + { "Procedure Code": "D5213", "Description": "Maxillary partial denture - cast metal framework with resin denture bases", "Price": 1700 }, + { "Procedure Code": "D5214", "Description": "Mandibular partial denture - cast metal framework with resin denture bases", "Price": 1700 }, + { "Procedure Code": "D5225", "Description": "Maxillary partial denture - flexible base", "Price": "NC" }, + { "Procedure Code": "D5226", "Description": "Mandibular partial denture - flexible base", "Price": "NC" }, + { "Procedure Code": "D5510", "Description": "Repair broken complete denture base (QUAD)", "Price": 400 }, + { "Procedure Code": "D5511", "Description": "Repair broken complete denture base, mandibular", "Price": 85 }, + { "Procedure Code": "D5512", "Description": "Repair broken complete denture base, maxillary", "Price": 85 }, + { "Procedure Code": "D5520", "Description": "Replace missing or broken teeth - complete denture (each tooth)", "Price": 200 }, + { "Procedure Code": "D5611", "Description": "Repair broken resin partial denture base, mandibular", "Price": 77 }, + { "Procedure Code": "D5612", "Description": "Repair broken resin partial denture base, maxillary", "Price": 77 }, + { "Procedure Code": "D5621", "Description": "Repair broken cast partial denture base, mandibular", "Price": 104 }, + { "Procedure Code": "D5622", "Description": "Repair broken cast partial denture base, maxillary", "Price": 104 }, + { "Procedure Code": "D5630", "Description": "Repair or replace broken retentive/clasping materials - per tooth", "Price": 99 }, + { "Procedure Code": "D5640", "Description": "Replace broken teeth - per tooth", "Price": 77 }, + { "Procedure Code": "D5650", "Description": "Add tooth to existing partial denture", "Price": 92 }, + { "Procedure Code": "D5660", "Description": "Add clasp to existing partial denture per tooth", "Price": 98 }, + { "Procedure Code": "D5730", "Description": "Reline complete maxillary denture (chairside)", "Price": 500 }, + { "Procedure Code": "D5731", "Description": "Reline complete mandibular denture (chairside)", "Price": 500 }, + { "Procedure Code": "D5740", "Description": "Reline maxillary partial denture (chairside)", "Price": "NC" }, + { "Procedure Code": "D5741", "Description": "Reline mandibular partial denture (chairside)", "Price": "NC" }, + { "Procedure Code": "D5750", "Description": "Reline complete maxillary denture (laboratory)", "Price": 600 }, + { "Procedure Code": "D5751", "Description": "Reline complete mandibular denture (laboratory)", "Price": 600 }, + { "Procedure Code": "D5760", "Description": "Reline maxillary partial denture (laboratory)", "Price": "NC" }, + { "Procedure Code": "D5761", "Description": "Reline mandibular partial denture (laboratory)", "Price": "NC" }, + { "Procedure Code": "D6010", "Description": "Surgical placement of implant body", "Price": 1600 }, + { "Procedure Code": "D6056", "Description": "Prefabricated abutment", "Price": 750 }, + { "Procedure Code": "D6057", "Description": "Custom abutment", "Price": 800 }, + { "Procedure Code": "D6058", "Description": "Implant crown - porcelain/ceramic", "Price": 1400 }, + { "Procedure Code": "D6059", "Description": "Implant crown - PFM", "Price": 1400 }, + { "Procedure Code": "D6100", "Description": "Surgical removal of implant body", "Price": 320 }, + { "Procedure Code": "D6110", "Description": "Implant/abutment supported removable denture - maxillary", "Price": 1600 }, + { "Procedure Code": "D6111", "Description": "Implant/abutment supported removable denture - mandibular", "Price": 1600 }, + { "Procedure Code": "D6241", "Description": "Pontic - porcelain fused to metal", "Price": "NC" }, + { "Procedure Code": "D6242", "Description": "Pontic - noble metal", "Price": 1400 }, + { "Procedure Code": "D6245", "Description": "Pontic - porcelain/ceramic", "Price": 1400 }, + { "Procedure Code": "D6751", "Description": "Retainer crown - porcelain fused to metal", "Price": "NC" }, + { "Procedure Code": "D6930", "Description": "Re-cement or re-bond fixed partial denture", "Price": "NC" }, + { "Procedure Code": "D6980", "Description": "Fixed partial denture repair", "Price": "NC" }, + { "Procedure Code": "D6999", "Description": "Fixed prosthodontic procedure, by report", "Price": "IC" }, + { "Procedure Code": "D7111", "Description": "Extraction, coronal remnants - primary tooth", "Price": 120 }, + { "Procedure Code": "D7140", "Description": "Extraction, erupted tooth or exposed root (simple)", "Price": 150 }, + { "Procedure Code": "D7210", "Description": "Extraction, erupted tooth requiring removal of bone and/or sectioning (surgical)", "Price": 280 }, + { "Procedure Code": "D7220", "Description": "Removal of impacted tooth - soft tissue", "Price": 380 }, + { "Procedure Code": "D7230", "Description": "Removal of impacted tooth - partially bony", "Price": 450 }, + { "Procedure Code": "D7240", "Description": "Removal of impacted tooth - completely bony", "Price": 550 }, + { "Procedure Code": "D7250", "Description": "Surgical removal of residual tooth roots", "Price": 280 }, + { "Procedure Code": "D7251", "Description": "Coronectomy - intentional partial tooth removal, impacted teeth only", "Price": 134 }, + { "Procedure Code": "D7270", "Description": "Tooth reimplantation and/or stabilization of accidentally evulsed or displaced tooth", "Price": 106 }, + { "Procedure Code": "D7280", "Description": "Surgical access of an unerupted tooth", "Price": "NC" }, + { "Procedure Code": "D7283", "Description": "Placement of device to facilitate eruption of impacted tooth", "Price": "NC" }, + { "Procedure Code": "D7310", "Description": "Alveoloplasty in conjunction with extractions - four or more teeth per quadrant", "Price": 142 }, + { "Procedure Code": "D7311", "Description": "Alveoloplasty in conjunction with extractions - one to three teeth per quadrant", "Price": 128 }, + { "Procedure Code": "D7320", "Description": "Alveoloplasty not in conjunction with extractions - four or more teeth per quadrant", "Price": 187 }, + { "Procedure Code": "D7321", "Description": "Alveoloplasty not in conjunction with extractions - one to three teeth per quadrant", "Price": 149 }, + { "Procedure Code": "D7340", "Description": "Vestibuloplasty - ridge extension (second epithelialization)", "Price": 747 }, + { "Procedure Code": "D7350", "Description": "Vestibuloplasty - ridge extension (Oral surgeon only)", "Price": 943 }, + { "Procedure Code": "D7410", "Description": "Excision of benign lesion - diameter up to 1.25 cm", "Price": 115 }, + { "Procedure Code": "D7411", "Description": "Excision of benign lesion - diameter greater than 1.25 cm", "Price": 208 }, + { "Procedure Code": "D7450", "Description": "Removal of benign odontogenic cyst or tumor - up to 1.25 cm", "Price": 248 }, + { "Procedure Code": "D7451", "Description": "Removal of benign odontogenic cyst or tumor - greater than 1.25 cm", "Price": 288 }, + { "Procedure Code": "D7460", "Description": "Removal of benign nonodontogenic cyst or tumor - up to 1.25 cm", "Price": 121 }, + { "Procedure Code": "D7461", "Description": "Removal of benign nonodontogenic cyst or tumor - greater than 1.25 cm", "Price": 143 }, + { "Procedure Code": "D7471", "Description": "Removal of lateral exostosis (maxilla or mandible)", "Price": 143 }, + { "Procedure Code": "D7472", "Description": "Removal of torus palatinus", "Price": 143 }, + { "Procedure Code": "D7473", "Description": "Removal of torus mandibularis", "Price": 143 }, + { "Procedure Code": "D7910", "Description": "Suture of recent small wounds up to 5 cm", "Price": 400 }, + { "Procedure Code": "D7950", "Description": "Bone graft - maxilla/mandible", "Price": 800 }, + { "Procedure Code": "D7953", "Description": "Bone graft for socket preservation after extraction", "Price": 800 }, + { "Procedure Code": "D7961", "Description": "Buccal/labial frenectomy (frenulectomy)", "Price": 107 }, + { "Procedure Code": "D7962", "Description": "Lingual frenectomy (frenulectomy)", "Price": 107 }, + { "Procedure Code": "D7963", "Description": "Frenuloplasty", "Price": 416 }, + { "Procedure Code": "D7970", "Description": "Excision of hyperplastic tissue - per arch", "Price": 246 }, + { "Procedure Code": "D7999", "Description": "Unspecified oral surgery procedure, by report", "Price": "IC" }, + { "Procedure Code": "D8010", "Description": "Limited orthodontic treatment of the primary dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8020", "Description": "Limited orthodontic treatment of the transitional dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8030", "Description": "Limited orthodontic treatment of the adolescent dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8040", "Description": "Limited orthodontic treatment of the adult dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8070", "Description": "Comprehensive orthodontic treatment of the transitional dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8080", "Description": "Comprehensive orthodontic treatment of the adolescent dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8090", "Description": "Comprehensive orthodontic treatment of the adult dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8660", "Description": "Pre-orthodontic treatment examination (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8670", "Description": "Periodic orthodontic treatment visit (Orthodontist only)", "Price": 215 }, + { "Procedure Code": "D8680", "Description": "Orthodontic retention (Orthodontist only)", "Price": 85 }, + { "Procedure Code": "D8703", "Description": "Replacement of lost or broken retainer - maxillary (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8704", "Description": "Replacement of lost or broken retainer - mandibular (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8999", "Description": "Unspecified orthodontic procedure, by report (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D9110", "Description": "Palliative treatment of dental pain - per visit", "Price": 36 }, + { "Procedure Code": "D9222", "Description": "Deep sedation/general anesthesia - first 15 minutes", "Price": 90 }, + { "Procedure Code": "D9223", "Description": "Deep sedation/general anesthesia - each additional 15-minute increment", "Price": 90 }, + { "Procedure Code": "D9230", "Description": "Analgesia, anxiolysis, inhalation of nitrous oxide", "Price": 15 }, + { "Procedure Code": "D9248", "Description": "Nonintravenous conscious sedation", "Price": 45 }, + { "Procedure Code": "D9310", "Description": "Consultation - diagnostic service (Specialist only)", "Price": 63 }, + { "Procedure Code": "D9410", "Description": "House/extended care facility call, once per facility per day", "Price": 39 }, + { "Procedure Code": "D9450", "Description": "Rural add-on encounter payment", "Price": 31 }, + { "Procedure Code": "D9920", "Description": "Behavior management, by report", "Price": 86 }, + { "Procedure Code": "D9930", "Description": "Treatment of complications (postsurgical) - unusual circumstances, by report", "Price": 30 }, + { "Procedure Code": "D9941", "Description": "Fabrication of athletic mouthguard", "Price": "NC" }, + { "Procedure Code": "D9944", "Description": "Occlusal guard - hard appliance, full arch", "Price": "NC" }, + { "Procedure Code": "D9945", "Description": "Occlusal guard - soft appliance, full arch", "Price": "NC" }, + { "Procedure Code": "D9946", "Description": "Occlusal guard - hard appliance, partial arch", "Price": "NC" }, + { "Procedure Code": "D9999", "Description": "Unspecified adjunctive procedure, by report", "Price": "IC" } +] diff --git a/apps/Frontend/src/assets/data/procedureCodesTuftsSCO.json b/apps/Frontend/src/assets/data/procedureCodesTuftsSCO.json index 6d44f2a4..247c4b2b 100644 --- a/apps/Frontend/src/assets/data/procedureCodesTuftsSCO.json +++ b/apps/Frontend/src/assets/data/procedureCodesTuftsSCO.json @@ -1,1196 +1,209 @@ [ - { - "Procedure Code": "D0120", - "Description": "Periodic oral evaluation - established patient", - "PriceLTEQ21": "24", - "PriceGT21": "24" - }, - { - "Procedure Code": "D0140", - "Description": "Limited oral evaluation - problem focused", - "PriceLTEQ21": 90, - "PriceGT21": 90 - }, - { - "Procedure Code": "D0145", - "Description": "Oral evaluation for a patient under three years of age and counseling with primary caregiver", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D0150", - "Description": "Comprehensive oral evaluation - new or established patient", - "PriceLTEQ21": "41", - "PriceGT21": "41" - }, - { - "Procedure Code": "D0180", - "Description": "Comprehensive periodontal evaluation - new or established patient", - "PriceLTEQ21": "37", - "PriceGT21": "37" - }, - { - "Procedure Code": "D0190", - "Description": "Screening of a patient (PHDH only)", - "PriceLTEQ21": "20", - "PriceGT21": "20" - }, - { - "Procedure Code": "D0191", - "Description": "Assessment of a patient (PHDH only)", - "PriceLTEQ21": "20", - "PriceGT21": "20" - }, - { - "Procedure Code": "D0210", - "Description": "Intraoral - complete series of radiographic images", - "PriceLTEQ21": "76", - "PriceGT21": "76" - }, - { - "Procedure Code": "D0220", - "Description": "Intraoral - periapical, first radiographic image", - "PriceLTEQ21": 60, - "PriceGT21": 60 - }, - { - "Procedure Code": "D0230", - "Description": "Intraoral - periapical, each additional radiographic image", - "PriceLTEQ21": 60, - "PriceGT21": 60 - }, - { - "Procedure Code": "D0240", - "Description": "Intraoral - occlusal radiographic image", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D0270", - "Description": "Bitewing - single radiographic image", - "PriceLTEQ21": "14", - "PriceGT21": "14" - }, - { - "Procedure Code": "D0272", - "Description": "Bitewings - two radiographic images", - "PriceLTEQ21": "25", - "PriceGT21": "25" - }, - { - "Procedure Code": "D0273", - "Description": "Bitewings - three radiographic images", - "PriceLTEQ21": "27", - "PriceGT21": "27" - }, - { - "Procedure Code": "D0274", - "Description": "Bitewings - four radiographic images", - "PriceLTEQ21": "36", - "PriceGT21": "36" - }, - { - "Procedure Code": "D0330", - "Description": "Panoramic radiographic image", - "PriceLTEQ21": "69", - "PriceGT21": "69" - }, - { - "Procedure Code": "D0340", - "Description": "Cephalometric radiograph image (Oral surgeon only)", - "PriceLTEQ21": "74", - "PriceGT21": "74" - }, - { - "Procedure Code": "D0364", - "Description": "Less than one jaw", - "Price": "350" - }, - { - "Procedure Code": "D0365", - "Description": "Mand", - "Price": "350" - }, - { - "Procedure Code": "D0366", - "Description": "Max", - "Price": "350" - }, - { - "Procedure Code": "D0367", - "Description": "", - "Price": "400" - }, - { - "Procedure Code": "D0368", - "Description": "include TMJ", - "Price": "375" - }, - { - "Procedure Code": "D0380", - "Description": "Less than one jaw", - "Price": "300" - }, - { - "Procedure Code": "D0381", - "Description": "Mand", - "Price": "300" - }, - { - "Procedure Code": "D0382", - "Description": "Max", - "Price": "300" - }, - { - "Procedure Code": "D0383", - "Description": "", - "Price": "350" - }, - { - "Procedure Code": "D1110", - "Description": "Prophylaxis – adult, 14 yo or older", - "PriceLTEQ21": "60", - "PriceGT21": "60" - }, - { - "Procedure Code": "D1120", - "Description": "Prophylaxis – child, 0-13 yo", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1206", - "Description": "Topical application of fluoride varnish", - "PriceLTEQ21": "26", - "PriceGT21": "26" - }, - { - "Procedure Code": "D1208", - "Description": "Topical application of fluoride – excluding varnish", - "PriceLTEQ21": "29", - "PriceGT21": "29" - }, - { - "Procedure Code": "D1351", - "Description": "Sealant – per tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1354", - "Description": "Application of caries arresting medicament - per tooth", - "PriceLTEQ21": "15", - "PriceGT21": "15" - }, - { - "Procedure Code": "D1510", - "Description": "Space maintainer – fixed,unilateral – per quadrant", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1516", - "Description": "Space maintainer- fixed- bilateral, maxillary", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1517", - "Description": "Space maintainer- fixed- bilateral, mandibular", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1520", - "Description": "Space maintainer – removable- unilateral- per quadrant", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1526", - "Description": "Space maintainer- removable- bilateral, maxillary", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1527", - "Description": "Space maintainer- removable- bilateral, mandibular", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1575", - "Description": "Distal shoe space maintainer - fixed- unilateral- Per Quadrant I.C", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1701", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration – first dose SARSCOV2 COVID-19 VAC mRNA 30mcg/0.3mL IM DOSE 1", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1702", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration – second dose SARSCOV2 COVID-19 VAC mRNA 30mcg/0.3mL IM DOSE 2", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1707", - "Description": "Janssen Covid-19 vaccine administration SARSCOV2 COVID-19 VAC Ad26 5x1010 VP/.5mL IM SINGLE DOSE", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1708", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration – third dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1709", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration – booster dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1712", - "Description": "Janssen Covid-19 vaccine administration - booster dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1713", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration tris-sucrose pediatric – first dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1714", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration tris-sucrose pediatric – second dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1999", - "Description": "", - "Price": "50" - }, - { - "Procedure Code": "D2140", - "Description": "Amalgam-one surface, primary or permanent", - "PriceLTEQ21": "62", - "PriceGT21": "62" - }, - { - "Procedure Code": "D2150", - "Description": "Amalgam-two surfaces, primary or permanent", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D2955", - "Description": "post renoval", - "Price": "350" - }, - { - "Procedure Code": "D4910", - "Description": "perio maintains", - "Price": "250" - }, - { - "Procedure Code": "D5510", - "Description": "Repair broken complete denture base (QUAD)", - "Price": "400" - }, - { - "Procedure Code": "D6010", - "Description": "Surgical placement of implant body", - "Price": "1600" - }, - { - "Procedure Code": "D6056", - "Description": "pre fab abut", - "Price": "750" - }, - { - "Procedure Code": "D6057", - "Description": "custom abut", - "Price": "800" - }, - { - "Procedure Code": "D6058", - "Description": "porcelain, implant crown, ceramic crown", - "Price": "1400" - }, - { - "Procedure Code": "D6059", - "Description": "", - "Price": "1400" - }, - { - "Procedure Code": "D6100", - "Description": "", - "Price": "320" - }, - { - "Procedure Code": "D6110", - "Description": "implant", - "Price": "1600" - }, - { - "Procedure Code": "D6242", - "Description": "noble metal. For united", - "Price": "1400" - }, - { - "Procedure Code": "D6245", - "Description": "porcelain, not for united", - "Price": "1400" - }, - { - "Procedure Code": "D7910", - "Description": "suture, small wound up to 5 mm", - "Price": "400" - }, - { - "Procedure Code": "D7950", - "Description": "max", - "Price": "800" - }, - { - "Procedure Code": "D2160", - "Description": "Amalgam-three surfaces, primary or permanent", - "PriceLTEQ21": "92", - "PriceGT21": "92" - }, - { - "Procedure Code": "D2161", - "Description": "Amalgam-four or more surfaces, primary or permanent", - "PriceLTEQ21": "116", - "PriceGT21": "116" - }, - { - "Procedure Code": "D2330", - "Description": "Resin-based composite – one surface, anterior", - "PriceLTEQ21": "72", - "PriceGT21": "72" - }, - { - "Procedure Code": "D2331", - "Description": "Resin-based composite – two surfaces, anterior", - "PriceLTEQ21": "92", - "PriceGT21": "92" - }, - { - "Procedure Code": "D2332", - "Description": "Resin-based composite – three surfaces, anterior", - "PriceLTEQ21": "116", - "PriceGT21": "116" - }, - { - "Procedure Code": "D2335", - "Description": "Resin-based composite – four or more surfaces or involving incisal angle (anterior)", - "PriceLTEQ21": "146", - "PriceGT21": "146" - }, - { - "Procedure Code": "D2390", - "Description": "Resin-based composite crown, anterior", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2391", - "Description": "Resin-based composite – one surface, posterior", - "PriceLTEQ21": "62", - "PriceGT21": "62" - }, - { - "Procedure Code": "D2392", - "Description": "Resin-based composite – two surfaces, posterior", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D2393", - "Description": "Resin-based composite – three surfaces, posterior", - "PriceLTEQ21": "92", - "PriceGT21": "92" - }, - { - "Procedure Code": "D2394", - "Description": "Resin-based composite – four or more surfaces, posterior", - "PriceLTEQ21": "116", - "PriceGT21": "116" - }, - { - "Procedure Code": "D2710", - "Description": "Crown – resin-based composite (indirect)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2740", - "Description": "Crown – porcelain/ceramic", - "PriceLTEQ21": "729", - "PriceGT21": "729" - }, - { - "Procedure Code": "D2750", - "Description": "Crown – porcelain fused to high noble metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2751", - "Description": "Crown – porcelain fused to predominantly base metal", - "PriceLTEQ21": "613", - "PriceGT21": "613" - }, - { - "Procedure Code": "D2752", - "Description": "Crown – porcelain fused to noble metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2790", - "Description": "Crown – full cast high noble metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2910", - "Description": "Re-cement or re-bond inlay, onlay or partial coverage restoration", - "PriceLTEQ21": "57", - "PriceGT21": "57" - }, - { - "Procedure Code": "D2920", - "Description": "Re-cement or re-bond crown", - "PriceLTEQ21": 150, - "PriceGT21": 150 - }, - { - "Procedure Code": "D2929", - "Description": "Prefabricated porcelain/ceramic crown – primary tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2930", - "Description": "Prefabricated stainless steel crown – primary tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2931", - "Description": "Prefabricated stainless steel crown – permanent tooth", - "PriceLTEQ21": "171", - "PriceGT21": "171" - }, - { - "Procedure Code": "D2932", - "Description": "Prefabricated resin crown", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2934", - "Description": "Prefabricated esthetic coated stainless steel crown – primary tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2950", - "Description": "Core buildup, including any pins when required", - "PriceLTEQ21": "164", - "PriceGT21": "164" - }, - { - "Procedure Code": "D2951", - "Description": "Pin retention – per tooth, in addition to restoration", - "PriceLTEQ21": "27", - "PriceGT21": "27" - }, - { - "Procedure Code": "D2954", - "Description": "Prefabricated post and core in addition to crown", - "PriceLTEQ21": "191", - "PriceGT21": "191" - }, - { - "Procedure Code": "D2980", - "Description": "Crown repair necessitated by restorative material failure", - "PriceLTEQ21": "115", - "PriceGT21": "115" - }, - { - "Procedure Code": "D2999", - "Description": "Unspecified restorative procedure, by report", - "PriceLTEQ21": "IC", - "PriceGT21": "IC" - }, - { - "Procedure Code": "D3120", - "Description": "Pulp cap – indirect (excluding final restoration)", - "PriceLTEQ21": "34", - "PriceGT21": "34" - }, - { - "Procedure Code": "D3220", - "Description": "Therapeutic pulpotomy (excluding final restoration) – removal of pulp coronal to the dentinocemental junction and application of medicament", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D3310", - "Description": "Endodontic therapy, anterior (excluding final restoration)", - "PriceLTEQ21": "544", - "PriceGT21": "544" - }, - { - "Procedure Code": "D3320", - "Description": "Endodontic therapy, premolar tooth (excluding final restoration)", - "PriceLTEQ21": "639", - "PriceGT21": "639" - }, - { - "Procedure Code": "D3330", - "Description": "Endodontic therapy, molar tooth (excluding final restoration)", - "PriceLTEQ21": "829", - "PriceGT21": "829" - }, - { - "Procedure Code": "D3346", - "Description": "Retreatment of previous root canal therapy – anterior", - "PriceLTEQ21": "456", - "PriceGT21": "456" - }, - { - "Procedure Code": "D3347", - "Description": "Retreatment of previous root canal therapy – premolar", - "PriceLTEQ21": "538", - "PriceGT21": "538" - }, - { - "Procedure Code": "D3348", - "Description": "Retreatment of previous root canal therapy – molar", - "PriceLTEQ21": "613", - "PriceGT21": "613" - }, - { - "Procedure Code": "D3410", - "Description": "Apicoectomy – anterior", - "PriceLTEQ21": "407", - "PriceGT21": "407" - }, - { - "Procedure Code": "D3421", - "Description": "Apicoectomy – premolar (first root)", - "PriceLTEQ21": "460", - "PriceGT21": "460" - }, - { - "Procedure Code": "D3425", - "Description": "Apicoectomy – molar (first root)", - "PriceLTEQ21": "598", - "PriceGT21": "598" - }, - { - "Procedure Code": "D3426", - "Description": "Apicoectomy (each additional root)", - "PriceLTEQ21": "230", - "PriceGT21": "230" - }, - { - "Procedure Code": "D4210", - "Description": "Gingivectomy or gingivoplasty - Four or more contiguous teeth or bounded teeth spaces per quadrant", - "PriceLTEQ21": "307", - "PriceGT21": "307" - }, - { - "Procedure Code": "D4211", - "Description": "Gingivectomy or gingivoplasty - one to three contiguous teeth or bounded teeth spaces per quadrant", - "PriceLTEQ21": "111", - "PriceGT21": "111" - }, - { - "Procedure Code": "D4341", - "Description": "Periodontal scaling and root planing - four or more teeth per quadrant", - "PriceLTEQ21": "134", - "PriceGT21": "134" - }, - { - "Procedure Code": "D4342", - "Description": "Periodontal scaling and root planing - one to three teeth, per quadrant", - "PriceLTEQ21": "90", - "PriceGT21": "90" - }, - { - "Procedure Code": "D4346", - "Description": "Scaling in presence of generalized moderate or severe gingival inflammation – full mouth, after oral evaluation", - "PriceLTEQ21": "60", - "PriceGT21": "60" - }, - { - "Procedure Code": "D5110", - "Description": "Complete denture – maxillary", - "PriceLTEQ21": "730", - "PriceGT21": "730" - }, - { - "Procedure Code": "D5120", - "Description": "Complete denture – mandibular", - "PriceLTEQ21": "730", - "PriceGT21": "730" - }, - { - "Procedure Code": "D5130", - "Description": "Immediate denture – maxillary", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5140", - "Description": "Immediate denture - mandibular", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5211", - "Description": "Maxillary partial denture - resin base (including retentive/clasping materials, rests and teeth)", - "PriceLTEQ21": "556", - "PriceGT21": "556" - }, - { - "Procedure Code": "D5212", - "Description": "Mandibular partial denture - resin base (including retentive/clasping materials, rests and teeth)", - "PriceLTEQ21": "595", - "PriceGT21": "595" - }, - { - "Procedure Code": "D5213", - "Description": "Maxillary partial denture- cast metal framework with resin denture bases (including retentive/clasping materials, rests and teeth)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5214", - "Description": "Mandibular partial denture - cast metal framework with resin denture bases (including retentive/clasping materials, rests and teeth)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5225", - "Description": "Maxillary partial denture- flexible base", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5226", - "Description": "Mandibular partial denture- flexible base", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5511", - "Description": "Repair broken complete denture base, mandibular", - "PriceLTEQ21": "85", - "PriceGT21": "85" - }, - { - "Procedure Code": "D5512", - "Description": "Repair broken complete denture base, maxillary", - "PriceLTEQ21": "85", - "PriceGT21": "85" - }, - { - "Procedure Code": "D5520", - "Description": "Replace missing or broken teeth - complete denture (each tooth)", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D5611", - "Description": "Repair broken resin partial denture base, mandibular", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D5612", - "Description": "Repair broken resin partial denture base, maxillary", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D5621", - "Description": "Repair broken cast partial denture base, mandibular", - "PriceLTEQ21": "104", - "PriceGT21": "104" - }, - { - "Procedure Code": "D5622", - "Description": "Repair broken cast partial denture base, maxillary", - "PriceLTEQ21": "104", - "PriceGT21": "104" - }, - { - "Procedure Code": "D5630", - "Description": "Repair or replace broken retentive/clasping materials – per tooth", - "PriceLTEQ21": "99", - "PriceGT21": "99" - }, - { - "Procedure Code": "D5640", - "Description": "Replace broken teeth - per tooth", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D5650", - "Description": "Add tooth to existing partial denture", - "PriceLTEQ21": "92", - "PriceGT21": "92" - }, - { - "Procedure Code": "D5660", - "Description": "Add clasp to existing partial denture per tooth", - "PriceLTEQ21": "98", - "PriceGT21": "98" - }, - { - "Procedure Code": "D5730", - "Description": "Reline complete maxillary denture (direct)", - "PriceLTEQ21": "158", - "PriceGT21": "158" - }, - { - "Procedure Code": "D5731", - "Description": "Reline lower complete mandibular denture (direct)", - "PriceLTEQ21": "173", - "PriceGT21": "173" - }, - { - "Procedure Code": "D5740", - "Description": "Reline maxillary partial denture(chairside)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5741", - "Description": "Reline mandibular partial denture(chairside)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5750", - "Description": "Reline complete maxillary denture (indirect)", - "PriceLTEQ21": "214", - "PriceGT21": "214" - }, - { - "Procedure Code": "D5751", - "Description": "Reline complete mandibular denture (indirect)", - "PriceLTEQ21": "215", - "PriceGT21": "215" - }, - { - "Procedure Code": "D5760", - "Description": "Reline maxillary partial denture (laboratory)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5761", - "Description": "Reline mandibular partial denture (laboratory)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6241", - "Description": "Pontic-porcelain fused metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6751", - "Description": "Retainer crown-porcelain fused to metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6930", - "Description": "Re-cement or re-bond fixed partial denture", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6980", - "Description": "Fixed partial denture repair", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6999", - "Description": "Fixed prosthodontic procedure", - "PriceLTEQ21": "IC", - "PriceGT21": "IC" - }, - { - "Procedure Code": "D7111", - "Description": "Extraction, coronal remnants - primary tooth", - "PriceLTEQ21": "75", - "PriceGT21": "75" - }, - { - "Procedure Code": "D7140", - "Description": "Extraction, erupted tooth or exposed root (elevation and/or forceps removal)", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D7210", - "Description": "Extraction, erupted tooth requiring removal of bone and/or sectioning of tooth, and including elevation of mucoperiosteal flap if indicated", - "PriceLTEQ21": "149", - "PriceGT21": "149" - }, - { - "Procedure Code": "D7220", - "Description": "Removal of impacted tooth - soft tissue", - "PriceLTEQ21": "191", - "PriceGT21": "191" - }, - { - "Procedure Code": "D7230", - "Description": "Removal of impacted tooth - partially bony", - "PriceLTEQ21": "249", - "PriceGT21": "249" - }, - { - "Procedure Code": "D7240", - "Description": "Removal of impacted tooth - completely bony", - "PriceLTEQ21": "295", - "PriceGT21": "295" - }, - { - "Procedure Code": "D7250", - "Description": "Surgical removal of residual tooth roots (cutting procedure)", - "PriceLTEQ21": "144", - "PriceGT21": "144" - }, - { - "Procedure Code": "D7251", - "Description": "Coronectomy- intentional partial tooth removal, impacted teeth only", - "PriceLTEQ21": "134", - "PriceGT21": "134" - }, - { - "Procedure Code": "D7270", - "Description": "Tooth reimplantation and/or stabilization of accidentally evulsed or displaced tooth", - "PriceLTEQ21": "106", - "PriceGT21": "106" - }, - { - "Procedure Code": "D7280", - "Description": "Surgical access of an unerupted tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D7283", - "Description": "Placement of device to facilitate eruption of impacted tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D7310", - "Description": "Alveoloplasty in conjunction with extractions-four or more teeth or tooth spaces, per quadrant", - "PriceLTEQ21": "142", - "PriceGT21": "142" - }, - { - "Procedure Code": "D7311", - "Description": "Alveoloplasty in conjunction with extractions - one to three teeth or tooth spaces, per quadrant", - "PriceLTEQ21": "128", - "PriceGT21": "128" - }, - { - "Procedure Code": "D7320", - "Description": "Alveoloplasty not in conjunction with extractions- four or more teeth or tooth spaces, per quadrant", - "PriceLTEQ21": "187", - "PriceGT21": "187" - }, - { - "Procedure Code": "D7321", - "Description": "Alveoloplasty not in conjunction with extractions - one to three teeth or tooth spaces, per quadrant", - "PriceLTEQ21": "149", - "PriceGT21": "149" - }, - { - "Procedure Code": "D7340", - "Description": "Vestibuloplasty - ridge extension (second epithelialization)", - "PriceLTEQ21": "747", - "PriceGT21": "747" - }, - { - "Procedure Code": "D7350", - "Description": "Vestibuloplasty - ridge extension (Oral surgeon only)", - "PriceLTEQ21": "943", - "PriceGT21": "943" - }, - { - "Procedure Code": "D7410", - "Description": "Radical excision - lesion diameter up to 1.25cm", - "PriceLTEQ21": "115", - "PriceGT21": "115" - }, - { - "Procedure Code": "D7411", - "Description": "Excision of benign lesion greater than 1.25 cm", - "PriceLTEQ21": "208", - "PriceGT21": "208" - }, - { - "Procedure Code": "D7450", - "Description": "Removal of benign odontogenic cyst or tumor - lesion diameter up to 1.25 cm", - "PriceLTEQ21": "248", - "PriceGT21": "248" - }, - { - "Procedure Code": "D7451", - "Description": "Removal of benign odontogenic cyst or tumor - lesion diameter greater than 1.25 cm", - "PriceLTEQ21": "288", - "PriceGT21": "288" - }, - { - "Procedure Code": "D7460", - "Description": "Removal of benign nonodontogenic cyst or tumor - lesion diameter up to 1.25 cm", - "PriceLTEQ21": "121", - "PriceGT21": "121" - }, - { - "Procedure Code": "D7461", - "Description": "Removal of benign nonodontogenic cyst or tumor - lesion diameter greater than 1.25 cm", - "PriceLTEQ21": "143", - "PriceGT21": "143" - }, - { - "Procedure Code": "D7471", - "Description": "Removal of lateral exostosis (maxilla or mandible) (Oral surgeon only)", - "PriceLTEQ21": "143", - "PriceGT21": "143" - }, - { - "Procedure Code": "D7472", - "Description": "Removal of torus palatinus (Oral surgeon only)", - "PriceLTEQ21": "143", - "PriceGT21": "143" - }, - { - "Procedure Code": "D7473", - "Description": "Removal of torus mandibularis (Oral surgeon only)", - "PriceLTEQ21": "143", - "PriceGT21": "143" - }, - { - "Procedure Code": "D7961", - "Description": "Buccal/labial frenectomy (frenulectomy)", - "PriceLTEQ21": "107", - "PriceGT21": "107" - }, - { - "Procedure Code": "D7962", - "Description": "Lingual frenectomy (frenulectomy)", - "PriceLTEQ21": "107", - "PriceGT21": "107" - }, - { - "Procedure Code": "D7963", - "Description": "Frenuloplasty", - "PriceLTEQ21": "416", - "PriceGT21": "416" - }, - { - "Procedure Code": "D7970", - "Description": "Excision of hyperplastic tissue - per arch", - "PriceLTEQ21": "246", - "PriceGT21": "246" - }, - { - "Procedure Code": "D7999", - "Description": "Unspecified oral surgery procedure, by report", - "PriceLTEQ21": "IC", - "PriceGT21": "IC" - }, - { - "Procedure Code": "D8010", - "Description": "Limited orthodontic treamtnent of the primary transition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8020", - "Description": "Limited orthodontic treatment of the transitional dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8030", - "Description": "Limited orthodontic treatment of the adolescent dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8040", - "Description": "Limited orthodontic treatment of the adult dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8070", - "Description": "Comprehensive orthodontic treatment of the transitional dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8080", - "Description": "Comprehensive orthodontic treatment of the adolescent dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8090", - "Description": "Comprehensive orthodontic treatment of the adult dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8660", - "Description": "Pre-orthodontic treatment examination to monitor growth and development (records fee) (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8670", - "Description": "Periodic orthodontic treatment visit (Orthodontist only)", - "PriceLTEQ21": "215", - "PriceGT21": "215" - }, - { - "Procedure Code": "D8680", - "Description": "Orthodontic retention (removal of appliances, construction and placement of retainer(s)) (Orthodontist only)", - "PriceLTEQ21": "85", - "PriceGT21": "85" - }, - { - "Procedure Code": "D8703", - "Description": "Replacement of lost or broken retainer- maxillary (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8704", - "Description": "Replacement of lost or broken retainer- mandibular (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8999", - "Description": "Unspecified orthodontic procedure, by report (Orthodontist only) I.C I.C** Y Y**", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9110", - "Description": "Palliative treatment of dental pain – per visit", - "PriceLTEQ21": "36", - "PriceGT21": "36" - }, - { - "Procedure Code": "D9222", - "Description": "Deep sedation/general anesthesia – first 15 minutes", - "PriceLTEQ21": "90", - "PriceGT21": "90" - }, - { - "Procedure Code": "D9223", - "Description": "Deep sedation/general anesthesia – each additional 15- minute increment", - "PriceLTEQ21": "90", - "PriceGT21": "90" - }, - { - "Procedure Code": "D9230", - "Description": "Analgesia, anxiolysis, inhalation of nitrous oxide", - "PriceLTEQ21": "15", - "PriceGT21": "15" - }, - { - "Procedure Code": "D9248", - "Description": "Nonintravenous conscious sedation", - "PriceLTEQ21": "45", - "PriceGT21": "45" - }, - { - "Procedure Code": "D9310", - "Description": "Consultation- Diagnostic service provided by dentist or physician other than requesting dentist or physician (Specialist only)", - "PriceLTEQ21": "63", - "PriceGT21": "63" - }, - { - "Procedure Code": "D9410", - "Description": "House/extended care facility call, once per facility per day", - "PriceLTEQ21": "39", - "PriceGT21": "39" - }, - { - "Procedure Code": "D9450", - "Description": "Rural add-on encounter payment", - "PriceLTEQ21": "31", - "PriceGT21": "31" - }, - { - "Procedure Code": "D9920", - "Description": "Behavior management, by report", - "PriceLTEQ21": "86", - "PriceGT21": "86" - }, - { - "Procedure Code": "D9930", - "Description": "Treatment of complications (postsurgical) - unusual circumstances, by report", - "PriceLTEQ21": "30", - "PriceGT21": "30" - }, - { - "Procedure Code": "D9941", - "Description": "Fabrication of athletic mouthguard", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9944", - "Description": "Occlusal guard - hard appliance, full arch", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9945", - "Description": "Occlusal guard - soft appliance, full arch", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9946", - "Description": "Occlusal guard - hard appliance, partial arch", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9999", - "Description": "Unspecified adjunctive procedure, by report", - "PriceLTEQ21": "IC", - "PriceGT21": "IC" - } -] \ No newline at end of file + { "Procedure Code": "D0120", "Description": "Periodic oral evaluation - established patient", "Price": 105 }, + { "Procedure Code": "D0140", "Description": "Limited oral evaluation - problem focused", "Price": 90 }, + { "Procedure Code": "D0145", "Description": "Oral evaluation for a patient under three years of age and counseling with primary caregiver", "Price": "NC" }, + { "Procedure Code": "D0150", "Description": "Comprehensive oral evaluation - new or established patient", "Price": 120 }, + { "Procedure Code": "D0180", "Description": "Comprehensive periodontal evaluation - new or established patient", "Price": 37 }, + { "Procedure Code": "D0190", "Description": "Screening of a patient (PHDH only)", "Price": 20 }, + { "Procedure Code": "D0191", "Description": "Assessment of a patient (PHDH only)", "Price": 20 }, + { "Procedure Code": "D0210", "Description": "Intraoral - complete series of radiographic images", "Price": 120 }, + { "Procedure Code": "D0220", "Description": "Intraoral - periapical, first radiographic image", "Price": 60 }, + { "Procedure Code": "D0230", "Description": "Intraoral - periapical, each additional radiographic image", "Price": 50 }, + { "Procedure Code": "D0240", "Description": "Intraoral - occlusal radiographic image", "Price": "NC" }, + { "Procedure Code": "D0270", "Description": "Bitewing - single radiographic image", "Price": 14 }, + { "Procedure Code": "D0272", "Description": "Bitewings - two radiographic images", "Price": 80 }, + { "Procedure Code": "D0273", "Description": "Bitewings - three radiographic images", "Price": 27 }, + { "Procedure Code": "D0274", "Description": "Bitewings - four radiographic images", "Price": 160 }, + { "Procedure Code": "D0330", "Description": "Panoramic radiographic image", "Price": 150 }, + { "Procedure Code": "D0340", "Description": "Cephalometric radiograph image (Oral surgeon only)", "Price": 74 }, + { "Procedure Code": "D0364", "Description": "CBCT - less than one jaw (interpret)", "Price": 350 }, + { "Procedure Code": "D0365", "Description": "CBCT - mandible (interpret)", "Price": 350 }, + { "Procedure Code": "D0366", "Description": "CBCT - maxilla (interpret)", "Price": 350 }, + { "Procedure Code": "D0367", "Description": "CBCT - both jaws (interpret)", "Price": 400 }, + { "Procedure Code": "D0368", "Description": "CBCT - include TMJ (interpret)", "Price": 375 }, + { "Procedure Code": "D0380", "Description": "CBCT - less than one jaw (capture only)", "Price": 300 }, + { "Procedure Code": "D0381", "Description": "CBCT - mandible (capture only)", "Price": 300 }, + { "Procedure Code": "D0382", "Description": "CBCT - maxilla (capture only)", "Price": 300 }, + { "Procedure Code": "D0383", "Description": "CBCT - both jaws / include TMJ (capture only)", "Price": 350 }, + { "Procedure Code": "D1110", "Description": "Prophylaxis - adult, 14 yo or older", "Price": 150 }, + { "Procedure Code": "D1120", "Description": "Prophylaxis - child, 0-13 yo", "Price": 120 }, + { "Procedure Code": "D1206", "Description": "Topical application of fluoride varnish", "Price": 26 }, + { "Procedure Code": "D1208", "Description": "Topical application of fluoride - excluding varnish", "Price": 90 }, + { "Procedure Code": "D1351", "Description": "Sealant - per tooth", "Price": 80 }, + { "Procedure Code": "D1354", "Description": "Application of caries arresting medicament - per tooth", "Price": 15 }, + { "Procedure Code": "D1510", "Description": "Space maintainer - fixed, unilateral - per quadrant", "Price": "NC" }, + { "Procedure Code": "D1516", "Description": "Space maintainer - fixed, bilateral, maxillary", "Price": "NC" }, + { "Procedure Code": "D1517", "Description": "Space maintainer - fixed, bilateral, mandibular", "Price": "NC" }, + { "Procedure Code": "D1520", "Description": "Space maintainer - removable, unilateral, per quadrant", "Price": "NC" }, + { "Procedure Code": "D1526", "Description": "Space maintainer - removable, bilateral, maxillary", "Price": "NC" }, + { "Procedure Code": "D1527", "Description": "Space maintainer - removable, bilateral, mandibular", "Price": "NC" }, + { "Procedure Code": "D1575", "Description": "Distal shoe space maintainer - fixed, unilateral, per quadrant", "Price": "NC" }, + { "Procedure Code": "D1701", "Description": "Pfizer-BioNTech Covid-19 vaccine - first dose", "Price": 45.87 }, + { "Procedure Code": "D1702", "Description": "Pfizer-BioNTech Covid-19 vaccine - second dose", "Price": 45.87 }, + { "Procedure Code": "D1707", "Description": "Janssen Covid-19 vaccine - single dose", "Price": 45.87 }, + { "Procedure Code": "D1708", "Description": "Pfizer-BioNTech Covid-19 vaccine - third dose", "Price": 45.87 }, + { "Procedure Code": "D1709", "Description": "Pfizer-BioNTech Covid-19 vaccine - booster dose", "Price": 45.87 }, + { "Procedure Code": "D1712", "Description": "Janssen Covid-19 vaccine - booster dose", "Price": 45.87 }, + { "Procedure Code": "D1713", "Description": "Pfizer-BioNTech Covid-19 vaccine pediatric - first dose", "Price": 45.87 }, + { "Procedure Code": "D1714", "Description": "Pfizer-BioNTech Covid-19 vaccine pediatric - second dose", "Price": 45.87 }, + { "Procedure Code": "D1999", "Description": "Unspecified preventive procedure, by report", "Price": 50 }, + { "Procedure Code": "D2140", "Description": "Amalgam - one surface, primary or permanent", "Price": 150 }, + { "Procedure Code": "D2150", "Description": "Amalgam - two surfaces, primary or permanent", "Price": 200 }, + { "Procedure Code": "D2160", "Description": "Amalgam - three surfaces, primary or permanent", "Price": 92 }, + { "Procedure Code": "D2161", "Description": "Amalgam - four or more surfaces, primary or permanent", "Price": 116 }, + { "Procedure Code": "D2330", "Description": "Resin-based composite - one surface, anterior", "Price": 180 }, + { "Procedure Code": "D2331", "Description": "Resin-based composite - two surfaces, anterior", "Price": 220 }, + { "Procedure Code": "D2332", "Description": "Resin-based composite - three surfaces, anterior", "Price": 280 }, + { "Procedure Code": "D2335", "Description": "Resin-based composite - four or more surfaces or involving incisal angle (anterior)", "Price": 350 }, + { "Procedure Code": "D2390", "Description": "Resin-based composite crown, anterior", "Price": "NC" }, + { "Procedure Code": "D2391", "Description": "Resin-based composite - one surface, posterior", "Price": 200 }, + { "Procedure Code": "D2392", "Description": "Resin-based composite - two surfaces, posterior", "Price": 250 }, + { "Procedure Code": "D2393", "Description": "Resin-based composite - three surfaces, posterior", "Price": 280 }, + { "Procedure Code": "D2394", "Description": "Resin-based composite - four or more surfaces, posterior", "Price": 320 }, + { "Procedure Code": "D2710", "Description": "Crown - resin-based composite (indirect)", "Price": "NC" }, + { "Procedure Code": "D2740", "Description": "Crown - porcelain/ceramic", "Price": 1300 }, + { "Procedure Code": "D2750", "Description": "Crown - porcelain fused to high noble metal", "Price": 1300 }, + { "Procedure Code": "D2751", "Description": "Crown - porcelain fused to predominantly base metal", "Price": 1200 }, + { "Procedure Code": "D2752", "Description": "Crown - porcelain fused to noble metal", "Price": 1200 }, + { "Procedure Code": "D2790", "Description": "Crown - full cast high noble metal", "Price": "NC" }, + { "Procedure Code": "D2910", "Description": "Re-cement or re-bond inlay, onlay or partial coverage restoration", "Price": 57 }, + { "Procedure Code": "D2920", "Description": "Re-cement or re-bond crown", "Price": 120 }, + { "Procedure Code": "D2929", "Description": "Prefabricated porcelain/ceramic crown - primary tooth", "Price": "NC" }, + { "Procedure Code": "D2930", "Description": "Prefabricated stainless steel crown - primary tooth", "Price": "NC" }, + { "Procedure Code": "D2931", "Description": "Prefabricated stainless steel crown - permanent tooth", "Price": 171 }, + { "Procedure Code": "D2932", "Description": "Prefabricated resin crown", "Price": "NC" }, + { "Procedure Code": "D2934", "Description": "Prefabricated esthetic coated stainless steel crown - primary tooth", "Price": "NC" }, + { "Procedure Code": "D2950", "Description": "Core buildup, including any pins when required", "Price": 350 }, + { "Procedure Code": "D2951", "Description": "Pin retention - per tooth, in addition to restoration", "Price": 27 }, + { "Procedure Code": "D2954", "Description": "Prefabricated post and core in addition to crown", "Price": 450 }, + { "Procedure Code": "D2955", "Description": "Post removal", "Price": 350 }, + { "Procedure Code": "D2980", "Description": "Crown repair necessitated by restorative material failure", "Price": 115 }, + { "Procedure Code": "D2999", "Description": "Unspecified restorative procedure, by report", "Price": "IC" }, + { "Procedure Code": "D3120", "Description": "Pulp cap - indirect (excluding final restoration)", "Price": 34 }, + { "Procedure Code": "D3220", "Description": "Therapeutic pulpotomy (excluding final restoration)", "Price": "NC" }, + { "Procedure Code": "D3230", "Description": "Pulpal therapy (resorbable filling) - anterior, primary tooth", "Price": 280 }, + { "Procedure Code": "D3240", "Description": "Pulpal therapy (resorbable filling) - posterior, primary tooth", "Price": 490 }, + { "Procedure Code": "D3310", "Description": "Endodontic therapy, anterior tooth (excluding final restoration)", "Price": 900 }, + { "Procedure Code": "D3320", "Description": "Endodontic therapy, premolar tooth (excluding final restoration)", "Price": 1050 }, + { "Procedure Code": "D3330", "Description": "Endodontic therapy, molar tooth (excluding final restoration)", "Price": 1250 }, + { "Procedure Code": "D3346", "Description": "Retreatment of previous root canal therapy - anterior", "Price": 950 }, + { "Procedure Code": "D3347", "Description": "Retreatment of previous root canal therapy - premolar", "Price": 1100 }, + { "Procedure Code": "D3348", "Description": "Retreatment of previous root canal therapy - molar", "Price": 1500 }, + { "Procedure Code": "D3410", "Description": "Apicoectomy - anterior", "Price": 407 }, + { "Procedure Code": "D3421", "Description": "Apicoectomy - premolar (first root)", "Price": 460 }, + { "Procedure Code": "D3425", "Description": "Apicoectomy - molar (first root)", "Price": 598 }, + { "Procedure Code": "D3426", "Description": "Apicoectomy (each additional root)", "Price": 230 }, + { "Procedure Code": "D4210", "Description": "Gingivectomy or gingivoplasty - four or more contiguous teeth per quadrant", "Price": 307 }, + { "Procedure Code": "D4211", "Description": "Gingivectomy or gingivoplasty - one to three contiguous teeth per quadrant", "Price": 111 }, + { "Procedure Code": "D4341", "Description": "Periodontal scaling and root planing - four or more teeth per quadrant", "Price": 250 }, + { "Procedure Code": "D4342", "Description": "Periodontal scaling and root planing - one to three teeth, per quadrant", "Price": 90 }, + { "Procedure Code": "D4346", "Description": "Scaling in presence of generalized moderate or severe gingival inflammation - full mouth", "Price": 60 }, + { "Procedure Code": "D4910", "Description": "Periodontal maintenance", "Price": 250 }, + { "Procedure Code": "D5110", "Description": "Complete denture - maxillary", "Price": 1700 }, + { "Procedure Code": "D5120", "Description": "Complete denture - mandibular", "Price": 1700 }, + { "Procedure Code": "D5130", "Description": "Immediate denture - maxillary", "Price": "NC" }, + { "Procedure Code": "D5140", "Description": "Immediate denture - mandibular", "Price": "NC" }, + { "Procedure Code": "D5211", "Description": "Maxillary partial denture - resin base", "Price": 1300 }, + { "Procedure Code": "D5212", "Description": "Mandibular partial denture - resin base", "Price": 1300 }, + { "Procedure Code": "D5213", "Description": "Maxillary partial denture - cast metal framework with resin denture bases", "Price": 1700 }, + { "Procedure Code": "D5214", "Description": "Mandibular partial denture - cast metal framework with resin denture bases", "Price": 1700 }, + { "Procedure Code": "D5225", "Description": "Maxillary partial denture - flexible base", "Price": "NC" }, + { "Procedure Code": "D5226", "Description": "Mandibular partial denture - flexible base", "Price": "NC" }, + { "Procedure Code": "D5510", "Description": "Repair broken complete denture base (QUAD)", "Price": 400 }, + { "Procedure Code": "D5511", "Description": "Repair broken complete denture base, mandibular", "Price": 85 }, + { "Procedure Code": "D5512", "Description": "Repair broken complete denture base, maxillary", "Price": 85 }, + { "Procedure Code": "D5520", "Description": "Replace missing or broken teeth - complete denture (each tooth)", "Price": 200 }, + { "Procedure Code": "D5611", "Description": "Repair broken resin partial denture base, mandibular", "Price": 77 }, + { "Procedure Code": "D5612", "Description": "Repair broken resin partial denture base, maxillary", "Price": 77 }, + { "Procedure Code": "D5621", "Description": "Repair broken cast partial denture base, mandibular", "Price": 104 }, + { "Procedure Code": "D5622", "Description": "Repair broken cast partial denture base, maxillary", "Price": 104 }, + { "Procedure Code": "D5630", "Description": "Repair or replace broken retentive/clasping materials - per tooth", "Price": 99 }, + { "Procedure Code": "D5640", "Description": "Replace broken teeth - per tooth", "Price": 77 }, + { "Procedure Code": "D5650", "Description": "Add tooth to existing partial denture", "Price": 92 }, + { "Procedure Code": "D5660", "Description": "Add clasp to existing partial denture per tooth", "Price": 98 }, + { "Procedure Code": "D5730", "Description": "Reline complete maxillary denture (chairside)", "Price": 500 }, + { "Procedure Code": "D5731", "Description": "Reline complete mandibular denture (chairside)", "Price": 500 }, + { "Procedure Code": "D5740", "Description": "Reline maxillary partial denture (chairside)", "Price": "NC" }, + { "Procedure Code": "D5741", "Description": "Reline mandibular partial denture (chairside)", "Price": "NC" }, + { "Procedure Code": "D5750", "Description": "Reline complete maxillary denture (laboratory)", "Price": 600 }, + { "Procedure Code": "D5751", "Description": "Reline complete mandibular denture (laboratory)", "Price": 600 }, + { "Procedure Code": "D5760", "Description": "Reline maxillary partial denture (laboratory)", "Price": "NC" }, + { "Procedure Code": "D5761", "Description": "Reline mandibular partial denture (laboratory)", "Price": "NC" }, + { "Procedure Code": "D6010", "Description": "Surgical placement of implant body", "Price": 1600 }, + { "Procedure Code": "D6056", "Description": "Prefabricated abutment", "Price": 750 }, + { "Procedure Code": "D6057", "Description": "Custom abutment", "Price": 800 }, + { "Procedure Code": "D6058", "Description": "Implant crown - porcelain/ceramic", "Price": 1400 }, + { "Procedure Code": "D6059", "Description": "Implant crown - PFM", "Price": 1400 }, + { "Procedure Code": "D6100", "Description": "Surgical removal of implant body", "Price": 320 }, + { "Procedure Code": "D6110", "Description": "Implant/abutment supported removable denture - maxillary", "Price": 1600 }, + { "Procedure Code": "D6111", "Description": "Implant/abutment supported removable denture - mandibular", "Price": 1600 }, + { "Procedure Code": "D6241", "Description": "Pontic - porcelain fused to metal", "Price": "NC" }, + { "Procedure Code": "D6242", "Description": "Pontic - noble metal", "Price": 1400 }, + { "Procedure Code": "D6245", "Description": "Pontic - porcelain/ceramic", "Price": 1400 }, + { "Procedure Code": "D6751", "Description": "Retainer crown - porcelain fused to metal", "Price": "NC" }, + { "Procedure Code": "D6930", "Description": "Re-cement or re-bond fixed partial denture", "Price": "NC" }, + { "Procedure Code": "D6980", "Description": "Fixed partial denture repair", "Price": "NC" }, + { "Procedure Code": "D6999", "Description": "Fixed prosthodontic procedure, by report", "Price": "IC" }, + { "Procedure Code": "D7111", "Description": "Extraction, coronal remnants - primary tooth", "Price": 120 }, + { "Procedure Code": "D7140", "Description": "Extraction, erupted tooth or exposed root (simple)", "Price": 150 }, + { "Procedure Code": "D7210", "Description": "Extraction, erupted tooth requiring removal of bone and/or sectioning (surgical)", "Price": 280 }, + { "Procedure Code": "D7220", "Description": "Removal of impacted tooth - soft tissue", "Price": 380 }, + { "Procedure Code": "D7230", "Description": "Removal of impacted tooth - partially bony", "Price": 450 }, + { "Procedure Code": "D7240", "Description": "Removal of impacted tooth - completely bony", "Price": 550 }, + { "Procedure Code": "D7250", "Description": "Surgical removal of residual tooth roots", "Price": 280 }, + { "Procedure Code": "D7251", "Description": "Coronectomy - intentional partial tooth removal, impacted teeth only", "Price": 134 }, + { "Procedure Code": "D7270", "Description": "Tooth reimplantation and/or stabilization of accidentally evulsed or displaced tooth", "Price": 106 }, + { "Procedure Code": "D7280", "Description": "Surgical access of an unerupted tooth", "Price": "NC" }, + { "Procedure Code": "D7283", "Description": "Placement of device to facilitate eruption of impacted tooth", "Price": "NC" }, + { "Procedure Code": "D7310", "Description": "Alveoloplasty in conjunction with extractions - four or more teeth per quadrant", "Price": 142 }, + { "Procedure Code": "D7311", "Description": "Alveoloplasty in conjunction with extractions - one to three teeth per quadrant", "Price": 128 }, + { "Procedure Code": "D7320", "Description": "Alveoloplasty not in conjunction with extractions - four or more teeth per quadrant", "Price": 187 }, + { "Procedure Code": "D7321", "Description": "Alveoloplasty not in conjunction with extractions - one to three teeth per quadrant", "Price": 149 }, + { "Procedure Code": "D7340", "Description": "Vestibuloplasty - ridge extension (second epithelialization)", "Price": 747 }, + { "Procedure Code": "D7350", "Description": "Vestibuloplasty - ridge extension (Oral surgeon only)", "Price": 943 }, + { "Procedure Code": "D7410", "Description": "Excision of benign lesion - diameter up to 1.25 cm", "Price": 115 }, + { "Procedure Code": "D7411", "Description": "Excision of benign lesion - diameter greater than 1.25 cm", "Price": 208 }, + { "Procedure Code": "D7450", "Description": "Removal of benign odontogenic cyst or tumor - up to 1.25 cm", "Price": 248 }, + { "Procedure Code": "D7451", "Description": "Removal of benign odontogenic cyst or tumor - greater than 1.25 cm", "Price": 288 }, + { "Procedure Code": "D7460", "Description": "Removal of benign nonodontogenic cyst or tumor - up to 1.25 cm", "Price": 121 }, + { "Procedure Code": "D7461", "Description": "Removal of benign nonodontogenic cyst or tumor - greater than 1.25 cm", "Price": 143 }, + { "Procedure Code": "D7471", "Description": "Removal of lateral exostosis (maxilla or mandible)", "Price": 143 }, + { "Procedure Code": "D7472", "Description": "Removal of torus palatinus", "Price": 143 }, + { "Procedure Code": "D7473", "Description": "Removal of torus mandibularis", "Price": 143 }, + { "Procedure Code": "D7910", "Description": "Suture of recent small wounds up to 5 cm", "Price": 400 }, + { "Procedure Code": "D7950", "Description": "Bone graft - maxilla/mandible", "Price": 800 }, + { "Procedure Code": "D7953", "Description": "Bone graft for socket preservation after extraction", "Price": 800 }, + { "Procedure Code": "D7961", "Description": "Buccal/labial frenectomy (frenulectomy)", "Price": 107 }, + { "Procedure Code": "D7962", "Description": "Lingual frenectomy (frenulectomy)", "Price": 107 }, + { "Procedure Code": "D7963", "Description": "Frenuloplasty", "Price": 416 }, + { "Procedure Code": "D7970", "Description": "Excision of hyperplastic tissue - per arch", "Price": 246 }, + { "Procedure Code": "D7999", "Description": "Unspecified oral surgery procedure, by report", "Price": "IC" }, + { "Procedure Code": "D8010", "Description": "Limited orthodontic treatment of the primary dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8020", "Description": "Limited orthodontic treatment of the transitional dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8030", "Description": "Limited orthodontic treatment of the adolescent dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8040", "Description": "Limited orthodontic treatment of the adult dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8070", "Description": "Comprehensive orthodontic treatment of the transitional dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8080", "Description": "Comprehensive orthodontic treatment of the adolescent dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8090", "Description": "Comprehensive orthodontic treatment of the adult dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8660", "Description": "Pre-orthodontic treatment examination (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8670", "Description": "Periodic orthodontic treatment visit (Orthodontist only)", "Price": 215 }, + { "Procedure Code": "D8680", "Description": "Orthodontic retention (Orthodontist only)", "Price": 85 }, + { "Procedure Code": "D8703", "Description": "Replacement of lost or broken retainer - maxillary (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8704", "Description": "Replacement of lost or broken retainer - mandibular (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8999", "Description": "Unspecified orthodontic procedure, by report (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D9110", "Description": "Palliative treatment of dental pain - per visit", "Price": 36 }, + { "Procedure Code": "D9222", "Description": "Deep sedation/general anesthesia - first 15 minutes", "Price": 90 }, + { "Procedure Code": "D9223", "Description": "Deep sedation/general anesthesia - each additional 15-minute increment", "Price": 90 }, + { "Procedure Code": "D9230", "Description": "Analgesia, anxiolysis, inhalation of nitrous oxide", "Price": 15 }, + { "Procedure Code": "D9248", "Description": "Nonintravenous conscious sedation", "Price": 45 }, + { "Procedure Code": "D9310", "Description": "Consultation - diagnostic service (Specialist only)", "Price": 63 }, + { "Procedure Code": "D9410", "Description": "House/extended care facility call, once per facility per day", "Price": 39 }, + { "Procedure Code": "D9450", "Description": "Rural add-on encounter payment", "Price": 31 }, + { "Procedure Code": "D9920", "Description": "Behavior management, by report", "Price": 86 }, + { "Procedure Code": "D9930", "Description": "Treatment of complications (postsurgical) - unusual circumstances, by report", "Price": 30 }, + { "Procedure Code": "D9941", "Description": "Fabrication of athletic mouthguard", "Price": "NC" }, + { "Procedure Code": "D9944", "Description": "Occlusal guard - hard appliance, full arch", "Price": "NC" }, + { "Procedure Code": "D9945", "Description": "Occlusal guard - soft appliance, full arch", "Price": "NC" }, + { "Procedure Code": "D9946", "Description": "Occlusal guard - hard appliance, partial arch", "Price": "NC" }, + { "Procedure Code": "D9999", "Description": "Unspecified adjunctive procedure, by report", "Price": "IC" } +] diff --git a/apps/Frontend/src/assets/data/procedureCodesUnitedDH.json b/apps/Frontend/src/assets/data/procedureCodesUnitedDH.json index 4300aed5..247c4b2b 100644 --- a/apps/Frontend/src/assets/data/procedureCodesUnitedDH.json +++ b/apps/Frontend/src/assets/data/procedureCodesUnitedDH.json @@ -1,1196 +1,209 @@ [ - { - "Procedure Code": "D0120", - "Description": "Periodic oral evaluation - established patient", - "PriceLTEQ21": "24", - "PriceGT21": "24" - }, - { - "Procedure Code": "D0140", - "Description": "Limited oral evaluation - problem focused", - "PriceLTEQ21": 90, - "PriceGT21": 90 - }, - { - "Procedure Code": "D0145", - "Description": "Oral evaluation for a patient under three years of age and counseling with primary caregiver", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D0150", - "Description": "Comprehensive oral evaluation - new or established patient", - "PriceLTEQ21": "41", - "PriceGT21": "41" - }, - { - "Procedure Code": "D0180", - "Description": "Comprehensive periodontal evaluation - new or established patient", - "PriceLTEQ21": "37", - "PriceGT21": "37" - }, - { - "Procedure Code": "D0190", - "Description": "Screening of a patient (PHDH only)", - "PriceLTEQ21": "20", - "PriceGT21": "20" - }, - { - "Procedure Code": "D0191", - "Description": "Assessment of a patient (PHDH only)", - "PriceLTEQ21": "20", - "PriceGT21": "20" - }, - { - "Procedure Code": "D0210", - "Description": "Intraoral - complete series of radiographic images", - "PriceLTEQ21": "76", - "PriceGT21": "76" - }, - { - "Procedure Code": "D0220", - "Description": "Intraoral - periapical, first radiographic image", - "PriceLTEQ21": 60, - "PriceGT21": 60 - }, - { - "Procedure Code": "D0230", - "Description": "Intraoral - periapical, each additional radiographic image", - "PriceLTEQ21": "13", - "PriceGT21": "13" - }, - { - "Procedure Code": "D0240", - "Description": "Intraoral - occlusal radiographic image", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D0270", - "Description": "Bitewing - single radiographic image", - "PriceLTEQ21": "14", - "PriceGT21": "14" - }, - { - "Procedure Code": "D0272", - "Description": "Bitewings - two radiographic images", - "PriceLTEQ21": "25", - "PriceGT21": "25" - }, - { - "Procedure Code": "D0273", - "Description": "Bitewings - three radiographic images", - "PriceLTEQ21": "27", - "PriceGT21": "27" - }, - { - "Procedure Code": "D0274", - "Description": "Bitewings - four radiographic images", - "PriceLTEQ21": "36", - "PriceGT21": "36" - }, - { - "Procedure Code": "D0330", - "Description": "Panoramic radiographic image", - "PriceLTEQ21": "69", - "PriceGT21": "69" - }, - { - "Procedure Code": "D0340", - "Description": "Cephalometric radiograph image (Oral surgeon only)", - "PriceLTEQ21": "74", - "PriceGT21": "74" - }, - { - "Procedure Code": "D0364", - "Description": "Less than one jaw", - "Price": "350" - }, - { - "Procedure Code": "D0365", - "Description": "Mand", - "Price": "350" - }, - { - "Procedure Code": "D0366", - "Description": "Max", - "Price": "350" - }, - { - "Procedure Code": "D0367", - "Description": "", - "Price": "400" - }, - { - "Procedure Code": "D0368", - "Description": "include TMJ", - "Price": "375" - }, - { - "Procedure Code": "D0380", - "Description": "Less than one jaw", - "Price": "300" - }, - { - "Procedure Code": "D0381", - "Description": "Mand", - "Price": "300" - }, - { - "Procedure Code": "D0382", - "Description": "Max", - "Price": "300" - }, - { - "Procedure Code": "D0383", - "Description": "", - "Price": "350" - }, - { - "Procedure Code": "D1110", - "Description": "Prophylaxis – adult, 14 yo or older", - "PriceLTEQ21": "60", - "PriceGT21": "60" - }, - { - "Procedure Code": "D1120", - "Description": "Prophylaxis – child, 0-13 yo", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1206", - "Description": "Topical application of fluoride varnish", - "PriceLTEQ21": "26", - "PriceGT21": "26" - }, - { - "Procedure Code": "D1208", - "Description": "Topical application of fluoride – excluding varnish", - "PriceLTEQ21": "29", - "PriceGT21": "29" - }, - { - "Procedure Code": "D1351", - "Description": "Sealant – per tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1354", - "Description": "Application of caries arresting medicament - per tooth", - "PriceLTEQ21": "15", - "PriceGT21": "15" - }, - { - "Procedure Code": "D1510", - "Description": "Space maintainer – fixed,unilateral – per quadrant", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1516", - "Description": "Space maintainer- fixed- bilateral, maxillary", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1517", - "Description": "Space maintainer- fixed- bilateral, mandibular", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1520", - "Description": "Space maintainer – removable- unilateral- per quadrant", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1526", - "Description": "Space maintainer- removable- bilateral, maxillary", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1527", - "Description": "Space maintainer- removable- bilateral, mandibular", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1575", - "Description": "Distal shoe space maintainer - fixed- unilateral- Per Quadrant I.C", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D1701", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration – first dose SARSCOV2 COVID-19 VAC mRNA 30mcg/0.3mL IM DOSE 1", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1702", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration – second dose SARSCOV2 COVID-19 VAC mRNA 30mcg/0.3mL IM DOSE 2", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1707", - "Description": "Janssen Covid-19 vaccine administration SARSCOV2 COVID-19 VAC Ad26 5x1010 VP/.5mL IM SINGLE DOSE", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1708", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration – third dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1709", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration – booster dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1712", - "Description": "Janssen Covid-19 vaccine administration - booster dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1713", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration tris-sucrose pediatric – first dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1714", - "Description": "Pfizer-BioNTech Covid-19 vaccine administration tris-sucrose pediatric – second dose", - "PriceLTEQ21": "45.87", - "PriceGT21": "45.87" - }, - { - "Procedure Code": "D1999", - "Description": "", - "Price": "50" - }, - { - "Procedure Code": "D2140", - "Description": "Amalgam-one surface, primary or permanent", - "PriceLTEQ21": "62", - "PriceGT21": "62" - }, - { - "Procedure Code": "D2150", - "Description": "Amalgam-two surfaces, primary or permanent", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D2955", - "Description": "post renoval", - "Price": "350" - }, - { - "Procedure Code": "D4910", - "Description": "perio maintains", - "Price": "250" - }, - { - "Procedure Code": "D5510", - "Description": "Repair broken complete denture base (QUAD)", - "Price": "400" - }, - { - "Procedure Code": "D6010", - "Description": "Surgical placement of implant body", - "Price": "1600" - }, - { - "Procedure Code": "D6056", - "Description": "pre fab abut", - "Price": "750" - }, - { - "Procedure Code": "D6057", - "Description": "custom abut", - "Price": "800" - }, - { - "Procedure Code": "D6058", - "Description": "porcelain, implant crown, ceramic crown", - "Price": "1400" - }, - { - "Procedure Code": "D6059", - "Description": "", - "Price": "1400" - }, - { - "Procedure Code": "D6100", - "Description": "", - "Price": "320" - }, - { - "Procedure Code": "D6110", - "Description": "implant", - "Price": "1600" - }, - { - "Procedure Code": "D6242", - "Description": "noble metal. For united", - "Price": "1400" - }, - { - "Procedure Code": "D6245", - "Description": "porcelain, not for united", - "Price": "1400" - }, - { - "Procedure Code": "D7910", - "Description": "suture, small wound up to 5 mm", - "Price": "400" - }, - { - "Procedure Code": "D7950", - "Description": "max", - "Price": "800" - }, - { - "Procedure Code": "D2160", - "Description": "Amalgam-three surfaces, primary or permanent", - "PriceLTEQ21": "92", - "PriceGT21": "92" - }, - { - "Procedure Code": "D2161", - "Description": "Amalgam-four or more surfaces, primary or permanent", - "PriceLTEQ21": "116", - "PriceGT21": "116" - }, - { - "Procedure Code": "D2330", - "Description": "Resin-based composite – one surface, anterior", - "PriceLTEQ21": "72", - "PriceGT21": "72" - }, - { - "Procedure Code": "D2331", - "Description": "Resin-based composite – two surfaces, anterior", - "PriceLTEQ21": "92", - "PriceGT21": "92" - }, - { - "Procedure Code": "D2332", - "Description": "Resin-based composite – three surfaces, anterior", - "PriceLTEQ21": "116", - "PriceGT21": "116" - }, - { - "Procedure Code": "D2335", - "Description": "Resin-based composite – four or more surfaces or involving incisal angle (anterior)", - "PriceLTEQ21": "146", - "PriceGT21": "146" - }, - { - "Procedure Code": "D2390", - "Description": "Resin-based composite crown, anterior", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2391", - "Description": "Resin-based composite – one surface, posterior", - "PriceLTEQ21": "62", - "PriceGT21": "62" - }, - { - "Procedure Code": "D2392", - "Description": "Resin-based composite – two surfaces, posterior", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D2393", - "Description": "Resin-based composite – three surfaces, posterior", - "PriceLTEQ21": "92", - "PriceGT21": "92" - }, - { - "Procedure Code": "D2394", - "Description": "Resin-based composite – four or more surfaces, posterior", - "PriceLTEQ21": "116", - "PriceGT21": "116" - }, - { - "Procedure Code": "D2710", - "Description": "Crown – resin-based composite (indirect)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2740", - "Description": "Crown – porcelain/ceramic", - "PriceLTEQ21": "729", - "PriceGT21": "729" - }, - { - "Procedure Code": "D2750", - "Description": "Crown – porcelain fused to high noble metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2751", - "Description": "Crown – porcelain fused to predominantly base metal", - "PriceLTEQ21": "613", - "PriceGT21": "613" - }, - { - "Procedure Code": "D2752", - "Description": "Crown – porcelain fused to noble metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2790", - "Description": "Crown – full cast high noble metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2910", - "Description": "Re-cement or re-bond inlay, onlay or partial coverage restoration", - "PriceLTEQ21": "57", - "PriceGT21": "57" - }, - { - "Procedure Code": "D2920", - "Description": "Re-cement or re-bond crown", - "PriceLTEQ21": 150, - "PriceGT21": 150 - }, - { - "Procedure Code": "D2929", - "Description": "Prefabricated porcelain/ceramic crown – primary tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2930", - "Description": "Prefabricated stainless steel crown – primary tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2931", - "Description": "Prefabricated stainless steel crown – permanent tooth", - "PriceLTEQ21": "171", - "PriceGT21": "171" - }, - { - "Procedure Code": "D2932", - "Description": "Prefabricated resin crown", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2934", - "Description": "Prefabricated esthetic coated stainless steel crown – primary tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D2950", - "Description": "Core buildup, including any pins when required", - "PriceLTEQ21": "164", - "PriceGT21": "164" - }, - { - "Procedure Code": "D2951", - "Description": "Pin retention – per tooth, in addition to restoration", - "PriceLTEQ21": "27", - "PriceGT21": "27" - }, - { - "Procedure Code": "D2954", - "Description": "Prefabricated post and core in addition to crown", - "PriceLTEQ21": "191", - "PriceGT21": "191" - }, - { - "Procedure Code": "D2980", - "Description": "Crown repair necessitated by restorative material failure", - "PriceLTEQ21": "115", - "PriceGT21": "115" - }, - { - "Procedure Code": "D2999", - "Description": "Unspecified restorative procedure, by report", - "PriceLTEQ21": "IC", - "PriceGT21": "IC" - }, - { - "Procedure Code": "D3120", - "Description": "Pulp cap – indirect (excluding final restoration)", - "PriceLTEQ21": "34", - "PriceGT21": "34" - }, - { - "Procedure Code": "D3220", - "Description": "Therapeutic pulpotomy (excluding final restoration) – removal of pulp coronal to the dentinocemental junction and application of medicament", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D3310", - "Description": "Endodontic therapy, anterior (excluding final restoration)", - "PriceLTEQ21": "544", - "PriceGT21": "544" - }, - { - "Procedure Code": "D3320", - "Description": "Endodontic therapy, premolar tooth (excluding final restoration)", - "PriceLTEQ21": "639", - "PriceGT21": "639" - }, - { - "Procedure Code": "D3330", - "Description": "Endodontic therapy, molar tooth (excluding final restoration)", - "PriceLTEQ21": "829", - "PriceGT21": "829" - }, - { - "Procedure Code": "D3346", - "Description": "Retreatment of previous root canal therapy – anterior", - "PriceLTEQ21": "456", - "PriceGT21": "456" - }, - { - "Procedure Code": "D3347", - "Description": "Retreatment of previous root canal therapy – premolar", - "PriceLTEQ21": "538", - "PriceGT21": "538" - }, - { - "Procedure Code": "D3348", - "Description": "Retreatment of previous root canal therapy – molar", - "PriceLTEQ21": "613", - "PriceGT21": "613" - }, - { - "Procedure Code": "D3410", - "Description": "Apicoectomy – anterior", - "PriceLTEQ21": "407", - "PriceGT21": "407" - }, - { - "Procedure Code": "D3421", - "Description": "Apicoectomy – premolar (first root)", - "PriceLTEQ21": "460", - "PriceGT21": "460" - }, - { - "Procedure Code": "D3425", - "Description": "Apicoectomy – molar (first root)", - "PriceLTEQ21": "598", - "PriceGT21": "598" - }, - { - "Procedure Code": "D3426", - "Description": "Apicoectomy (each additional root)", - "PriceLTEQ21": "230", - "PriceGT21": "230" - }, - { - "Procedure Code": "D4210", - "Description": "Gingivectomy or gingivoplasty - Four or more contiguous teeth or bounded teeth spaces per quadrant", - "PriceLTEQ21": "307", - "PriceGT21": "307" - }, - { - "Procedure Code": "D4211", - "Description": "Gingivectomy or gingivoplasty - one to three contiguous teeth or bounded teeth spaces per quadrant", - "PriceLTEQ21": "111", - "PriceGT21": "111" - }, - { - "Procedure Code": "D4341", - "Description": "Periodontal scaling and root planing - four or more teeth per quadrant", - "PriceLTEQ21": "134", - "PriceGT21": "134" - }, - { - "Procedure Code": "D4342", - "Description": "Periodontal scaling and root planing - one to three teeth, per quadrant", - "PriceLTEQ21": "90", - "PriceGT21": "90" - }, - { - "Procedure Code": "D4346", - "Description": "Scaling in presence of generalized moderate or severe gingival inflammation – full mouth, after oral evaluation", - "PriceLTEQ21": "60", - "PriceGT21": "60" - }, - { - "Procedure Code": "D5110", - "Description": "Complete denture – maxillary", - "PriceLTEQ21": "730", - "PriceGT21": "730" - }, - { - "Procedure Code": "D5120", - "Description": "Complete denture – mandibular", - "PriceLTEQ21": "730", - "PriceGT21": "730" - }, - { - "Procedure Code": "D5130", - "Description": "Immediate denture – maxillary", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5140", - "Description": "Immediate denture - mandibular", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5211", - "Description": "Maxillary partial denture - resin base (including retentive/clasping materials, rests and teeth)", - "PriceLTEQ21": "556", - "PriceGT21": "556" - }, - { - "Procedure Code": "D5212", - "Description": "Mandibular partial denture - resin base (including retentive/clasping materials, rests and teeth)", - "PriceLTEQ21": "595", - "PriceGT21": "595" - }, - { - "Procedure Code": "D5213", - "Description": "Maxillary partial denture- cast metal framework with resin denture bases (including retentive/clasping materials, rests and teeth)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5214", - "Description": "Mandibular partial denture - cast metal framework with resin denture bases (including retentive/clasping materials, rests and teeth)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5225", - "Description": "Maxillary partial denture- flexible base", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5226", - "Description": "Mandibular partial denture- flexible base", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5511", - "Description": "Repair broken complete denture base, mandibular", - "PriceLTEQ21": "85", - "PriceGT21": "85" - }, - { - "Procedure Code": "D5512", - "Description": "Repair broken complete denture base, maxillary", - "PriceLTEQ21": "85", - "PriceGT21": "85" - }, - { - "Procedure Code": "D5520", - "Description": "Replace missing or broken teeth - complete denture (each tooth)", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D5611", - "Description": "Repair broken resin partial denture base, mandibular", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D5612", - "Description": "Repair broken resin partial denture base, maxillary", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D5621", - "Description": "Repair broken cast partial denture base, mandibular", - "PriceLTEQ21": "104", - "PriceGT21": "104" - }, - { - "Procedure Code": "D5622", - "Description": "Repair broken cast partial denture base, maxillary", - "PriceLTEQ21": "104", - "PriceGT21": "104" - }, - { - "Procedure Code": "D5630", - "Description": "Repair or replace broken retentive/clasping materials – per tooth", - "PriceLTEQ21": "99", - "PriceGT21": "99" - }, - { - "Procedure Code": "D5640", - "Description": "Replace broken teeth - per tooth", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D5650", - "Description": "Add tooth to existing partial denture", - "PriceLTEQ21": "92", - "PriceGT21": "92" - }, - { - "Procedure Code": "D5660", - "Description": "Add clasp to existing partial denture per tooth", - "PriceLTEQ21": "98", - "PriceGT21": "98" - }, - { - "Procedure Code": "D5730", - "Description": "Reline complete maxillary denture (direct)", - "PriceLTEQ21": "158", - "PriceGT21": "158" - }, - { - "Procedure Code": "D5731", - "Description": "Reline lower complete mandibular denture (direct)", - "PriceLTEQ21": "173", - "PriceGT21": "173" - }, - { - "Procedure Code": "D5740", - "Description": "Reline maxillary partial denture(chairside)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5741", - "Description": "Reline mandibular partial denture(chairside)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5750", - "Description": "Reline complete maxillary denture (indirect)", - "PriceLTEQ21": "214", - "PriceGT21": "214" - }, - { - "Procedure Code": "D5751", - "Description": "Reline complete mandibular denture (indirect)", - "PriceLTEQ21": "215", - "PriceGT21": "215" - }, - { - "Procedure Code": "D5760", - "Description": "Reline maxillary partial denture (laboratory)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D5761", - "Description": "Reline mandibular partial denture (laboratory)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6241", - "Description": "Pontic-porcelain fused metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6751", - "Description": "Retainer crown-porcelain fused to metal", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6930", - "Description": "Re-cement or re-bond fixed partial denture", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6980", - "Description": "Fixed partial denture repair", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D6999", - "Description": "Fixed prosthodontic procedure", - "PriceLTEQ21": "IC", - "PriceGT21": "IC" - }, - { - "Procedure Code": "D7111", - "Description": "Extraction, coronal remnants - primary tooth", - "PriceLTEQ21": "75", - "PriceGT21": "75" - }, - { - "Procedure Code": "D7140", - "Description": "Extraction, erupted tooth or exposed root (elevation and/or forceps removal)", - "PriceLTEQ21": "77", - "PriceGT21": "77" - }, - { - "Procedure Code": "D7210", - "Description": "Extraction, erupted tooth requiring removal of bone and/or sectioning of tooth, and including elevation of mucoperiosteal flap if indicated", - "PriceLTEQ21": 200, - "PriceGT21": 200 - }, - { - "Procedure Code": "D7220", - "Description": "Removal of impacted tooth - soft tissue", - "PriceLTEQ21": "191", - "PriceGT21": "191" - }, - { - "Procedure Code": "D7230", - "Description": "Removal of impacted tooth - partially bony", - "PriceLTEQ21": "249", - "PriceGT21": "249" - }, - { - "Procedure Code": "D7240", - "Description": "Removal of impacted tooth - completely bony", - "PriceLTEQ21": "295", - "PriceGT21": "295" - }, - { - "Procedure Code": "D7250", - "Description": "Surgical removal of residual tooth roots (cutting procedure)", - "PriceLTEQ21": "144", - "PriceGT21": "144" - }, - { - "Procedure Code": "D7251", - "Description": "Coronectomy- intentional partial tooth removal, impacted teeth only", - "PriceLTEQ21": "134", - "PriceGT21": "134" - }, - { - "Procedure Code": "D7270", - "Description": "Tooth reimplantation and/or stabilization of accidentally evulsed or displaced tooth", - "PriceLTEQ21": "106", - "PriceGT21": "106" - }, - { - "Procedure Code": "D7280", - "Description": "Surgical access of an unerupted tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D7283", - "Description": "Placement of device to facilitate eruption of impacted tooth", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D7310", - "Description": "Alveoloplasty in conjunction with extractions-four or more teeth or tooth spaces, per quadrant", - "PriceLTEQ21": "142", - "PriceGT21": "142" - }, - { - "Procedure Code": "D7311", - "Description": "Alveoloplasty in conjunction with extractions - one to three teeth or tooth spaces, per quadrant", - "PriceLTEQ21": "128", - "PriceGT21": "128" - }, - { - "Procedure Code": "D7320", - "Description": "Alveoloplasty not in conjunction with extractions- four or more teeth or tooth spaces, per quadrant", - "PriceLTEQ21": "187", - "PriceGT21": "187" - }, - { - "Procedure Code": "D7321", - "Description": "Alveoloplasty not in conjunction with extractions - one to three teeth or tooth spaces, per quadrant", - "PriceLTEQ21": "149", - "PriceGT21": "149" - }, - { - "Procedure Code": "D7340", - "Description": "Vestibuloplasty - ridge extension (second epithelialization)", - "PriceLTEQ21": "747", - "PriceGT21": "747" - }, - { - "Procedure Code": "D7350", - "Description": "Vestibuloplasty - ridge extension (Oral surgeon only)", - "PriceLTEQ21": "943", - "PriceGT21": "943" - }, - { - "Procedure Code": "D7410", - "Description": "Radical excision - lesion diameter up to 1.25cm", - "PriceLTEQ21": "115", - "PriceGT21": "115" - }, - { - "Procedure Code": "D7411", - "Description": "Excision of benign lesion greater than 1.25 cm", - "PriceLTEQ21": "208", - "PriceGT21": "208" - }, - { - "Procedure Code": "D7450", - "Description": "Removal of benign odontogenic cyst or tumor - lesion diameter up to 1.25 cm", - "PriceLTEQ21": "248", - "PriceGT21": "248" - }, - { - "Procedure Code": "D7451", - "Description": "Removal of benign odontogenic cyst or tumor - lesion diameter greater than 1.25 cm", - "PriceLTEQ21": "288", - "PriceGT21": "288" - }, - { - "Procedure Code": "D7460", - "Description": "Removal of benign nonodontogenic cyst or tumor - lesion diameter up to 1.25 cm", - "PriceLTEQ21": "121", - "PriceGT21": "121" - }, - { - "Procedure Code": "D7461", - "Description": "Removal of benign nonodontogenic cyst or tumor - lesion diameter greater than 1.25 cm", - "PriceLTEQ21": "143", - "PriceGT21": "143" - }, - { - "Procedure Code": "D7471", - "Description": "Removal of lateral exostosis (maxilla or mandible) (Oral surgeon only)", - "PriceLTEQ21": "143", - "PriceGT21": "143" - }, - { - "Procedure Code": "D7472", - "Description": "Removal of torus palatinus (Oral surgeon only)", - "PriceLTEQ21": "143", - "PriceGT21": "143" - }, - { - "Procedure Code": "D7473", - "Description": "Removal of torus mandibularis (Oral surgeon only)", - "PriceLTEQ21": "143", - "PriceGT21": "143" - }, - { - "Procedure Code": "D7961", - "Description": "Buccal/labial frenectomy (frenulectomy)", - "PriceLTEQ21": "107", - "PriceGT21": "107" - }, - { - "Procedure Code": "D7962", - "Description": "Lingual frenectomy (frenulectomy)", - "PriceLTEQ21": "107", - "PriceGT21": "107" - }, - { - "Procedure Code": "D7963", - "Description": "Frenuloplasty", - "PriceLTEQ21": "416", - "PriceGT21": "416" - }, - { - "Procedure Code": "D7970", - "Description": "Excision of hyperplastic tissue - per arch", - "PriceLTEQ21": "246", - "PriceGT21": "246" - }, - { - "Procedure Code": "D7999", - "Description": "Unspecified oral surgery procedure, by report", - "PriceLTEQ21": "IC", - "PriceGT21": "IC" - }, - { - "Procedure Code": "D8010", - "Description": "Limited orthodontic treamtnent of the primary transition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8020", - "Description": "Limited orthodontic treatment of the transitional dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8030", - "Description": "Limited orthodontic treatment of the adolescent dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8040", - "Description": "Limited orthodontic treatment of the adult dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8070", - "Description": "Comprehensive orthodontic treatment of the transitional dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8080", - "Description": "Comprehensive orthodontic treatment of the adolescent dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8090", - "Description": "Comprehensive orthodontic treatment of the adult dentition (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8660", - "Description": "Pre-orthodontic treatment examination to monitor growth and development (records fee) (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8670", - "Description": "Periodic orthodontic treatment visit (Orthodontist only)", - "PriceLTEQ21": "215", - "PriceGT21": "215" - }, - { - "Procedure Code": "D8680", - "Description": "Orthodontic retention (removal of appliances, construction and placement of retainer(s)) (Orthodontist only)", - "PriceLTEQ21": "85", - "PriceGT21": "85" - }, - { - "Procedure Code": "D8703", - "Description": "Replacement of lost or broken retainer- maxillary (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8704", - "Description": "Replacement of lost or broken retainer- mandibular (Orthodontist only)", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D8999", - "Description": "Unspecified orthodontic procedure, by report (Orthodontist only) I.C I.C** Y Y**", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9110", - "Description": "Palliative treatment of dental pain – per visit", - "PriceLTEQ21": "36", - "PriceGT21": "36" - }, - { - "Procedure Code": "D9222", - "Description": "Deep sedation/general anesthesia – first 15 minutes", - "PriceLTEQ21": "90", - "PriceGT21": "90" - }, - { - "Procedure Code": "D9223", - "Description": "Deep sedation/general anesthesia – each additional 15- minute increment", - "PriceLTEQ21": "90", - "PriceGT21": "90" - }, - { - "Procedure Code": "D9230", - "Description": "Analgesia, anxiolysis, inhalation of nitrous oxide", - "PriceLTEQ21": "15", - "PriceGT21": "15" - }, - { - "Procedure Code": "D9248", - "Description": "Nonintravenous conscious sedation", - "PriceLTEQ21": "45", - "PriceGT21": "45" - }, - { - "Procedure Code": "D9310", - "Description": "Consultation- Diagnostic service provided by dentist or physician other than requesting dentist or physician (Specialist only)", - "PriceLTEQ21": "63", - "PriceGT21": "63" - }, - { - "Procedure Code": "D9410", - "Description": "House/extended care facility call, once per facility per day", - "PriceLTEQ21": "39", - "PriceGT21": "39" - }, - { - "Procedure Code": "D9450", - "Description": "Rural add-on encounter payment", - "PriceLTEQ21": "31", - "PriceGT21": "31" - }, - { - "Procedure Code": "D9920", - "Description": "Behavior management, by report", - "PriceLTEQ21": "86", - "PriceGT21": "86" - }, - { - "Procedure Code": "D9930", - "Description": "Treatment of complications (postsurgical) - unusual circumstances, by report", - "PriceLTEQ21": "30", - "PriceGT21": "30" - }, - { - "Procedure Code": "D9941", - "Description": "Fabrication of athletic mouthguard", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9944", - "Description": "Occlusal guard - hard appliance, full arch", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9945", - "Description": "Occlusal guard - soft appliance, full arch", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9946", - "Description": "Occlusal guard - hard appliance, partial arch", - "PriceLTEQ21": "NC", - "PriceGT21": "NC" - }, - { - "Procedure Code": "D9999", - "Description": "Unspecified adjunctive procedure, by report", - "PriceLTEQ21": "IC", - "PriceGT21": "IC" - } -] \ No newline at end of file + { "Procedure Code": "D0120", "Description": "Periodic oral evaluation - established patient", "Price": 105 }, + { "Procedure Code": "D0140", "Description": "Limited oral evaluation - problem focused", "Price": 90 }, + { "Procedure Code": "D0145", "Description": "Oral evaluation for a patient under three years of age and counseling with primary caregiver", "Price": "NC" }, + { "Procedure Code": "D0150", "Description": "Comprehensive oral evaluation - new or established patient", "Price": 120 }, + { "Procedure Code": "D0180", "Description": "Comprehensive periodontal evaluation - new or established patient", "Price": 37 }, + { "Procedure Code": "D0190", "Description": "Screening of a patient (PHDH only)", "Price": 20 }, + { "Procedure Code": "D0191", "Description": "Assessment of a patient (PHDH only)", "Price": 20 }, + { "Procedure Code": "D0210", "Description": "Intraoral - complete series of radiographic images", "Price": 120 }, + { "Procedure Code": "D0220", "Description": "Intraoral - periapical, first radiographic image", "Price": 60 }, + { "Procedure Code": "D0230", "Description": "Intraoral - periapical, each additional radiographic image", "Price": 50 }, + { "Procedure Code": "D0240", "Description": "Intraoral - occlusal radiographic image", "Price": "NC" }, + { "Procedure Code": "D0270", "Description": "Bitewing - single radiographic image", "Price": 14 }, + { "Procedure Code": "D0272", "Description": "Bitewings - two radiographic images", "Price": 80 }, + { "Procedure Code": "D0273", "Description": "Bitewings - three radiographic images", "Price": 27 }, + { "Procedure Code": "D0274", "Description": "Bitewings - four radiographic images", "Price": 160 }, + { "Procedure Code": "D0330", "Description": "Panoramic radiographic image", "Price": 150 }, + { "Procedure Code": "D0340", "Description": "Cephalometric radiograph image (Oral surgeon only)", "Price": 74 }, + { "Procedure Code": "D0364", "Description": "CBCT - less than one jaw (interpret)", "Price": 350 }, + { "Procedure Code": "D0365", "Description": "CBCT - mandible (interpret)", "Price": 350 }, + { "Procedure Code": "D0366", "Description": "CBCT - maxilla (interpret)", "Price": 350 }, + { "Procedure Code": "D0367", "Description": "CBCT - both jaws (interpret)", "Price": 400 }, + { "Procedure Code": "D0368", "Description": "CBCT - include TMJ (interpret)", "Price": 375 }, + { "Procedure Code": "D0380", "Description": "CBCT - less than one jaw (capture only)", "Price": 300 }, + { "Procedure Code": "D0381", "Description": "CBCT - mandible (capture only)", "Price": 300 }, + { "Procedure Code": "D0382", "Description": "CBCT - maxilla (capture only)", "Price": 300 }, + { "Procedure Code": "D0383", "Description": "CBCT - both jaws / include TMJ (capture only)", "Price": 350 }, + { "Procedure Code": "D1110", "Description": "Prophylaxis - adult, 14 yo or older", "Price": 150 }, + { "Procedure Code": "D1120", "Description": "Prophylaxis - child, 0-13 yo", "Price": 120 }, + { "Procedure Code": "D1206", "Description": "Topical application of fluoride varnish", "Price": 26 }, + { "Procedure Code": "D1208", "Description": "Topical application of fluoride - excluding varnish", "Price": 90 }, + { "Procedure Code": "D1351", "Description": "Sealant - per tooth", "Price": 80 }, + { "Procedure Code": "D1354", "Description": "Application of caries arresting medicament - per tooth", "Price": 15 }, + { "Procedure Code": "D1510", "Description": "Space maintainer - fixed, unilateral - per quadrant", "Price": "NC" }, + { "Procedure Code": "D1516", "Description": "Space maintainer - fixed, bilateral, maxillary", "Price": "NC" }, + { "Procedure Code": "D1517", "Description": "Space maintainer - fixed, bilateral, mandibular", "Price": "NC" }, + { "Procedure Code": "D1520", "Description": "Space maintainer - removable, unilateral, per quadrant", "Price": "NC" }, + { "Procedure Code": "D1526", "Description": "Space maintainer - removable, bilateral, maxillary", "Price": "NC" }, + { "Procedure Code": "D1527", "Description": "Space maintainer - removable, bilateral, mandibular", "Price": "NC" }, + { "Procedure Code": "D1575", "Description": "Distal shoe space maintainer - fixed, unilateral, per quadrant", "Price": "NC" }, + { "Procedure Code": "D1701", "Description": "Pfizer-BioNTech Covid-19 vaccine - first dose", "Price": 45.87 }, + { "Procedure Code": "D1702", "Description": "Pfizer-BioNTech Covid-19 vaccine - second dose", "Price": 45.87 }, + { "Procedure Code": "D1707", "Description": "Janssen Covid-19 vaccine - single dose", "Price": 45.87 }, + { "Procedure Code": "D1708", "Description": "Pfizer-BioNTech Covid-19 vaccine - third dose", "Price": 45.87 }, + { "Procedure Code": "D1709", "Description": "Pfizer-BioNTech Covid-19 vaccine - booster dose", "Price": 45.87 }, + { "Procedure Code": "D1712", "Description": "Janssen Covid-19 vaccine - booster dose", "Price": 45.87 }, + { "Procedure Code": "D1713", "Description": "Pfizer-BioNTech Covid-19 vaccine pediatric - first dose", "Price": 45.87 }, + { "Procedure Code": "D1714", "Description": "Pfizer-BioNTech Covid-19 vaccine pediatric - second dose", "Price": 45.87 }, + { "Procedure Code": "D1999", "Description": "Unspecified preventive procedure, by report", "Price": 50 }, + { "Procedure Code": "D2140", "Description": "Amalgam - one surface, primary or permanent", "Price": 150 }, + { "Procedure Code": "D2150", "Description": "Amalgam - two surfaces, primary or permanent", "Price": 200 }, + { "Procedure Code": "D2160", "Description": "Amalgam - three surfaces, primary or permanent", "Price": 92 }, + { "Procedure Code": "D2161", "Description": "Amalgam - four or more surfaces, primary or permanent", "Price": 116 }, + { "Procedure Code": "D2330", "Description": "Resin-based composite - one surface, anterior", "Price": 180 }, + { "Procedure Code": "D2331", "Description": "Resin-based composite - two surfaces, anterior", "Price": 220 }, + { "Procedure Code": "D2332", "Description": "Resin-based composite - three surfaces, anterior", "Price": 280 }, + { "Procedure Code": "D2335", "Description": "Resin-based composite - four or more surfaces or involving incisal angle (anterior)", "Price": 350 }, + { "Procedure Code": "D2390", "Description": "Resin-based composite crown, anterior", "Price": "NC" }, + { "Procedure Code": "D2391", "Description": "Resin-based composite - one surface, posterior", "Price": 200 }, + { "Procedure Code": "D2392", "Description": "Resin-based composite - two surfaces, posterior", "Price": 250 }, + { "Procedure Code": "D2393", "Description": "Resin-based composite - three surfaces, posterior", "Price": 280 }, + { "Procedure Code": "D2394", "Description": "Resin-based composite - four or more surfaces, posterior", "Price": 320 }, + { "Procedure Code": "D2710", "Description": "Crown - resin-based composite (indirect)", "Price": "NC" }, + { "Procedure Code": "D2740", "Description": "Crown - porcelain/ceramic", "Price": 1300 }, + { "Procedure Code": "D2750", "Description": "Crown - porcelain fused to high noble metal", "Price": 1300 }, + { "Procedure Code": "D2751", "Description": "Crown - porcelain fused to predominantly base metal", "Price": 1200 }, + { "Procedure Code": "D2752", "Description": "Crown - porcelain fused to noble metal", "Price": 1200 }, + { "Procedure Code": "D2790", "Description": "Crown - full cast high noble metal", "Price": "NC" }, + { "Procedure Code": "D2910", "Description": "Re-cement or re-bond inlay, onlay or partial coverage restoration", "Price": 57 }, + { "Procedure Code": "D2920", "Description": "Re-cement or re-bond crown", "Price": 120 }, + { "Procedure Code": "D2929", "Description": "Prefabricated porcelain/ceramic crown - primary tooth", "Price": "NC" }, + { "Procedure Code": "D2930", "Description": "Prefabricated stainless steel crown - primary tooth", "Price": "NC" }, + { "Procedure Code": "D2931", "Description": "Prefabricated stainless steel crown - permanent tooth", "Price": 171 }, + { "Procedure Code": "D2932", "Description": "Prefabricated resin crown", "Price": "NC" }, + { "Procedure Code": "D2934", "Description": "Prefabricated esthetic coated stainless steel crown - primary tooth", "Price": "NC" }, + { "Procedure Code": "D2950", "Description": "Core buildup, including any pins when required", "Price": 350 }, + { "Procedure Code": "D2951", "Description": "Pin retention - per tooth, in addition to restoration", "Price": 27 }, + { "Procedure Code": "D2954", "Description": "Prefabricated post and core in addition to crown", "Price": 450 }, + { "Procedure Code": "D2955", "Description": "Post removal", "Price": 350 }, + { "Procedure Code": "D2980", "Description": "Crown repair necessitated by restorative material failure", "Price": 115 }, + { "Procedure Code": "D2999", "Description": "Unspecified restorative procedure, by report", "Price": "IC" }, + { "Procedure Code": "D3120", "Description": "Pulp cap - indirect (excluding final restoration)", "Price": 34 }, + { "Procedure Code": "D3220", "Description": "Therapeutic pulpotomy (excluding final restoration)", "Price": "NC" }, + { "Procedure Code": "D3230", "Description": "Pulpal therapy (resorbable filling) - anterior, primary tooth", "Price": 280 }, + { "Procedure Code": "D3240", "Description": "Pulpal therapy (resorbable filling) - posterior, primary tooth", "Price": 490 }, + { "Procedure Code": "D3310", "Description": "Endodontic therapy, anterior tooth (excluding final restoration)", "Price": 900 }, + { "Procedure Code": "D3320", "Description": "Endodontic therapy, premolar tooth (excluding final restoration)", "Price": 1050 }, + { "Procedure Code": "D3330", "Description": "Endodontic therapy, molar tooth (excluding final restoration)", "Price": 1250 }, + { "Procedure Code": "D3346", "Description": "Retreatment of previous root canal therapy - anterior", "Price": 950 }, + { "Procedure Code": "D3347", "Description": "Retreatment of previous root canal therapy - premolar", "Price": 1100 }, + { "Procedure Code": "D3348", "Description": "Retreatment of previous root canal therapy - molar", "Price": 1500 }, + { "Procedure Code": "D3410", "Description": "Apicoectomy - anterior", "Price": 407 }, + { "Procedure Code": "D3421", "Description": "Apicoectomy - premolar (first root)", "Price": 460 }, + { "Procedure Code": "D3425", "Description": "Apicoectomy - molar (first root)", "Price": 598 }, + { "Procedure Code": "D3426", "Description": "Apicoectomy (each additional root)", "Price": 230 }, + { "Procedure Code": "D4210", "Description": "Gingivectomy or gingivoplasty - four or more contiguous teeth per quadrant", "Price": 307 }, + { "Procedure Code": "D4211", "Description": "Gingivectomy or gingivoplasty - one to three contiguous teeth per quadrant", "Price": 111 }, + { "Procedure Code": "D4341", "Description": "Periodontal scaling and root planing - four or more teeth per quadrant", "Price": 250 }, + { "Procedure Code": "D4342", "Description": "Periodontal scaling and root planing - one to three teeth, per quadrant", "Price": 90 }, + { "Procedure Code": "D4346", "Description": "Scaling in presence of generalized moderate or severe gingival inflammation - full mouth", "Price": 60 }, + { "Procedure Code": "D4910", "Description": "Periodontal maintenance", "Price": 250 }, + { "Procedure Code": "D5110", "Description": "Complete denture - maxillary", "Price": 1700 }, + { "Procedure Code": "D5120", "Description": "Complete denture - mandibular", "Price": 1700 }, + { "Procedure Code": "D5130", "Description": "Immediate denture - maxillary", "Price": "NC" }, + { "Procedure Code": "D5140", "Description": "Immediate denture - mandibular", "Price": "NC" }, + { "Procedure Code": "D5211", "Description": "Maxillary partial denture - resin base", "Price": 1300 }, + { "Procedure Code": "D5212", "Description": "Mandibular partial denture - resin base", "Price": 1300 }, + { "Procedure Code": "D5213", "Description": "Maxillary partial denture - cast metal framework with resin denture bases", "Price": 1700 }, + { "Procedure Code": "D5214", "Description": "Mandibular partial denture - cast metal framework with resin denture bases", "Price": 1700 }, + { "Procedure Code": "D5225", "Description": "Maxillary partial denture - flexible base", "Price": "NC" }, + { "Procedure Code": "D5226", "Description": "Mandibular partial denture - flexible base", "Price": "NC" }, + { "Procedure Code": "D5510", "Description": "Repair broken complete denture base (QUAD)", "Price": 400 }, + { "Procedure Code": "D5511", "Description": "Repair broken complete denture base, mandibular", "Price": 85 }, + { "Procedure Code": "D5512", "Description": "Repair broken complete denture base, maxillary", "Price": 85 }, + { "Procedure Code": "D5520", "Description": "Replace missing or broken teeth - complete denture (each tooth)", "Price": 200 }, + { "Procedure Code": "D5611", "Description": "Repair broken resin partial denture base, mandibular", "Price": 77 }, + { "Procedure Code": "D5612", "Description": "Repair broken resin partial denture base, maxillary", "Price": 77 }, + { "Procedure Code": "D5621", "Description": "Repair broken cast partial denture base, mandibular", "Price": 104 }, + { "Procedure Code": "D5622", "Description": "Repair broken cast partial denture base, maxillary", "Price": 104 }, + { "Procedure Code": "D5630", "Description": "Repair or replace broken retentive/clasping materials - per tooth", "Price": 99 }, + { "Procedure Code": "D5640", "Description": "Replace broken teeth - per tooth", "Price": 77 }, + { "Procedure Code": "D5650", "Description": "Add tooth to existing partial denture", "Price": 92 }, + { "Procedure Code": "D5660", "Description": "Add clasp to existing partial denture per tooth", "Price": 98 }, + { "Procedure Code": "D5730", "Description": "Reline complete maxillary denture (chairside)", "Price": 500 }, + { "Procedure Code": "D5731", "Description": "Reline complete mandibular denture (chairside)", "Price": 500 }, + { "Procedure Code": "D5740", "Description": "Reline maxillary partial denture (chairside)", "Price": "NC" }, + { "Procedure Code": "D5741", "Description": "Reline mandibular partial denture (chairside)", "Price": "NC" }, + { "Procedure Code": "D5750", "Description": "Reline complete maxillary denture (laboratory)", "Price": 600 }, + { "Procedure Code": "D5751", "Description": "Reline complete mandibular denture (laboratory)", "Price": 600 }, + { "Procedure Code": "D5760", "Description": "Reline maxillary partial denture (laboratory)", "Price": "NC" }, + { "Procedure Code": "D5761", "Description": "Reline mandibular partial denture (laboratory)", "Price": "NC" }, + { "Procedure Code": "D6010", "Description": "Surgical placement of implant body", "Price": 1600 }, + { "Procedure Code": "D6056", "Description": "Prefabricated abutment", "Price": 750 }, + { "Procedure Code": "D6057", "Description": "Custom abutment", "Price": 800 }, + { "Procedure Code": "D6058", "Description": "Implant crown - porcelain/ceramic", "Price": 1400 }, + { "Procedure Code": "D6059", "Description": "Implant crown - PFM", "Price": 1400 }, + { "Procedure Code": "D6100", "Description": "Surgical removal of implant body", "Price": 320 }, + { "Procedure Code": "D6110", "Description": "Implant/abutment supported removable denture - maxillary", "Price": 1600 }, + { "Procedure Code": "D6111", "Description": "Implant/abutment supported removable denture - mandibular", "Price": 1600 }, + { "Procedure Code": "D6241", "Description": "Pontic - porcelain fused to metal", "Price": "NC" }, + { "Procedure Code": "D6242", "Description": "Pontic - noble metal", "Price": 1400 }, + { "Procedure Code": "D6245", "Description": "Pontic - porcelain/ceramic", "Price": 1400 }, + { "Procedure Code": "D6751", "Description": "Retainer crown - porcelain fused to metal", "Price": "NC" }, + { "Procedure Code": "D6930", "Description": "Re-cement or re-bond fixed partial denture", "Price": "NC" }, + { "Procedure Code": "D6980", "Description": "Fixed partial denture repair", "Price": "NC" }, + { "Procedure Code": "D6999", "Description": "Fixed prosthodontic procedure, by report", "Price": "IC" }, + { "Procedure Code": "D7111", "Description": "Extraction, coronal remnants - primary tooth", "Price": 120 }, + { "Procedure Code": "D7140", "Description": "Extraction, erupted tooth or exposed root (simple)", "Price": 150 }, + { "Procedure Code": "D7210", "Description": "Extraction, erupted tooth requiring removal of bone and/or sectioning (surgical)", "Price": 280 }, + { "Procedure Code": "D7220", "Description": "Removal of impacted tooth - soft tissue", "Price": 380 }, + { "Procedure Code": "D7230", "Description": "Removal of impacted tooth - partially bony", "Price": 450 }, + { "Procedure Code": "D7240", "Description": "Removal of impacted tooth - completely bony", "Price": 550 }, + { "Procedure Code": "D7250", "Description": "Surgical removal of residual tooth roots", "Price": 280 }, + { "Procedure Code": "D7251", "Description": "Coronectomy - intentional partial tooth removal, impacted teeth only", "Price": 134 }, + { "Procedure Code": "D7270", "Description": "Tooth reimplantation and/or stabilization of accidentally evulsed or displaced tooth", "Price": 106 }, + { "Procedure Code": "D7280", "Description": "Surgical access of an unerupted tooth", "Price": "NC" }, + { "Procedure Code": "D7283", "Description": "Placement of device to facilitate eruption of impacted tooth", "Price": "NC" }, + { "Procedure Code": "D7310", "Description": "Alveoloplasty in conjunction with extractions - four or more teeth per quadrant", "Price": 142 }, + { "Procedure Code": "D7311", "Description": "Alveoloplasty in conjunction with extractions - one to three teeth per quadrant", "Price": 128 }, + { "Procedure Code": "D7320", "Description": "Alveoloplasty not in conjunction with extractions - four or more teeth per quadrant", "Price": 187 }, + { "Procedure Code": "D7321", "Description": "Alveoloplasty not in conjunction with extractions - one to three teeth per quadrant", "Price": 149 }, + { "Procedure Code": "D7340", "Description": "Vestibuloplasty - ridge extension (second epithelialization)", "Price": 747 }, + { "Procedure Code": "D7350", "Description": "Vestibuloplasty - ridge extension (Oral surgeon only)", "Price": 943 }, + { "Procedure Code": "D7410", "Description": "Excision of benign lesion - diameter up to 1.25 cm", "Price": 115 }, + { "Procedure Code": "D7411", "Description": "Excision of benign lesion - diameter greater than 1.25 cm", "Price": 208 }, + { "Procedure Code": "D7450", "Description": "Removal of benign odontogenic cyst or tumor - up to 1.25 cm", "Price": 248 }, + { "Procedure Code": "D7451", "Description": "Removal of benign odontogenic cyst or tumor - greater than 1.25 cm", "Price": 288 }, + { "Procedure Code": "D7460", "Description": "Removal of benign nonodontogenic cyst or tumor - up to 1.25 cm", "Price": 121 }, + { "Procedure Code": "D7461", "Description": "Removal of benign nonodontogenic cyst or tumor - greater than 1.25 cm", "Price": 143 }, + { "Procedure Code": "D7471", "Description": "Removal of lateral exostosis (maxilla or mandible)", "Price": 143 }, + { "Procedure Code": "D7472", "Description": "Removal of torus palatinus", "Price": 143 }, + { "Procedure Code": "D7473", "Description": "Removal of torus mandibularis", "Price": 143 }, + { "Procedure Code": "D7910", "Description": "Suture of recent small wounds up to 5 cm", "Price": 400 }, + { "Procedure Code": "D7950", "Description": "Bone graft - maxilla/mandible", "Price": 800 }, + { "Procedure Code": "D7953", "Description": "Bone graft for socket preservation after extraction", "Price": 800 }, + { "Procedure Code": "D7961", "Description": "Buccal/labial frenectomy (frenulectomy)", "Price": 107 }, + { "Procedure Code": "D7962", "Description": "Lingual frenectomy (frenulectomy)", "Price": 107 }, + { "Procedure Code": "D7963", "Description": "Frenuloplasty", "Price": 416 }, + { "Procedure Code": "D7970", "Description": "Excision of hyperplastic tissue - per arch", "Price": 246 }, + { "Procedure Code": "D7999", "Description": "Unspecified oral surgery procedure, by report", "Price": "IC" }, + { "Procedure Code": "D8010", "Description": "Limited orthodontic treatment of the primary dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8020", "Description": "Limited orthodontic treatment of the transitional dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8030", "Description": "Limited orthodontic treatment of the adolescent dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8040", "Description": "Limited orthodontic treatment of the adult dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8070", "Description": "Comprehensive orthodontic treatment of the transitional dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8080", "Description": "Comprehensive orthodontic treatment of the adolescent dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8090", "Description": "Comprehensive orthodontic treatment of the adult dentition (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8660", "Description": "Pre-orthodontic treatment examination (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8670", "Description": "Periodic orthodontic treatment visit (Orthodontist only)", "Price": 215 }, + { "Procedure Code": "D8680", "Description": "Orthodontic retention (Orthodontist only)", "Price": 85 }, + { "Procedure Code": "D8703", "Description": "Replacement of lost or broken retainer - maxillary (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8704", "Description": "Replacement of lost or broken retainer - mandibular (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D8999", "Description": "Unspecified orthodontic procedure, by report (Orthodontist only)", "Price": "NC" }, + { "Procedure Code": "D9110", "Description": "Palliative treatment of dental pain - per visit", "Price": 36 }, + { "Procedure Code": "D9222", "Description": "Deep sedation/general anesthesia - first 15 minutes", "Price": 90 }, + { "Procedure Code": "D9223", "Description": "Deep sedation/general anesthesia - each additional 15-minute increment", "Price": 90 }, + { "Procedure Code": "D9230", "Description": "Analgesia, anxiolysis, inhalation of nitrous oxide", "Price": 15 }, + { "Procedure Code": "D9248", "Description": "Nonintravenous conscious sedation", "Price": 45 }, + { "Procedure Code": "D9310", "Description": "Consultation - diagnostic service (Specialist only)", "Price": 63 }, + { "Procedure Code": "D9410", "Description": "House/extended care facility call, once per facility per day", "Price": 39 }, + { "Procedure Code": "D9450", "Description": "Rural add-on encounter payment", "Price": 31 }, + { "Procedure Code": "D9920", "Description": "Behavior management, by report", "Price": 86 }, + { "Procedure Code": "D9930", "Description": "Treatment of complications (postsurgical) - unusual circumstances, by report", "Price": 30 }, + { "Procedure Code": "D9941", "Description": "Fabrication of athletic mouthguard", "Price": "NC" }, + { "Procedure Code": "D9944", "Description": "Occlusal guard - hard appliance, full arch", "Price": "NC" }, + { "Procedure Code": "D9945", "Description": "Occlusal guard - soft appliance, full arch", "Price": "NC" }, + { "Procedure Code": "D9946", "Description": "Occlusal guard - hard appliance, partial arch", "Price": "NC" }, + { "Procedure Code": "D9999", "Description": "Unspecified adjunctive procedure, by report", "Price": "IC" } +] diff --git a/apps/Frontend/src/components/insurance-status/cca-button-modal.tsx b/apps/Frontend/src/components/insurance-status/cca-button-modal.tsx index f6ab7ce9..3dc1e91d 100644 --- a/apps/Frontend/src/components/insurance-status/cca-button-modal.tsx +++ b/apps/Frontend/src/components/insurance-status/cca-button-modal.tsx @@ -187,7 +187,8 @@ export function CCAEligibilityButton({ }; useEffect(() => { - if (!autoTrigger || autoTriggeredRef.current || isFormIncomplete) return; + if (!autoTrigger) { autoTriggeredRef.current = false; return; } + if (autoTriggeredRef.current || isFormIncomplete) return; autoTriggeredRef.current = true; onAutoTriggered?.(); handleStart(); diff --git a/apps/Frontend/src/components/insurance-status/ddma-buton-modal.tsx b/apps/Frontend/src/components/insurance-status/ddma-buton-modal.tsx index 1deb66a0..c6d4fc0f 100755 --- a/apps/Frontend/src/components/insurance-status/ddma-buton-modal.tsx +++ b/apps/Frontend/src/components/insurance-status/ddma-buton-modal.tsx @@ -393,7 +393,8 @@ export function DdmaEligibilityButton({ }; useEffect(() => { - if (!autoTrigger || autoTriggeredRef.current || isFormIncomplete) return; + if (!autoTrigger) { autoTriggeredRef.current = false; return; } + if (autoTriggeredRef.current || isFormIncomplete) return; autoTriggeredRef.current = true; onAutoTriggered?.(); handleDdmaStart(); diff --git a/apps/Frontend/src/components/insurance-status/deltains-button-modal.tsx b/apps/Frontend/src/components/insurance-status/deltains-button-modal.tsx index 490e46a3..ffa4c890 100644 --- a/apps/Frontend/src/components/insurance-status/deltains-button-modal.tsx +++ b/apps/Frontend/src/components/insurance-status/deltains-button-modal.tsx @@ -327,7 +327,8 @@ export function DeltaInsEligibilityButton({ }; useEffect(() => { - if (!autoTrigger || autoTriggeredRef.current || isFormIncomplete) return; + if (!autoTrigger) { autoTriggeredRef.current = false; return; } + if (autoTriggeredRef.current || isFormIncomplete) return; autoTriggeredRef.current = true; onAutoTriggered?.(); handleStart(); diff --git a/apps/Frontend/src/components/insurance-status/tufts-sco-button-modal.tsx b/apps/Frontend/src/components/insurance-status/tufts-sco-button-modal.tsx index 72a707c2..8239afeb 100644 --- a/apps/Frontend/src/components/insurance-status/tufts-sco-button-modal.tsx +++ b/apps/Frontend/src/components/insurance-status/tufts-sco-button-modal.tsx @@ -324,7 +324,8 @@ export function TuftsSCOEligibilityButton({ }; useEffect(() => { - if (!autoTrigger || autoTriggeredRef.current || isFormIncomplete) return; + if (!autoTrigger) { autoTriggeredRef.current = false; return; } + if (autoTriggeredRef.current || isFormIncomplete) return; autoTriggeredRef.current = true; onAutoTriggered?.(); handleStart(); diff --git a/apps/Frontend/src/components/insurance-status/united-sco-button-modal.tsx b/apps/Frontend/src/components/insurance-status/united-sco-button-modal.tsx index 73afa288..b47f0a32 100644 --- a/apps/Frontend/src/components/insurance-status/united-sco-button-modal.tsx +++ b/apps/Frontend/src/components/insurance-status/united-sco-button-modal.tsx @@ -324,7 +324,8 @@ export function UnitedSCOEligibilityButton({ }; useEffect(() => { - if (!autoTrigger || autoTriggeredRef.current || isFormIncomplete) return; + if (!autoTrigger) { autoTriggeredRef.current = false; return; } + if (autoTriggeredRef.current || isFormIncomplete) return; autoTriggeredRef.current = true; onAutoTriggered?.(); handleStart(); diff --git a/apps/Frontend/src/components/layout/chatbot.tsx b/apps/Frontend/src/components/layout/chatbot.tsx index 7a4ccca4..2bcf9913 100644 --- a/apps/Frontend/src/components/layout/chatbot.tsx +++ b/apps/Frontend/src/components/layout/chatbot.tsx @@ -26,7 +26,9 @@ type Step = | "eligibility-id-ready" | "check-and-claim-ready" | "need-insurance-clarification" - | "need-appointment-selection"; + | "need-appointment-selection" + | "need-cdt-clarification" + | "claim-ready"; interface Message { id: number; @@ -126,6 +128,18 @@ export function ChatbotButton() { matchedCodes: { code: string; description: string }[]; options: { label: string; appointmentId: number; serviceDate: string }[]; } | null>(null); + const [cdtClarificationData, setCdtClarificationData] = useState<{ + unknownPhrases: string[]; + codeInputs: Record; + originalMessage: string; + } | null>(null); + const [claimReadyData, setClaimReadyData] = useState<{ + patient: PatientResult | null; + matchedCodes: { code: string; description: string }[]; + siteKey: string; + serviceDate: string; + appointmentId: number | null; + } | null>(null); const [, setLocation] = useLocation(); const messagesEndRef = useRef(null); const pasteRef = useRef(null); @@ -175,6 +189,8 @@ export function ChatbotButton() { setCheckAndClaimData(null); setClarificationData(null); setApptSelectionData(null); + setCdtClarificationData(null); + setClaimReadyData(null); }; // Full reset including message history and stored session @@ -294,7 +310,9 @@ export function ChatbotButton() { .filter((m) => !m.isLoading) .slice(-15) .map((m) => ({ role: m.role === "user" ? "user" : "assistant", text: m.text })); - const res = await apiRequest("POST", "/api/ai/internal-chat", { message: text, history }); + const d = new Date(); + const clientDate = `${d.getFullYear()}-${String(d.getMonth()+1).padStart(2,"0")}-${String(d.getDate()).padStart(2,"0")}`; + const res = await apiRequest("POST", "/api/ai/internal-chat", { message: text, history, clientDate }); const data = await res.json(); replaceLastMsg(data.reply ?? "Sorry, I couldn't process that."); @@ -366,22 +384,25 @@ export function ChatbotButton() { return; } + if (data.action === "need_cdt_clarification" && data.actionData) { + const phrases: string[] = data.actionData.unknownPhrases ?? []; + const inputs: Record = {}; + for (const p of phrases) inputs[p] = ""; + setCdtClarificationData({ unknownPhrases: phrases, codeInputs: inputs, originalMessage: text }); + setStep("need-cdt-clarification"); + return; + } + if (data.action === "claim_only_ready" && data.actionData) { const { patient, matchedCodes, siteKey, serviceDate, appointmentId } = data.actionData; - if (patient?.id && matchedCodes?.length > 0) { - sessionStorage.setItem( - "chatbot_claim_prefill", - JSON.stringify({ codes: matchedCodes, siteKey, serviceDate, autoSubmit: true }) - ); - } - const url = appointmentId - ? `/claims?appointmentId=${appointmentId}` - : `/claims?newPatient=${patient?.id}`; - setTimeout(() => { - setLocation(url); - setOpen(false); - resetStep(); - }, 600); + setClaimReadyData({ + patient: patient ?? null, + matchedCodes: matchedCodes ?? [], + siteKey, + serviceDate, + appointmentId: appointmentId ?? null, + }); + setStep("claim-ready"); return; } @@ -672,6 +693,7 @@ export function ChatbotButton() { setStep("ai-loading"); apiRequest("POST", "/api/ai/internal-chat", { message: `check ${opt} for ${clarificationData.memberId}, ${clarificationData.dob}${clarificationData.procedureNames.length > 0 ? " and claim " + clarificationData.procedureNames.join(", ") : ""}`, + clientDate: (() => { const d = new Date(); return `${d.getFullYear()}-${String(d.getMonth()+1).padStart(2,"0")}-${String(d.getDate()).padStart(2,"0")}`; })(), }) .then((r) => r.json()) .then((data) => { @@ -753,6 +775,124 @@ export function ChatbotButton() { )} + {/* Claim ready — confirm before submitting */} + {step === "claim-ready" && claimReadyData && (() => { + const [sy, sm, sd] = (claimReadyData.serviceDate ?? "").split("-"); + const dateLabel = sy ? `${sm}/${sd}/${sy}` : claimReadyData.serviceDate; + return ( +
+

Confirm Claim

+ {claimReadyData.patient && ( +

+ {claimReadyData.patient.firstName} {claimReadyData.patient.lastName} +

+ )} +

Service date: {dateLabel}

+ {claimReadyData.matchedCodes.length > 0 && ( +
+ {claimReadyData.matchedCodes.map((c) => ( +

+ {c.code} — {c.description} +

+ ))} +
+ )} +
+ + +
+
+ ); + })()} + + {/* CDT clarification — unknown procedure terms */} + {step === "need-cdt-clarification" && cdtClarificationData && ( +
+

Unknown procedure term{cdtClarificationData.unknownPhrases.length > 1 ? "s" : ""}

+
+ {cdtClarificationData.unknownPhrases.map((phrase) => ( +
+ "{phrase}"→ + setCdtClarificationData((prev) => prev ? { + ...prev, + codeInputs: { ...prev.codeInputs, [phrase]: e.target.value.toUpperCase() }, + } : prev)} + className="flex-1 rounded border border-amber-300 bg-white px-2 py-1 text-xs focus:outline-none focus:ring-1 focus:ring-amber-400" + /> +
+ ))} +
+
+ + +
+
+ )} +
diff --git a/apps/Frontend/src/utils/procedureCombosMapping.ts b/apps/Frontend/src/utils/procedureCombosMapping.ts index 18f78f29..c1a65d78 100755 --- a/apps/Frontend/src/utils/procedureCombosMapping.ts +++ b/apps/Frontend/src/utils/procedureCombosMapping.ts @@ -92,10 +92,11 @@ const TUFTSSCO_CODE_MAP: Map = (() => { /** Return the correct fee-schedule map for the given insurance type. */ function getCodeMap(insuranceSiteKey?: string): Map { - if (insuranceSiteKey === "CCA") return CCA_CODE_MAP; - if (insuranceSiteKey === "DDMA") return DDMA_CODE_MAP; - if (insuranceSiteKey === "UNITED_SCO" || insuranceSiteKey === "UnitedSCO" || insuranceSiteKey === "UNITEDDH") return UNITEDDH_CODE_MAP; - if (insuranceSiteKey === "TuftsSCO") return TUFTSSCO_CODE_MAP; + const k = (insuranceSiteKey ?? "").replace(/_/g, "").toLowerCase(); + if (k === "cca") return CCA_CODE_MAP; + if (k === "ddma") return DDMA_CODE_MAP; + if (k === "unitedsco" || k === "uniteddh" || k === "dentalhub") return UNITEDDH_CODE_MAP; + if (k === "tuftssco" || k === "tufts") return TUFTSSCO_CODE_MAP; return CODE_MAP; // default: MassHealth } @@ -175,43 +176,28 @@ export function pickPriceForRowByAge( ): Decimal { // Special-case rules (add more codes here if needed) if (normalizedCode) { - // D1110: only valid for age >=14 (14..21 => PriceLTEQ21, >21 => PriceGT21) + // D1110: only valid for age >=14 if (normalizedCode === "D1110") { - if (age < 14) { - // D1110 not applicable to children <14 (those belong to D1120) - return new Decimal(0); - } - if (age >= 14 && age <= 21) { - // use PriceLTEQ21 only if present - if (!isBlankPrice(row.PriceLTEQ21)) - return toDecimalOrZero(row.PriceLTEQ21); - return new Decimal(0); - } - // age > 21 - if (!isBlankPrice(row.PriceGT21)) return toDecimalOrZero(row.PriceGT21); + if (age < 14) return new Decimal(0); // D1110 not for children <14 + // age >= 14: use age-split if present, then flat Price + if (age <= 21 && !isBlankPrice(row.PriceLTEQ21)) return toDecimalOrZero(row.PriceLTEQ21); + if (age > 21 && !isBlankPrice(row.PriceGT21)) return toDecimalOrZero(row.PriceGT21); + if (!isBlankPrice(row.Price)) return toDecimalOrZero(row.Price); return new Decimal(0); } - // D1120: child 0-13 => PriceLTEQ21, otherwise no price (NC) + // D1120: valid for child 0-13 only if (normalizedCode === "D1120") { - if (age < 14) { - if (!isBlankPrice(row.PriceLTEQ21)) - return toDecimalOrZero(row.PriceLTEQ21); - return new Decimal(0); - } - // age >= 14 => NC / no price + if (age >= 14) return new Decimal(0); // NC for adults + if (!isBlankPrice(row.PriceLTEQ21)) return toDecimalOrZero(row.PriceLTEQ21); + if (!isBlankPrice(row.Price)) return toDecimalOrZero(row.Price); return new Decimal(0); } } - // Generic/default behavior (unchanged) - if (age <= 21) { - if (!isBlankPrice(row.PriceLTEQ21)) return toDecimalOrZero(row.PriceLTEQ21); - } else { - if (!isBlankPrice(row.PriceGT21)) return toDecimalOrZero(row.PriceGT21); - } - - // Fallback to Price if tiered not available/blank + // Generic/default: age-split first, flat Price as fallback + if (age <= 21 && !isBlankPrice(row.PriceLTEQ21)) return toDecimalOrZero(row.PriceLTEQ21); + if (age > 21 && !isBlankPrice(row.PriceGT21)) return toDecimalOrZero(row.PriceGT21); if (!isBlankPrice(row.Price)) return toDecimalOrZero(row.Price); return new Decimal(0); }