Fee quotes API
Quote expected payment for a visit
Expected California OMFS payment per line for one treatment visit, priced exactly like a saved treatment bill.
https://app.mindbill.org/partner/v2/fee-quotes/encounterShow Charge, Expected (OMFS), and Difference while a biller enters a treatment bill. Provider type, place of service, practice charges, and payer come from the organization's saved records, so you send IDs instead of clinical context. ConnectedTreatmentBillForm calls this for you.
Use this URL with a server API key or a browser session and its exact allowed Origin. Both credentials use the same request and response contract. See the component API inventory for exact paths and SDK methods.
Request body
renderingProviderIdRequiredstringSaved rendering provider (from GET /rfas/creation-context or the organization billing profile).
placeOfServiceIdRequiredstringSaved service location ID (organization billing profile locations[].id).
dateOfServiceRequiredstringVisit date, YYYY-MM-DD.
claimIdstringOptional saved claim; its claims administrator is used and prior LC 4604.5 therapy visits are counted.
billingProviderIdstringOptional saved billing provider; the organization default is used when omitted.
lines[]Requiredobject[]1–100 lines of the visit, priced together.
lines[].idRequiredstringCaller line ID, unique in the request.
lines[].codeRequiredstringFive-character procedure code, or an ML medical-legal code (listed in medicalLegalLineIds and not priced).
lines[].unitsRequirednumberPositive units, at most 10,000.
lines[].modifiersstring[]Up to four two-character modifiers.
lines[].dateOfService / dateOfServiceEndstringLine dates when they differ from the visit date.
lines[].chargeCentsintegerBilled charge in cents; returned with the difference.
lines[].feeContext / drugobjectOptional specialty context (anesthesia, therapy, imaging, equipment) and billed drug identity (ndcNumber, metricQuantity, unitOfMeasure), as on bill service lines.
Examples
curl 'https://app.mindbill.org/partner/v2/fee-quotes/encounter' \
--header "Authorization: Bearer $MINDBILL_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"claimId": "clm_example",
"renderingProviderId": "rp_example",
"placeOfServiceId": "loc_example",
"dateOfService": "2026-09-18",
"lines": [
{
"id": "line-1",
"code": "99213",
"units": 1,
"modifiers": [
"25"
],
"chargeCents": 18000
},
{
"id": "line-2",
"code": "97110",
"units": 2,
"chargeCents": 12000
}
]
}'curl 'https://app.mindbill.org/partner/v2/fee-quotes/encounter' \
--header "Authorization: Bearer $MINDBILL_BROWSER_TOKEN" \
--header 'Origin: https://your-app.example' \
--header 'Content-Type: application/json' \
--data '{
"claimId": "clm_example",
"renderingProviderId": "rp_example",
"placeOfServiceId": "loc_example",
"dateOfService": "2026-09-18",
"lines": [
{
"id": "line-1",
"code": "99213",
"units": 1,
"modifiers": [
"25"
],
"chargeCents": 18000
},
{
"id": "line-2",
"code": "97110",
"units": 2,
"chargeCents": 12000
}
]
}'Response
200 OK
{
"data": {
"status": "priced",
"lines": [
{
"id": "line-1",
"assessment": "priced",
"quote": { "status": "priced", "amountCents": 9264, "scheduleMaximumCents": 9264, "chargeAmountCents": 18000 },
"findings": [{ "code": "modifier_conditional_estimate", "message": "Modifier 25 requires a significant, separately identifiable visit in the record." }],
"displayNotes": ["Modifier 25 requires a separately identifiable visit."]
},
{ "id": "line-2", "assessment": "priced", "quote": { "status": "priced", "amountCents": 8113, "scheduleMaximumCents": 8113, "chargeAmountCents": 12000 }, "findings": [], "displayNotes": [] }
],
"totals": { "submittedChargeCents": 30000, "pricedSubtotalCents": 17377, "estimatedPayableCents": 17377, "scheduleMaximumCents": 17377, "reviewLineCount": 0 },
"visitNotes": ["Therapy visit 3 of 24 under LC 4604.5 for this claim."],
"medicalLegalLineIds": []
}
}data.statusRequired"priced" | "requires_review" | "not_separately_payable" | "by_report"Visit-level assessment.
data.lines[].assessmentRequiredsame values as statusA line that is not priced has no expected amount and must be reviewed. Never substitute the charge.
data.lines[].quoteRequiredobjectstatus, amountCents, scheduleMaximumCents, chargeAmountCents, basis, calculation, provenance, and notes when priced; reason otherwise.
data.lines[].paymentAdjustmentobjectMultiple-surgery or endoscopy adjustment; when present its amountCents is the expected payment.
data.lines[].findings[] / displayNotes[]Requiredobject[] / string[]Coding findings (code, message, citationUrl) and short biller-facing notes for the line.
data.totalsobjectsubmittedChargeCents, pricedSubtotalCents, estimatedPayableCents, scheduleMaximumCents, reviewLineCount. estimatedPayableCents is null while any line needs review.
data.visitNotesRequiredstring[]Visit-wide notes such as per-visit caps and LC 4604.5 visit counts. Show once.
data.medicalLegalLineIdsRequiredstring[]Lines with ML codes, which the treatment schedule does not price.
data.claimEdits / limitationsobject[]Same-day edit screening and context limitations.