← Back to Interaction Rule Set

Clarity Engine — DSCR Mortgage Skill

Version: 1.0 | Status: Implementation-Ready — Gear 1

Table of Contents SKILL PURPOSE INVOCATION EXECUTION SEQUENCE STAGE 2 — EXTRACT QUALIFICATION INPUTS STAGES 3–6 — ELIGIBILITY GATES STAGE 7 — COMPUTE LOAN, RATE, AND P&I STAGE 8 — COMPUTE MONTHLY PITIA STAGE 9 — DSCR RATIO AND TIER STAGE 10 — CASHFLOW ANALYTICS STAGE 11 — RESERVE VERIFICATION STAGE 12 — CASH TO CLOSE STAGE 13 — FINAL QUALIFICATION DETERMINATION STAGE 14 — EMIT DSCRQualResult WORKED EXAMPLES FORBIDDEN PATTERNS COMPANION SKILLS

Clarity Engine — DSCR Mortgage Skill

Version: 1.0 | Status: Implementation-Ready — Gear 1

Scope: Full DSCR (Debt Service Coverage Ratio) loan qualification engine for residential investment properties. Executes eligibility gates, DSCR ratio computation, cashflow analysis, breakeven and max-loan analytics, cash-to-close, and reserve verification. DSCR is a non-QM (non-Qualified Mortgage) product — borrower income is NOT used; property cashflow qualifies the loan.

Confidential: PreFi, Inc. / Purpose Technology, Inc. d/b/a Purlend

Primary Reference: No GSE guideline governs DSCR — this is a non-QM, portfolio-lender product. Guidelines reflect market consensus across major DSCR lenders as of 2025–2026. Individual lender overlays vary. Flag DSCR_LENDER_OVERLAY_REVIEW when lender-specific terms are required.

SKILL PURPOSE

This skill takes a validated BorrowerProfile and a ProgramEvaluationQueue entry for DSCR and produces a DSCRQualResult — the definitive DSCR loan qualification determination, with full computation trail, DSCR ratio and tier, property cashflow analysis, breakeven rent, maximum loan at 1.0x and 1.25x thresholds, cash-to-close, and reserve status.

The single most important DSCR concept:

DSCR replaces DTI entirely. There is no income verification. No GMI. No employment docs. No tax returns. The property's gross rent divided by its total monthly housing expense (PITIA) is the entire qualification test. If the property cashflows, the borrower qualifies — regardless of personal income.

This skill produces:

This skill does NOT produce:

Mortgage family scope: DSCR only — INVESTMENT occupancy

Forbidden: Never apply DTI, GMI verification, residual income, LLPA grid, MIP, PMI, or conventional income-based qualification logic to this skill. DSCR qualification is property-cashflow-based only.

INVOCATION

Invoke this skill when:

**If DSCR entry has eligibility = INELIGIBLE:** return DSCR_INELIGIBLE — [reason] and stop.

EXECUTION SEQUENCE


Stage 1  — Validate inputs
Stage 2  — Extract qualification inputs
Stage 3  — Gate 1: Occupancy (INVESTMENT only)
Stage 4  — Gate 2: Loan size check
Stage 5  — Gate 3: Credit score
Stage 6  — Gate 4: LTV cap (80% maximum)
Stage 7  — Compute loan, rate, and P&I
Stage 8  — Compute monthly PITIA
Stage 9  — Compute DSCR ratio and tier
Stage 10 — Cashflow analytics (breakeven, max loan, rent gap)
Stage 11 — Reserve verification
Stage 12 — Cash-to-close computation
Stage 13 — Final qualification determination
Stage 14 — Build and emit DSCRQualResult

Run all stages in sequence. Do not skip any stage. Every intermediate value must be carried into the lineage trace.

STAGE 2 — EXTRACT QUALIFICATION INPUTS


From BorrowerProfile:
  qualifying_credit_score         integer
  occupancy_type                  must be INVESTMENT
  loan_purpose                    PURCHASE | RATE_TERM_REFI | CASH_OUT_REFI
  property_value                  decimal — MIN(purchase_price, appraised_value)
  purchase_price                  decimal
  appraised_value                 decimal (if refi)
  down_payment_amount             decimal (purchase only)
  gross_rent_monthly              decimal — REQUIRED (market rent or actual lease)
  monthly_tax                     decimal
  monthly_insurance               decimal
  hoa_monthly                     decimal (0 if none)
  funds_available_for_closing     decimal
  funds_available_for_reserves    decimal
  entity_type                     INDIVIDUAL | LLC | OTHER  (DSCR allows both)

From ProgramEvaluationQueue DSCR entry:
  preliminary_dscr                decimal (Router Gate 5 preliminary — override by Stage 9)
  preliminary_rate                decimal (Router placeholder)
  preliminary_loan_amount         decimal

CRITICAL DSCR INPUT RULE — RENT:
  gross_rent_monthly is required for DSCR qualification.
  If null or zero: return DSCR_CONDITIONAL, flag DSCR_RENT_MISSING
  Use: market rent (appraiser opinion) OR actual lease (if lease in place)
  Do NOT use projected rent without appraiser support.
  Do NOT use net rent — DSCR uses GROSS rent as numerator.
  
  RENT SOURCE HIERARCHY:
    1. Appraiser-verified market rent (preferred for new purchase)
    2. Executed lease agreement (if tenant in place)
    3. Borrower-provided market estimate (CONDITIONAL — flag DSCR_RENT_UNVERIFIED)

