{
  "version": "lending-reasons-v1",
  "compatibility": "Existing codes retain their meanings. Additive codes may be introduced; preserve unknown codes and read the supplied reason facts. This is a product decision catalog, not adverse-action notice wording.",
  "reasons": [
    {
      "code": "component_critical_rule",
      "category": "decline",
      "rule": "component_valuation.critical_rules",
      "description": "A confirmed component matrix eligibility rule is met."
    },
    {
      "code": "component_valuation_incomplete",
      "category": "incomplete",
      "rule": "component_valuation",
      "description": "Vehicle group, reference or component grades do not support a complete valuation."
    },
    {
      "code": "severe_damage",
      "category": "decline",
      "rule": "decline_when.any_severity",
      "description": "A defect meets the configured severity threshold, which may be lower than severe."
    },
    {
      "code": "damage_type_threshold",
      "category": "decline",
      "rule": "decline_when.damage_types",
      "description": "A defect meets a damage-type severity threshold."
    },
    {
      "code": "multiple_damaged_panels",
      "category": "decline",
      "rule": "decline_when.damaged_panels",
      "description": "Distinct damaged panels reach the configured count and severity."
    },
    {
      "code": "engine_concern",
      "category": "decline",
      "rule": "decline_when.engine_concerns",
      "description": "Visible engine-compartment concerns meet a configured threshold."
    },
    {
      "code": "deductions_exceed_threshold",
      "category": "decline",
      "rule": "decline_when.deductions_percent_of_reference",
      "description": "Firm condition deductions reach the configured share of book value."
    },
    {
      "code": "vin_mismatch",
      "category": "identity",
      "rule": "vin_mismatch",
      "description": "Photographed VIN differs from the supplied VIN."
    },
    {
      "code": "required_view_missing",
      "category": "recapture",
      "rule": "required_views",
      "description": "At least one required view was not accepted."
    },
    {
      "code": "submitted_incomplete",
      "category": "recapture",
      "rule": "capture_state",
      "description": "Submitted with incomplete evidence."
    },
    {
      "code": "condition_uncertain",
      "category": "recapture",
      "rule": "condition",
      "description": "Closer or clearer evidence is required."
    },
    {
      "code": "analysis_incomplete",
      "category": "incomplete",
      "rule": "analysis_state",
      "description": "One or more analyses have not completed."
    },
    {
      "code": "coverage_incomplete",
      "category": "incomplete",
      "rule": "coverage_state",
      "description": "Required coverage is incomplete."
    },
    {
      "code": "identity_conflict",
      "category": "incomplete",
      "rule": "identity",
      "description": "Photos may show different vehicles."
    },
    {
      "code": "reference_value_missing",
      "category": "incomplete",
      "rule": "reference",
      "description": "No book value was supplied."
    },
    {
      "code": "condition_deductions",
      "category": "advisory",
      "rule": "methodology",
      "description": "Condition deductions apply."
    },
    {
      "code": "no_visible_damage",
      "category": "advisory",
      "rule": "condition",
      "description": "No visible damage in the required evidence."
    },
    {
      "code": "unpriced_findings",
      "category": "advisory",
      "rule": "methodology.repair_matrix",
      "description": "Some findings have no matching price."
    },
    {
      "code": "single_assessment_light_damage",
      "category": "advisory",
      "rule": "condition",
      "description": "Single-assessment light damage is priced but cannot alone trigger decline."
    }
  ]
}