STAGES 3–6 — ELIGIBILITY GATES

Gate 1: Occupancy


DSCR eligible occupancy: INVESTMENT only

IF occupancy_type ≠ INVESTMENT:
  gate_1 = FAIL
  reason = "DSCR limited to investment properties. [occupancy_type] not eligible."
ELSE:
  gate_1 = PASS

Gate 2: Loan Size


DSCR has no GSE conforming limit — this is a non-QM product.
Lender-specific maximums apply (typically $1M–$3M depending on lender).

dscr_loan_size_soft_limit = 2,000,000  (Gear 1 advisory threshold)

base_loan_amount = property_value - down_payment_amount

IF base_loan_amount > dscr_loan_size_soft_limit:
  flag DSCR_LARGE_BALANCE_ADVISOR_REVIEW
  note: "Loan $[X] exceeds $2M advisory threshold. DSCR available but lender-specific
         maximums and additional requirements apply. Advisor review required."
  gate_2 = PASS  (advisory only — not a hard stop)
ELSE:
  gate_2 = PASS

NOTE: No hard FAIL at Gate 2 for DSCR — only advisory flags.

Gate 3: Credit Score


Standard DSCR minimum: 640

IF qualifying_credit_score ≥ 640:
  gate_3 = PASS

ELIF qualifying_credit_score ≥ 620:
  gate_3 = CONDITIONAL
  note: "Score 620–639 below standard DSCR minimum of 640. Some lenders accept
         with higher rate or additional reserves. Overlay risk applies."
  flag DSCR_CREDIT_OVERLAY_RISK
  flag DSCR_620_639_SUBTHRESHOLD

ELSE:  (score < 620)
  gate_3 = FAIL
  reason = "Score [X] below DSCR minimum of 620. DSCR requires 640+ (standard) or 620+ (with overlay)."

Gate 4: LTV Cap


DSCR maximum LTV: 80.00% (20% minimum down payment — hard limit)
Some lenders allow 75% max for DSCR < 1.00 or lower credit.

dscr_base_loan = property_value - down_payment_amount
dscr_ltv = dscr_base_loan / property_value

IF dscr_ltv > 0.80:
  gate_4 = FAIL
  reason = "DSCR maximum LTV is 80%. Requires 20% down. Current LTV: [X]%"
  flag LTV_EXCEEDS_DSCR_MAX

ELIF dscr_ltv > 0.75 AND qualifying_credit_score < 640:
  gate_4 = CONDITIONAL
  note: "LTV [X]% > 75% with score < 640. Some DSCR lenders cap at 75% for this tier."
  flag DSCR_LTV_CREDIT_COMBO_OVERLAY

ELSE:
  gate_4 = PASS

BOUNDARY RULE: dscr_ltv exactly 0.80 (80.00%) = PASS (≤ 80% is eligible).

If Gate 1, 3 (FAIL), or 4 (FAIL) fails: stop. Set qualification_status = INELIGIBLE. Emit reason.

STAGE 7 — COMPUTE LOAN, RATE, AND P&I


STEP 1 — Loan amount:
  dscr_base_loan = property_value - down_payment_amount

  VERIFY: dscr_ltv = dscr_base_loan / property_value ≤ 0.80
  If purchase_price ≠ appraised_value: property_value = MIN(purchase_price, appraised_value)

STEP 2 — DSCR rate:
  DSCR loans have no LLPA grid and no GSE rate matrix.
  Lenders price DSCR based on their own risk models.
  
  Gear 1 rate placeholder: 7.50% (investment premium over primary market rate)
  flag DSCR_RATE_LENDER_SPECIFIC
  note: "Rate 7.50% is a system placeholder. Actual DSCR rates vary by lender,
         LTV, DSCR ratio, credit score, and market conditions."

  dscr_rate = 0.0750  (7.50% Gear 1 placeholder)

  NO MI applies to DSCR loans:
    monthly_mi = 0.00
    flag MI_NOT_APPLICABLE_DSCR

STEP 3 — P&I computation:
  monthly_rate = dscr_rate / 12
  compound     = (1 + monthly_rate)^360
  numerator    = monthly_rate × compound
  denominator  = compound − 1
  pmt_factor   = numerator / denominator
  pi_payment   = dscr_base_loan × pmt_factor

CRITICAL ROUNDING RULE:
  Never round monthly_rate, compound, numerator, or denominator.
  Round pi_payment only at output (2 decimal places).

DSCR MI RULE:
  DSCR loans have NO mortgage insurance of any kind.
  No PMI, no MIP, no UFMIP, no funding fee.
  Never include any MI component in DSCR PITIA or payment computations.

PMT Factor Reference Table


Rate    monthly_r    (1+r)^360    factor
6.50%   0.0054167    6.99180      0.0063207
6.75%   0.0056250    7.53325      0.0064860
7.00%   0.0058333    8.11650      0.0066530
7.25%   0.0060417    8.74477      0.0068218
7.50%   0.0062500    9.42153      0.0069921
7.75%   0.0064583   10.15051      0.0071641
8.00%   0.0066667   10.93573      0.0073376
8.25%   0.0068750   11.78347      0.0075125
8.50%   0.0070833   12.70136      0.0076891

STAGE 8 — COMPUTE MONTHLY PITIA


DSCR PITIA definition:
  pitia = pi_payment + monthly_tax + monthly_insurance + hoa_monthly

CRITICAL DSCR PITIA RULES:
  1. NO mortgage insurance — DSCR has none. Never add PMI, MIP, or funding fee.
  2. HOA is included — impacts cashflow and must be counted.
  3. Vacancy reserve is NOT included in PITIA for DSCR calculation.
     (Vacancy is a separate cashflow consideration — not part of the ratio denominator.)
  4. Property management fees are NOT included in PITIA.
     (Management fees reduce NOI but are not part of DSCR denominator per standard definition.)

pitia = pi_payment + monthly_tax + monthly_insurance + hoa_monthly

DSCR PITIA vs. Standard PITIA:
  Standard PITIA (Conventional/FHA/VA): P&I + T + I + HOA + MI
  DSCR PITIA:                           P&I + T + I + HOA  (NO MI)

STAGE 9 — DSCR RATIO AND TIER


STEP 1 — Compute DSCR:
  dscr_ratio = gross_rent_monthly / pitia

  NEVER:
    • Use net rent (gross - vacancy) in numerator — use GROSS rent
    • Use net operating income (NOI) — use GROSS monthly rent
    • Subtract property management, maintenance, or vacancy from numerator
    • Include any MI in denominator — DSCR PITIA has none

STEP 2 — Assign tier:
  IF dscr_ratio ≥ 1.25:   dscr_tier = STRONG
  ELIF dscr_ratio ≥ 1.00: dscr_tier = PASS
  ELIF dscr_ratio ≥ 0.85: dscr_tier = CONDITIONAL
  ELSE:                    dscr_tier = FAIL

STEP 3 — Tier disposition:
  STRONG:      qualification_path = DSCR_ELIGIBLE — best lender pricing
  PASS:        qualification_path = DSCR_ELIGIBLE — standard lender terms
  CONDITIONAL: qualification_path = DSCR_CONDITIONAL
               note: "DSCR [X.XX] below 1.00. Some lenders accept ≥ 0.85 with
                      higher rate (+0.25–0.50%), higher reserves (12 months), or
                      additional documentation."
               flag DSCR_BELOW_1x
               flag DSCR_LENDER_SPECIFIC_APPROVAL
  FAIL:        qualification_status = DSCR_FAIL
               reason = "DSCR [X.XX] below minimum 0.85 threshold."
               flag DSCR_CASHFLOW_INSUFFICIENT
               STOP — do not proceed.

NOTE: DSCR threshold varies by lender:
  Most common: ≥ 1.00 = qualify; ≥ 1.25 = best pricing
  Some lenders: ≥ 1.20 = qualify
  flag DSCR_LENDER_THRESHOLD_VARIES on all DSCR PASS outputs

STAGE 10 — CASHFLOW ANALYTICS

This stage produces DSCR-specific insights not available in conventional qualification. These are unique to the DSCR program and essential for the Optimization Skill downstream.


COMPUTATION 1 — Breakeven rents:
  min_rent_for_dscr_1x   = pitia                    (rent needed to exactly cover PITIA)
  min_rent_for_dscr_125x = pitia × 1.25             (rent needed for STRONG tier)

COMPUTATION 2 — Rent gap (if CONDITIONAL or FAIL):
  IF dscr_tier IN [CONDITIONAL, FAIL]:
    rent_gap = min_rent_for_dscr_1x - gross_rent_monthly
    rent_gap_pct = rent_gap / gross_rent_monthly
    note: "Rent must increase $[rent_gap] (+{rent_gap_pct:.1%}) to reach 1.0x DSCR"

COMPUTATION 3 — Maximum loan at DSCR thresholds:
  Purpose: Shows the maximum loan amount the property can support at given DSCR thresholds.
  This is the "backward" solve — useful for optimization.

  At DSCR = 1.0x:
    gross_rent = (max_loan × pmt_factor) + monthly_tax + monthly_insurance + hoa_monthly
    max_loan × pmt_factor = gross_rent - monthly_tax - monthly_insurance - hoa_monthly
    max_loan_at_dscr_1x = (gross_rent_monthly - monthly_tax - monthly_insurance - hoa_monthly) / pmt_factor

  At DSCR = 1.25x:
    At 1.25x: PITIA = gross_rent / 1.25
    (max_loan × pmt_factor) + tax + ins + hoa = gross_rent / 1.25
    max_loan × pmt_factor = (gross_rent / 1.25) - tax - ins - hoa
    max_loan_at_dscr_125x = (gross_rent_monthly / 1.25 - monthly_tax - monthly_insurance - hoa_monthly) / pmt_factor

  GUARD: If result is ≤ 0 (rent too low to cover fixed costs alone):
    max_loan_at_dscr_1x = 0
    flag DSCR_FIXED_COSTS_EXCEED_RENT

COMPUTATION 4 — Maximum purchase price at DSCR thresholds (20% down assumption):
  max_pp_at_dscr_1x   = max_loan_at_dscr_1x / 0.80
  max_pp_at_dscr_125x = max_loan_at_dscr_125x / 0.80

COMPUTATION 5 — Cashflow summary:
  gross_monthly_rent = gross_rent_monthly
  monthly_pitia      = pitia
  net_cashflow_before_vacancy = gross_monthly_rent - pitia
    (positive = property cashflows above debt service)
    (negative = property does not cover PITIA — only possible in CONDITIONAL tier)
  annualized_cashflow = net_cashflow_before_vacancy × 12
  cap_rate_estimate   = (gross_rent_monthly × 12 × 0.85) / property_value
    (0.85 factor = 85% of gross rent as rough NOI proxy after vacancy/expenses)
    flag DSCR_CAP_RATE_ESTIMATE — actual NOI requires operating expense analysis

STAGE 11 — RESERVE VERIFICATION


DSCR RESERVE REQUIREMENTS (stricter than Conventional investment):

Standard DSCR minimum: 6 months PITIA
Extended requirement: 12 months PITIA if dscr_tier = CONDITIONAL
Elite requirement: Some lenders require 6–12 months per property if multiple DSCR loans

reserve_months_required:
  IF dscr_tier = STRONG OR dscr_tier = PASS: 6
  IF dscr_tier = CONDITIONAL:               12
  NOTE: These are lender consensus figures — flag DSCR_RESERVE_LENDER_SPECIFIC

required_reserves = reserve_months_required × pitia

Reserve calculation:
  available_reserves = funds_available_for_reserves
    (DSCR reserves must be borrower's own seasoned funds — no gifts)
    flag DSCR_NO_GIFT_FUNDS_FOR_RESERVES

  retirement_credit = retirement_account_balance × 0.60  (same as Conventional)

  total_available = available_reserves + retirement_credit

  IF total_available ≥ required_reserves:
    reserve_status = MEETS_REQUIREMENT
    reserve_surplus = total_available - required_reserves
  ELSE:
    reserve_status = SHORTFALL
    reserve_gap = required_reserves - total_available
    flag DSCR_RESERVE_SHORTFALL
    IF dscr_tier = CONDITIONAL:
      flag DSCR_RESERVE_SHORTFALL_BLOCKING  (CONDITIONAL requires 12mo — harder to satisfy)

STAGE 12 — CASH TO CLOSE


PURCHASE:
  cash_to_close = down_payment_amount
               + estimated_closing_costs
               + prepaids_and_escrow
               − seller_concession_amount
               − lender_credit_amount

DSCR SELLER CONCESSION LIMIT:
  Maximum: 2% of purchase price (stricter than conventional primary/second home)
  IF seller_concession_amount > purchase_price × 0.02:
    flag DSCR_SELLER_CONCESSION_LIMIT
    effective_concession = purchase_price × 0.02

NO MI PREMIUM:
  DSCR has no upfront MI of any kind. ufmip_cash = 0.
  No PMI, no UFMIP, no funding fee.

Estimated closing costs (Gear 1 estimate):
  est_closing_costs = dscr_base_loan × 0.02  (2% — DSCR may have higher origination)

Prepaid interest:
  daily_rate = dscr_rate / 365
  prepaid_interest = daily_rate × dscr_base_loan × 15

Escrow setup:
  escrow_setup = (monthly_tax + monthly_insurance) × 3

prepaids_and_escrow = prepaid_interest + escrow_setup

CTC FEASIBILITY:
  IF funds_available_for_closing ≥ cash_to_close:
    ctc_status = MEETS_REQUIREMENT
    ctc_surplus = funds_available_for_closing - cash_to_close
  ELSE:
    ctc_status = SHORTFALL
    ctc_gap = cash_to_close - funds_available_for_closing
    flag CTC_SHORTFALL

NOTE: CTC and reserves come from separate capital — verify borrower has both.
      Total capital required = cash_to_close + required_reserves

STAGE 13 — FINAL QUALIFICATION DETERMINATION


qualification_status:

  DSCR_ELIGIBLE_STRONG:
    All gates PASS AND dscr_tier = STRONG (ratio ≥ 1.25)
    Best pricing, most lenders, fewest conditions

  DSCR_ELIGIBLE_PASS:
    All gates PASS AND dscr_tier = PASS (1.00 ≤ ratio < 1.25)
    Standard terms, most lenders

  DSCR_CONDITIONAL:
    All gates PASS AND dscr_tier = CONDITIONAL (0.85 ≤ ratio < 1.00)
    OR Gate 3 = CONDITIONAL (score 620–639)
    Requires lender with sub-1.0 DSCR appetite, higher rate, higher reserves

  DSCR_FAIL:
    dscr_tier = FAIL (ratio < 0.85)
    OR Gate 1 = FAIL, Gate 3 = FAIL, Gate 4 = FAIL

  HUMAN_REVIEW_REQUIRED flags:
    DSCR_LARGE_BALANCE_ADVISOR_REVIEW
    DSCR_LENDER_SPECIFIC_APPROVAL
    DSCR_RENT_UNVERIFIED
    DSCR_620_639_SUBTHRESHOLD

STAGE 14 — EMIT DSCRQualResult


{
  "schema_version": "clarity_engine_v1.0",
  "skill": "DSCR",
  "skill_version": "1.0",
  "deal_id": "string",
  "borrower_id": "string",
  "created_at": "ISO 8601 UTC",

  "qualification_status": "DSCR_ELIGIBLE_STRONG | DSCR_ELIGIBLE_PASS | DSCR_CONDITIONAL | DSCR_FAIL | DSCR_INELIGIBLE",
  "ineligible_reason": "string | null",

  "loan": {
    "dscr_base_loan": 0.00,
    "dscr_ltv": 0.0000,
    "down_payment_amount": 0.00,
    "property_value": 0.00
  },

  "rate": {
    "dscr_rate": 0.0750,
    "note": "7.50% Gear 1 placeholder — actual rate is lender-specific"
  },

  "payment": {
    "pi_payment": 0.00,
    "monthly_tax": 0.00,
    "monthly_insurance": 0.00,
    "hoa_monthly": 0.00,
    "monthly_mi": 0.00,
    "pitia": 0.00
  },

  "dscr": {
    "gross_rent_monthly": 0.00,
    "rent_source": "APPRAISER_VERIFIED | EXECUTED_LEASE | BORROWER_ESTIMATE",
    "pitia_denominator": 0.00,
    "dscr_ratio": 0.0000,
    "dscr_tier": "STRONG | PASS | CONDITIONAL | FAIL",
    "dscr_threshold_1x": 1.00,
    "dscr_threshold_strong": 1.25
  },

  "cashflow_analytics": {
    "min_rent_for_dscr_1x": 0.00,
    "min_rent_for_dscr_125x": 0.00,
    "rent_gap_to_1x": 0.00,
    "rent_gap_pct": 0.0000,
    "max_loan_at_dscr_1x": 0.00,
    "max_loan_at_dscr_125x": 0.00,
    "max_pp_at_dscr_1x": 0.00,
    "max_pp_at_dscr_125x": 0.00,
    "net_monthly_cashflow": 0.00,
    "annualized_cashflow": 0.00,
    "cap_rate_estimate": 0.0000
  },

  "reserves": {
    "reserve_months_required": 0,
    "pitia_for_reserve": 0.00,
    "required_reserves": 0.00,
    "funds_available_for_reserves": 0.00,
    "reserve_status": "MEETS_REQUIREMENT | SHORTFALL",
    "reserve_surplus_or_gap": 0.00
  },

  "cash_to_close": {
    "down_payment": 0.00,
    "estimated_closing_costs": 0.00,
    "prepaids_and_escrow": 0.00,
    "seller_concession": 0.00,
    "lender_credit": 0.00,
    "total_cash_to_close": 0.00,
    "funds_available": 0.00,
    "ctc_status": "MEETS_REQUIREMENT | SHORTFALL",
    "ctc_surplus_or_gap": 0.00,
    "total_capital_required": 0.00
  },

  "flags": [],
  "constraint_signals": [],
  "human_review_required": false,
  "human_review_reasons": [],

  "lineage_trace": {
    "gate_1_result": "string",
    "gate_2_result": "string",
    "gate_3_result": "string",
    "gate_4_result": "string",
    "gate_5_dscr_result": "string",
    "pitia_computation": {},
    "dscr_computation": {},
    "cashflow_analytics": {},
    "ctc_computation": {}
  }
}

WORKED EXAMPLES

Example A — Standard DSCR Pass (score 680, 20% down, $380,000, rent $2,800)

Inputs:


qualifying_credit_score: 680
occupancy_type:          INVESTMENT
loan_purpose:            PURCHASE
purchase_price:          380,000
appraised_value:         380,000
down_payment_amount:     76,000 (20%)
gross_rent_monthly:      2,800
monthly_tax:             475.00
monthly_insurance:       90.00
hoa_monthly:             0.00
funds_available_for_closing:  95,000.00
funds_available_for_reserves: 50,000.00

Gates 1–4


Gate 1: INVESTMENT ✓
Gate 2: loan 304,000 ≤ 2,000,000 ✓
Gate 3: score 680 ≥ 640 ✓
Gate 4: ltv = 304,000 / 380,000 = 0.8000 = 80.00% ≤ 80% ✓ (boundary PASS)

Stage 7 — Loan and P&I


dscr_base_loan = 380,000 - 76,000 = 304,000.00
dscr_ltv = 304,000 / 380,000 = 0.8000 = 80.00%
dscr_rate = 7.50%

monthly_rate = 0.075 / 12 = 0.00625
compound     = (1.00625)^360 = 9.42153
pmt_factor   = (0.00625 × 9.42153) / (9.42153 - 1) = 0.05888 / 8.42153 = 0.0069921

pi_payment = 304,000 × 0.0069921 = 2,125.61
monthly_mi = 0.00  (DSCR — no MI of any kind)

Stage 8 — PITIA


pitia = 2,125.61 + 475.00 + 90.00 + 0.00 = 2,690.61

Stage 9 — DSCR Ratio


dscr_ratio = 2,800 / 2,690.61 = 1.0407

1.00 ≤ 1.0407 < 1.25 → dscr_tier = PASS
qualification_path = DSCR_ELIGIBLE_PASS

Stage 10 — Cashflow Analytics


min_rent_for_dscr_1x   = 2,690.61
min_rent_for_dscr_125x = 2,690.61 × 1.25 = 3,363.27

Rent vs breakeven: 2,800 - 2,690.61 = $109.39 cushion above 1x

max_loan_at_dscr_1x:
  (2,800 - 475 - 90 - 0) / 0.0069921 = 2,235 / 0.0069921 = 319,644.40
  max_pp_at_dscr_1x = 319,644.40 / 0.80 = 399,555.50

max_loan_at_dscr_125x:
  (2,800 / 1.25 - 475 - 90 - 0) / 0.0069921 = (2,240 - 565) / 0.0069921 = 239,554.53
  max_pp_at_dscr_125x = 239,554.53 / 0.80 = 299,443.16

net_monthly_cashflow = 2,800 - 2,690.61 = 109.39
annualized_cashflow  = 109.39 × 12 = 1,312.68
cap_rate_estimate    = (2,800 × 12 × 0.85) / 380,000 = 28,560 / 380,000 = 0.0752 = 7.52%

NOTE: At current rent ($2,800) and PITIA ($2,690.61), the property covers debt service
      but is only $109.39/month above breakeven. Borrower must account for vacancy,
      maintenance, and property management from this margin.

Stage 11 — Reserves


reserve_months_required = 6 (PASS tier)
required_reserves = 6 × 2,690.61 = 16,143.66
funds_available_for_reserves = 50,000.00
reserve_status = MEETS_REQUIREMENT (surplus $33,856.34)

Stage 12 — Cash to Close


est_closing_costs = 304,000 × 0.02 = 6,080.00
daily_rate = 0.075 / 365 = 0.00020548
prepaid_interest = 0.00020548 × 304,000 × 15 = 936.99
escrow_setup = (475.00 + 90.00) × 3 = 1,695.00
prepaids = 936.99 + 1,695.00 = 2,631.99

cash_to_close = 76,000 + 6,080 + 2,631.99 = 84,711.99
funds_available = 95,000.00
ctc_status = MEETS_REQUIREMENT (surplus $10,288.01)

total_capital_required = 84,711.99 + 16,143.66 = 100,855.65
total_available = 95,000 + 50,000 = 145,000.00 ✓

Stage 13 — Final Result


qualification_status: DSCR_ELIGIBLE_PASS
dscr_base_loan: 304,000.00
dscr_ltv: 80.00%
dscr_rate: 7.50%
pi_payment: 2,125.61
pitia: 2,690.61
dscr_ratio: 1.0407
dscr_tier: PASS
min_rent_1x: 2,690.61
min_rent_125x: 3,363.27
net_monthly_cashflow: 109.39
cap_rate: 7.52%
cash_to_close: 84,711.99
reserves_required: 16,143.66

flags: [DSCR_RATE_LENDER_SPECIFIC, DSCR_LENDER_THRESHOLD_VARIES, MI_NOT_APPLICABLE_DSCR]

Example B — DSCR Conditional (score 640, 20% down, $300,000, rent $2,000)

Purpose: Demonstrates the CONDITIONAL tier (DSCR 0.85–0.99). Property does not fully cover its debt service — borderline situation with explicit remediation path.

Inputs:


qualifying_credit_score: 640
occupancy_type:          INVESTMENT
purchase_price:          300,000
down_payment_amount:     60,000 (20%)
gross_rent_monthly:      2,000
monthly_tax:             375.00
monthly_insurance:       75.00
hoa_monthly:             0.00
funds_available_for_closing:  80,000.00
funds_available_for_reserves: 35,000.00

Gates 1–4


Gate 1: INVESTMENT ✓
Gate 2: loan 240,000 ≤ 2,000,000 ✓
Gate 3: score 640 ≥ 640 ✓ (exactly at minimum)
Gate 4: ltv = 240,000 / 300,000 = 0.8000 = 80.00% ✓

Stage 7 — Loan and P&I


dscr_base_loan = 300,000 - 60,000 = 240,000.00
dscr_rate = 7.50%
pi_payment = 240,000 × 0.0069921 = 1,678.11
monthly_mi = 0.00

Stage 8 — PITIA


pitia = 1,678.11 + 375.00 + 75.00 + 0.00 = 2,128.11

Stage 9 — DSCR Ratio


dscr_ratio = 2,000 / 2,128.11 = 0.9398

0.85 ≤ 0.9398 < 1.00 → dscr_tier = CONDITIONAL
qualification_path = DSCR_CONDITIONAL

flag DSCR_BELOW_1x
flag DSCR_LENDER_SPECIFIC_APPROVAL
note: "DSCR 0.9398 below 1.00. Property does not cover full debt service from rent.
       Some DSCR lenders accept ≥ 0.85 with: higher rate (+0.25–0.50%),
       12-month reserves, or additional documentation."

Stage 10 — Cashflow Analytics


min_rent_for_dscr_1x   = 2,128.11  (current rent is $128.11 short)
min_rent_for_dscr_125x = 2,128.11 × 1.25 = 2,660.14

rent_gap = 2,128.11 - 2,000 = 128.11
rent_gap_pct = 128.11 / 2,000 = 6.4%
note: "Rent must increase $128.11 (+6.4%) to reach 1.0x DSCR"

max_loan_at_dscr_1x:
  (2,000 - 375 - 75 - 0) / 0.0069921 = 1,550 / 0.0069921 = 221,677.32
  max_pp_at_dscr_1x = 221,677.32 / 0.80 = 277,096.65

  Current loan ($240,000) exceeds max_loan_at_dscr_1x ($221,677.32).
  This confirms DSCR < 1.0 — the property cannot support this loan at 1.0x.
  
  REMEDIATION OPTIONS:
    Option 1: Increase down payment to reduce loan to $221,677 (requires $78,323 down = 26.1%)
    Option 2: Find lender accepting DSCR ≥ 0.85 (at higher rate/reserves)
    Option 3: Property requires rent increase of $128/month before closing

net_monthly_cashflow = 2,000 - 2,128.11 = -128.11 (negative — property short on cashflow)
annualized_cashflow  = -128.11 × 12 = -1,537.32
cap_rate_estimate    = (2,000 × 12 × 0.85) / 300,000 = 20,400 / 300,000 = 0.0680 = 6.80%

Stage 11 — Reserves


reserve_months_required = 12 (CONDITIONAL tier — extended requirement)
required_reserves = 12 × 2,128.11 = 25,537.32
funds_available_for_reserves = 35,000.00
reserve_status = MEETS_REQUIREMENT (surplus $9,462.68)
NOTE: 12-month requirement met — this is a strong compensating factor for CONDITIONAL approval.

Stage 12 — Cash to Close


est_closing_costs = 240,000 × 0.02 = 4,800.00
daily_rate = 0.075 / 365 = 0.00020548
prepaid_interest = 0.00020548 × 240,000 × 15 = 739.73
escrow_setup = (375.00 + 75.00) × 3 = 1,350.00
prepaids = 739.73 + 1,350.00 = 2,089.73

cash_to_close = 60,000 + 4,800 + 2,089.73 = 66,889.73
funds_available = 80,000.00
ctc_status = MEETS_REQUIREMENT (surplus $13,110.27)

total_capital_required = 66,889.73 + 25,537.32 = 92,427.05
total_available = 80,000 + 35,000 = 115,000.00 ✓

Stage 13 — Final Result


qualification_status: DSCR_CONDITIONAL
dscr_base_loan: 240,000.00
pi_payment: 1,678.11
pitia: 2,128.11
dscr_ratio: 0.9398
dscr_tier: CONDITIONAL
rent_gap: 128.11 (+6.4% needed)
max_loan_at_1x: 221,677.32
net_monthly_cashflow: -128.11
cash_to_close: 66,889.73
reserves_required: 25,537.32 (12 months — met)

flags: [DSCR_BELOW_1x, DSCR_LENDER_SPECIFIC_APPROVAL, DSCR_RATE_LENDER_SPECIFIC,
        MI_NOT_APPLICABLE_DSCR, DSCR_LENDER_THRESHOLD_VARIES]
human_review_required: true

Example C — DSCR Strong (score 720, 25% down, $600,000, rent $5,100)

Purpose: Demonstrates the STRONG tier (DSCR ≥ 1.25). Best pricing, most lender options, maximum cashflow clarity.

Inputs:


qualifying_credit_score: 720
occupancy_type:          INVESTMENT
purchase_price:          600,000
down_payment_amount:     150,000 (25%)
gross_rent_monthly:      5,100
monthly_tax:             750.00
monthly_insurance:       150.00
hoa_monthly:             0.00
funds_available_for_closing:  175,000.00
funds_available_for_reserves: 75,000.00

Gates 1–4


Gate 1: INVESTMENT ✓
Gate 2: loan 450,000 ≤ 2,000,000 ✓
Gate 3: score 720 ≥ 640 ✓
Gate 4: ltv = 450,000 / 600,000 = 0.7500 = 75.00% ≤ 80% ✓

Stage 7 — Loan and P&I


dscr_base_loan = 600,000 - 150,000 = 450,000.00
dscr_ltv = 450,000 / 600,000 = 0.7500 = 75.00%
dscr_rate = 7.50%
pi_payment = 450,000 × 0.0069921 = 3,146.47
monthly_mi = 0.00

Stage 8 — PITIA


pitia = 3,146.47 + 750.00 + 150.00 + 0.00 = 4,046.47

Stage 9 — DSCR Ratio


dscr_ratio = 5,100 / 4,046.47 = 1.2604

1.00 ≤ 1.2604 < 1.25 → wait...
1.2604 ≥ 1.25 → dscr_tier = STRONG ✓

qualification_path = DSCR_ELIGIBLE_STRONG

Stage 10 — Cashflow Analytics


min_rent_for_dscr_1x   = 4,046.47
min_rent_for_dscr_125x = 4,046.47 × 1.25 = 5,058.09

Current rent ($5,100) exceeds the 1.25x threshold ($5,058.09) by $41.91.
DSCR is STRONG by $41.91/month — narrow margin above the 1.25x tier cutoff.

max_loan_at_dscr_1x:
  (5,100 - 750 - 150 - 0) / 0.0069921 = 4,200 / 0.0069921 = 600,674.03
  max_pp_at_dscr_1x = 600,674.03 / 0.80 = 750,842.54

max_loan_at_dscr_125x:
  (5,100 / 1.25 - 750 - 150 - 0) / 0.0069921 = (4,080 - 900) / 0.0069921 = 3,180 / 0.0069921 = 454,796.05
  max_pp_at_dscr_125x = 454,796.05 / 0.80 = 568,495.06

INSIGHT: Current loan ($450,000) is below max_loan_at_dscr_125x ($454,796.05).
         This confirms the STRONG DSCR tier with this exact rent and property.

net_monthly_cashflow = 5,100 - 4,046.47 = 1,053.53
annualized_cashflow  = 1,053.53 × 12 = 12,642.36
cap_rate_estimate    = (5,100 × 12 × 0.85) / 600,000 = 52,020 / 600,000 = 0.0867 = 8.67%

Stage 11 — Reserves


reserve_months_required = 6 (STRONG tier)
required_reserves = 6 × 4,046.47 = 24,278.82
funds_available_for_reserves = 75,000.00
reserve_status = MEETS_REQUIREMENT (surplus $50,721.18)

Stage 12 — Cash to Close


est_closing_costs = 450,000 × 0.02 = 9,000.00
daily_rate = 0.075 / 365 = 0.00020548
prepaid_interest = 0.00020548 × 450,000 × 15 = 1,386.99
escrow_setup = (750.00 + 150.00) × 3 = 2,700.00
prepaids = 1,386.99 + 2,700.00 = 4,086.99

cash_to_close = 150,000 + 9,000 + 4,086.99 = 163,086.99
funds_available = 175,000.00
ctc_status = MEETS_REQUIREMENT (surplus $11,913.01)

total_capital_required = 163,086.99 + 24,278.82 = 187,365.81
total_available = 175,000 + 75,000 = 250,000.00 ✓

Stage 13 — Final Result


qualification_status: DSCR_ELIGIBLE_STRONG
dscr_base_loan: 450,000.00
dscr_ltv: 75.00%
pi_payment: 3,146.47
pitia: 4,046.47
dscr_ratio: 1.2604
dscr_tier: STRONG
min_rent_1x: 4,046.47
min_rent_125x: 5,058.09
net_monthly_cashflow: 1,053.53
annualized_cashflow: 12,642.36
cap_rate: 8.67%
max_loan_at_1x: 600,674.03
max_loan_at_125x: 454,796.05
cash_to_close: 163,086.99
reserves_required: 24,278.82

flags: [DSCR_RATE_LENDER_SPECIFIC, DSCR_LENDER_THRESHOLD_VARIES, MI_NOT_APPLICABLE_DSCR]
NOTE: Narrow STRONG margin — rent $41.91 above 1.25x threshold.
      If vacancy reduces effective rent below $5,058/month, tier drops to PASS.

FORBIDDEN PATTERNS


FD-01: Applying DTI or GMI to DSCR qualification
  DSCR has NO income verification. No DTI, no front-end ratio, no back-end ratio.
  GMI is irrelevant. Employment status is irrelevant.
  The DSCR ratio IS the qualification test — nothing else.

FD-02: Using net rent or NOI in the DSCR numerator
  DSCR numerator = GROSS monthly rent (not net, not after vacancy, not after expenses).
  dscr_ratio = gross_rent_monthly / pitia
  Using net rent understates DSCR and misrepresents the program.

FD-03: Including MI in DSCR PITIA denominator
  DSCR loans have no PMI, no MIP, no funding fee.
  pitia = P&I + tax + insurance + HOA — nothing else.
  Adding MI to DSCR PITIA overstates denominator and understates DSCR ratio.

FD-04: Applying LLPA rate grid to DSCR loans
  DSCR has no LLPA system. Rate is flat at 7.50% placeholder.
  Never apply the conventional score × LTV LLPA table to DSCR.

FD-05: Allowing primary or second home occupancy for DSCR
  DSCR is INVESTMENT only. No exceptions.
  Applying DSCR to a primary reduces the rigor of income qualification
  and misrepresents the product to the borrower.

FD-06: Using DSCR for borrower income qualification
  DSCR measures property cashflow, not borrower debt capacity.
  Never use DSCR result to infer borrower income or reduce DTI burden.
  A borrower can DSCR-qualify a property and separately fail DTI on another product.

FD-07: Applying conventional rental income treatment (75% rule) inside DSCR
  Conventional uses: net_rental = gross_rent × 0.75, then offsets against obligations.
  DSCR uses: dscr_ratio = gross_rent / pitia — the 75% rule does NOT apply here.
  These are completely different frameworks. Never cross-contaminate.

FD-08: Requiring conforming loan limit compliance for DSCR
  DSCR is non-QM / portfolio. No $806,500 conforming limit.
  DSCR loan size is lender-specific. The $2M advisory threshold is a Gear 1 proxy.

FD-09: Applying gift funds prohibition from investment to DSCR reserves
  DSCR reserves must be borrower's own funds — no gifts for RESERVES.
  However, down payment from gifts on investment/DSCR: flag and advisor review.
  The prohibition is specifically on RESERVE FUNDS, not universally on all funds.

FD-10: Treating DSCR CONDITIONAL as FAIL
  DSCR 0.85–0.99 is CONDITIONAL, not FAIL. Some lenders specifically target this segment.
  Never terminate at CONDITIONAL — emit the conditional result with remediation options.

COMPANION SKILLS

SkillRelationship
Clarity_Engine_Borrower_Profile_SKILL.mdRequired input — provides BorrowerProfile
Clarity_Engine_Program_Router_SKILL.mdRequired input — provides ProgramEvaluationQueue DSCR entry
Clarity_Engine_Math_SKILL.mdReference — PMT factor computation
Clarity_Engine_Constraint_Detection_SKILL.mdReceives DSCRConstraintFlags
Clarity_Engine_Conventional_SKILL.mdSibling skill — conventional investment comparison
Clarity_Engine_Optimization_SKILL.mdDownstream — cashflow analytics feed optimization
Clarity_Engine_Audit_Trace_SKILL.mdDownstream — receives DSCRLineageTrace

Clarity Engine — DSCR Mortgage Skill v1.0 | CONFIDENTIAL — PreFi, Inc. / Purpose Technology, Inc. d/b/a Purlend