← Back to Interaction Rule Set

CE-B03: VA Module PRD

CONFIDENTIAL. PreFi, Inc. / Purpose Technology, Inc. d/b/a Purlend.

Table of ContentsSECTION 1: PURPOSE, SCOPE, AND SOURCE HIERARCHYSECTION 2: PROGRAM ARCHITECTURE — THE 7 DECISION OBJECTSSECTION 3: DECISION OBJECT 1 — ELIGIBILITY + COESECTION 4: DECISION OBJECT 2 — ENTITLEMENTSECTION 5: DECISION OBJECT 3 — LOAN PURPOSE ROUTERSECTION 6: DECISION OBJECT 4 — RESIDUAL INCOME ENGINESTEP 1: Maintenance & Utilities Allowance Source: SRC-VA-CH4STEP 2: Monthly Shelter ExpenseSTEP 3: DTI Ratio [GROSS income in denominator]STEP 4: Actual Residual Income [NET income — no gross-up]STEP 5: Required Residual Income [lookup table]STEP 6: Pass / Fail EvaluationSECTION 7: DECISION OBJECT 5 — FUNDING FEE CALCULATORSECTION 8: DECISION OBJECT 6 — CLOSING COST VALIDATORSECTION 9: DECISION OBJECT 7 — INCOME HANDLERSECTION 10: TEST CASES — 10 VERIFIED SCENARIOSSECTION 11: IMPLEMENTATION GUARDRAILS AND FAILURE MODES

CLARITY ENGINE

VA LOAN MODULE

Product Requirements Document + Engineering Implementation Guide

CONFIDENTIAL — PreFi, Inc. / Purpose Technology, Inc. d/b/a Purlend Version 1.0 | March 2026 | Gear 1 Sprint

Document Clarity Engine VA Module PRD v1.0 Prepared For BIX Technology Corp — Pedro, Eduardo, Helio Authorized By David Kawata, CEO & Founder — Purlend Source Workbook VA_Rules_Workbook_10-10.xlsx (verified March 2026) Primary Authority VA Pamphlet 26-7, Chapter 4 Credit Underwriting Scope Base VA underwriting rules — does not replace AUS, lender overlays, or COE workflow

SECTION 1: PURPOSE, SCOPE, AND SOURCE HIERARCHY

1.1 Purpose

This document is the engineering implementation guide for the VA Loan Module of the Clarity Engine. It defines every rule, formula, lookup table, field, and test case required for BIX to implement VA underwriting logic correctly — without mortgage domain expertise in the room. This document is the single source of truth for base VA rules in Gear 1. Every number, every rule, and every table has been verified against the source workbook and official VA guidance.

1.2 What This Document Covers

1.3 What This Document Does NOT Cover

1.4 Source Hierarchy — Non-Negotiable

Tier Source Purpose in This Module Workbook ID 1 VA.gov Eligibility Page COE, service eligibility, occupancy, income/credit requirements

SRC-VA-ELIG

1 VA Chapter 4 Credit Underwriting Residual income tables, DTI benchmark, 120% rule, net income treatment

SRC-VA-CH4

1 VA Funding Fee & Closing Costs Page Fee tables (eff. Apr 7 2023), financing rules, seller concession cap

SRC-VA-FEE

1 VA Loan Limits Page Full vs. partial entitlement, loan limit interaction

SRC-VA-LIMITS

1 VA Cash-Out Refinance Page Cash-out rules, occupancy, Type I vs Type II distinction

SRC-VA-CASHOUT

1 VA IRRRL Page IRRRL rules — VA-to-VA, no cash proceeds, 0.50% fee

SRC-VA-IRRRL

2 Ginnie Mae MBS Guide SECURITIZATION ONLY — pooling, issuance, capital markets. NOT borrower underwriting.

SRC-GNMA-MBS

3 Lender Overlays Separate overlay layer. Never mixed into base VA rules. Overlay Registry

CRITICAL GUARDRAIL — GINNIE MAE SEPARATION

Ginnie Mae does NOT determine borrower eligibility. It does not set DTI limits. It does not govern residual income. Ginnie Mae guarantees MBS backed by VA-guaranteed loans — that is its entire role. Any VA underwriting rule attributed to Ginnie Mae is an implementation error that must be corrected.

SECTION 2: PROGRAM ARCHITECTURE — THE 7 DECISION OBJECTS

2.1 Program Identity

Attribute Value program_family VA secondary_market_family GINNIE_MAE — execution only, separate module underwriting_authority VA Pamphlet 26-7 / VA.gov official guidance primary_affordability_test RESIDUAL INCOME — not DTI. DTI 41% is a benchmark, not a hard stop. down_payment $0 for full entitlement / calculated for partial entitlement mortgage_insurance NONE — replaced by VA Funding Fee (one-time, can be financed) occupancy_requirement Primary residence for purchase and cash-out. Special prior-occupancy rule for IRRRL.

2.2 The 7 Decision Objects — Execution Sequence

# Decision Object Function Section 1 Eligibility + COE Validates service eligibility, COE status, occupancy, discharge type. HARD GATE. Section 3 2 Entitlement Full vs. partial entitlement — computes required down payment if partial. Section 4 3 Loan Purpose Router Routes to correct rule tree: Purchase / IRRRL / Cash-Out Type I / Cash-Out Type II. Section 5 4 Residual Income Engine Core qualification. Shelter expense, actual residual, required residual, DTI, 120% rule. Section 6 5 Funding Fee Calculator Exemption check, purpose/use/tier lookup, fee amount, total loan with financed fee. Section 7 6 Closing Cost Validator Financing limit (funding fee only), seller concession 4% cap distinction. Section 8 7 Income Handler Tax-free gross-up logic — applies to DTI only, NOT to residual income. Section 9

Execution rule: Objects execute in sequence. A Hard Gate failure stops all downstream processing. IRRRL bypasses Objects 4 and 7 in most cases.

SECTION 3: DECISION OBJECT 1 — ELIGIBILITY + COE

3.1 Purpose

Validates legal eligibility for VA loan benefits before any underwriting math runs. Hard gate — if any rule fails, the system stops. No qualification output is produced.

3.2 Required Fields

Field Type Required Allowed Values Source coe_status enum Yes obtained | pending | not_applied

SRC-VA-COE

service_eligibility_status enum Yes eligible | ineligible | pending

SRC-VA-ELIG

surviving_spouse_flag boolean Yes true | false

SRC-VA-ELIG

occupancy_intent enum Yes primary_residence | second_home | investment

SRC-VA-ELIG

discharge_type enum Yes honorable | general | other_than_honorable

SRC-VA-ELIG

va_loan_purpose enum Yes purchase | irrrl | cash_out_type1 | cash_out_type2

SRC-VA-CASHOUT

3.3 Rule Set

VA_ELIG_001 [COE Hard Gate] Source: SRC-VA-COE IF coe_status != obtained THEN recommendation_status = conditional_pending_coe severity = HARD_GATE DO NOT advance to residual income or funding fee calculation

VA_ELIG_002 [Service Eligibility] Source: SRC-VA-ELIG IF service_eligibility_status != eligible AND surviving_spouse_flag = false THEN program_status = ineligible severity = HARD_GATE

VA_ELIG_003 [Purchase Occupancy] Source: SRC-VA-ELIG IF va_loan_purpose = purchase AND occupancy_intent != primary_residence THEN program_status = ineligible severity = HARD_GATE

VA_ELIG_004 [Cash-Out Occupancy] Source: SRC-VA-CASHOUT IF va_loan_purpose IN (cash_out_type1, cash_out_type2) AND occupancy_intent != primary_residence THEN program_status = ineligible severity = HARD_GATE

VA_ELIG_005 [Discharge Review Flag] Source: SRC-VA-ELIG IF discharge_type = other_than_honorable THEN program_status = flag_for_human_review note = 'VA has limited exceptions — human review required' severity = REVIEW_REQUIRED

IRRRL OCCUPANCY EXCEPTION

IRRRL uses prior occupancy certification — the borrower certifies they previously lived in the home. VA_ELIG_003 (current primary residence) must NOT be applied to IRRRL transactions. These require different occupancy handling in the Loan Purpose Router (Object 3). Source: SRC-VA-IRRRL.

SECTION 4: DECISION OBJECT 2 — ENTITLEMENT

4.1 Purpose

Determines full vs. partial entitlement. Full entitlement: no loan limit, no down payment required. Partial entitlement: down payment required if loan exceeds available guaranty.

4.2 Required Fields

Field Type Required Description full_entitlement_flag boolean Yes True = full entitlement. No loan limit cap. No down payment required. partial_entitlement_flag boolean Yes True = reduced entitlement. Down payment may be required. remaining_entitlement_amount decimal If partial Dollar amount from COE document county_loan_limit decimal If partial FHFA table by county — required for partial entitlement math only base_loan_amount decimal Yes Loan amount before funding fee addition required_down_payment_amount decimal Derived OUTPUT: $0 for full entitlement. Calculated for partial entitlement.

4.3 Rule Set

VA_ENT_001 [Full Entitlement] Source: SRC-VA-LIMITS IF full_entitlement_flag = true THEN county_loan_limit_cap_applies = false required_down_payment_amount = 0

       // No ceiling on loan amount for no-down-payment eligibility

VA_ENT_002  [Partial Entitlement]                    Source: SRC-VA-LIMITS
IF partial_entitlement_flag = true
  THEN guaranty_available = remaining_entitlement_amount * 4
       IF base_loan_amount > guaranty_available
         THEN required_down_payment_amount =
              (base_loan_amount - guaranty_available) * 0.25
       ELSE
         required_down_payment_amount = 0

4.4  Worked Examples
Scenario
Loan Amount
Guaranty Available
Down Payment Required
Full entitlement — any loan amount
$600,000
Unlimited
$0
Partial — $180K remaining entitlement — $550K loan
$550,000
$720,000
$0 (loan < guaranty)
Partial — $180K remaining entitlement — $800K loan
$800,000
$720,000
$20,000
Calculation for $800K partial: Gap = ($800K − $720K) = $80K. Down payment = $80K × 25% = $20,000.

SECTION 5: DECISION OBJECT 3 — LOAN PURPOSE ROUTER

5.1 Purpose

Routes the transaction to the correct rule tree. Each loan purpose has incompatible rules. Do NOT share one rules tree across purchase, IRRRL, and cash-out. This is the most common VA implementation failure.

5.2 Purpose Branches

va_loan_purpose Rule Tree Key Constraints — Unique to This Branch purchase

PURCHASE_RULES

Full underwriting. Residual income required. Appraisal/NOV required. Primary occupancy required. Funding fee by use count + down payment tier. irrrl

IRRRL_RULES

Must refinance existing VA-guaranteed loan. No cash out allowed. Income/credit/appraisal not required in standard cases. Rate must decrease OR ARM-to-fixed. Occupancy: prior occupancy certification only. Fee: 0.50% flat, no tiers. cash_out_type1

CASHOUT_T1_RULES

Existing VA loan. Loan amount must not exceed payoff balance (no net cash). Full underwriting. Residual income required. Appraisal required. Borrower must currently occupy. Fee: purchase table. cash_out_type2

CASHOUT_T2_RULES

Any loan type to VA. Borrower may receive cash above closing costs. Full underwriting. Residual income required. Appraisal required. Borrower must currently occupy. Fee: purchase table.

5.3 Rule Set

VA_PURPOSE_001 [IRRRL: No Cash Out] Source: SRC-VA-IRRRL IF va_loan_purpose = irrrl AND cash_out_requested > 0 THEN program_status = ineligible severity = HARD_GATE

VA_PURPOSE_002 [IRRRL: VA-to-VA Only] Source: SRC-VA-IRRRL IF va_loan_purpose = irrrl AND existing_loan_family != VA THEN program_status = ineligible severity = HARD_GATE

VA_PURPOSE_003 [IRRRL: Bypass Full Underwriting] Source: SRC-VA-IRRRL IF va_loan_purpose = irrrl THEN skip_residual_income_engine = true skip_income_verification = true skip_appraisal = true occupancy_check_type = PRIOR_OCCUPANCY_CERT

VA_PURPOSE_004 [Cash-Out: Current Occupancy] Source: SRC-VA-CASHOUT IF va_loan_purpose IN (cash_out_type1, cash_out_type2) THEN require_current_primary_occupancy = true

SECTION 6: DECISION OBJECT 4 — RESIDUAL INCOME ENGINE

6.1 The Most Important Design Rule in This Module

TWO INCOME VARIABLES — NOT ONE

VA uses GROSS monthly income for the DTI denominator. VA uses NET effective income for residual income calculation. These produce different numbers from the same borrower. If the engine stores one income variable and uses it for both calculations, the residual income output will be wrong for virtually every borrower. This is the #1 VA implementation error.

6.2 Required Fields

Field Type Status Description gross_monthly_income decimal Required Used as DTI denominator. Tax-free gross-up applies here (Object 7). net_effective_income decimal Required After taxes/deductions. Used in residual income formula ONLY. No gross-up. monthly_debt_obligations decimal Required Total recurring monthly debts in loan analysis (same liabilities as DTI) principal_and_interest decimal Required Monthly P&I on subject loan monthly_property_tax decimal Required Monthly property tax escrow monthly_hazard_insurance decimal Required Monthly hazard/homeowners insurance hoa_monthly decimal Required HOA dues if applicable, $0 if none property_sqft integer Required Living area sq ft — used to calculate maintenance_utilities_allowance maintenance_utilities_allowance decimal Derived = property_sqft x $0.14 (VA standard rate per sq ft, Source: SRC-VA-CH4) monthly_shelter_expense decimal Derived = P&I + Tax + Insurance + HOA + maintenance_utilities_allowance dti_ratio decimal Derived = (monthly_shelter_expense + monthly_debt_obligations) / gross_monthly_income family_size_for_residual_income integer Required Household size including all dependents (1–5+) residual_income_region enum Required Northeast | Midwest | South | West required_residual_income decimal Derived SUMIFS lookup from official VA table by bucket, family size, region actual_residual_income decimal Derived = net_effective_income - monthly_shelter_expense - monthly_debt_obligations residual_income_pass_flag boolean Derived True if actual >= required (or 120% threshold when DTI > 41%)

6.3 Calculation Sequence — 6 Steps in Exact Order

STEP 1: Maintenance & Utilities Allowance Source: SRC-VA-CH4

maintenance_utilities_allowance = property_sqft * 0.14

STEP 2: Monthly Shelter Expense

monthly_shelter_expense = principal_and_interest + monthly_property_tax + monthly_hazard_insurance + hoa_monthly + maintenance_utilities_allowance

STEP 3: DTI Ratio [GROSS income in denominator]

dti_ratio = (monthly_shelter_expense + monthly_debt_obligations) / gross_monthly_income dti_over_41_flag = (dti_ratio > 0.41)

STEP 4: Actual Residual Income [NET income — no gross-up]

actual_residual_income = net_effective_income

STEP 5: Required Residual Income [lookup table]

bucket = IF base_loan_amount >= 80000 THEN '80k+' ELSE 'Under80k' family_cap = MIN(family_size_for_residual_income, 5) required_residual_income = LOOKUP(bucket, family_cap, residual_income_region) IF family_size_for_residual_income > 5: addon_per_person = ADD_ON_TABLE[bucket][residual_income_region] required_residual_income += (family_size_for_residual_income - 5) * addon_per_person

STEP 6: Pass / Fail Evaluation

IF dti_ratio <= 0.41: threshold = required_residual_income

ELSE:

threshold = required_residual_income * 1.20 // 120% rule residual_income_pass_flag = (actual_residual_income >= threshold) IF NOT residual_income_pass_flag: result = HUMAN_REVIEW_REQUIRED (not auto-decline)

    // VA does not use residual income failure as automatic hard stop

6.4  Official Residual Income Tables
Table A: Loans $80,000 and Above  (Source: SRC-VA-CH4)
Family
Northeast
Midwest
South
West
1
$450
$441
$441
$491
2
$755
$738
$738
$823
3
$909
$889
$889
$990
4
$1,025
$1,003
$1,003
$1,117
5
$1,062
$1,039
$1,039
$1,158
+$80 per person over 5
+$80
+$80
+$80
+$80

Table B: Loans Below $80,000  (Source: SRC-VA-CH4)
Family
Northeast
Midwest
South
West
1
$390
$382
$382
$425
2
$654
$641
$641
$713
3
$788
$772
$772
$859
4
$888
$868
$868
$967
5
$921
$902
$902
$1,004
+$75 per person over 5
+$75
+$75
+$75
+$75

6.5  DTI Rule Set
VA_DTI_001  [DTI at or Below 41%]                    Source: SRC-VA-CH4
IF dti_ratio <= 0.41
  THEN continue_standard_va_evaluation = true
       residual_income_threshold = required_residual_income

VA_DTI_002  [120% Rule — DTI Above 41%]              Source: SRC-VA-CH4
IF dti_ratio > 0.41
  THEN residual_income_threshold = required_residual_income * 1.20
       IF actual_residual_income >= residual_income_threshold
         THEN residual_income_120_pass = true
         ELSE residual_income_120_pass = false
              // DOES NOT auto-decline
              // Routes to: human_review_required = true
              // Compensating factors may apply

6.6  VA Residual Income Rules
VA_RESID_001  [Bucket Selection]                     Source: SRC-VA-CH4
IF base_loan_amount >= 80000: bucket = '80k+'
ELSE: bucket = 'Under80k'

VA_RESID_002  [Pass Test]                            Source: SRC-VA-CH4
IF actual_residual_income >= residual_income_threshold
  THEN residual_income_pass_flag = true
ELSE residual_income_pass_flag = false

SECTION 7: DECISION OBJECT 5 — FUNDING FEE CALCULATOR

7.1 Purpose

Calculates the VA funding fee. Exemption check must run first. If exempt, fee is zero. If not exempt, fee is determined by loan purpose, prior use count, and down payment tier. The fee can be financed into the loan, which changes the total loan amount and must trigger payment recalculation.

7.2 Required Fields

Field Type Status Description funding_fee_exempt_flag boolean Required True if veteran has service-connected disability rating ≥10%, surviving spouse receiving DIC, or active duty Purple Heart (post Jan 1 2020) va_loan_purpose enum Required From Object 3: purchase | irrrl | cash_out_type1 | cash_out_type2 prior_va_use_count integer Required 0 = first use. 1+ = subsequent use. down_payment_percent decimal Purchase Purchase only — used for fee tier lookup. Not applicable to cash-out or IRRRL. base_loan_amount decimal Required Loan amount before funding fee addition funding_fee_percent decimal Derived OUTPUT: Rate from table lookup below funding_fee_amount decimal Derived OUTPUT: = base_loan_amount x funding_fee_percent funding_fee_financed_flag boolean Required True if borrower chooses to roll funding fee into loan total_loan_amount decimal Derived OUTPUT: = base_loan_amount + funding_fee_amount (if financed), else = base_loan_amount

7.3 Funding Fee Matrix — Effective April 7, 2023 (Source: SRC-VA-FEE)

Purpose Group Use Type Down Payment Tier Fee Rate Can Finance? Purchase First use (0) Less than 5% 2.15% Yes Purchase First use (0) 5% to less than 10% 1.50% Yes Purchase First use (0) 10% or more 1.25% Yes Purchase Subsequent use (1+) Less than 5% 3.30% Yes Purchase Subsequent use (1+) 5% to less than 10% 1.50% Yes Purchase Subsequent use (1+) 10% or more 1.25% Yes Cash-Out Refinance First use (0) N/A 2.15% Yes Cash-Out Refinance Subsequent use (1+) N/A 3.30% Yes

IRRRL

Any N/A 0.50% Yes Note: Down payment tiers do NOT apply to cash-out refinance or IRRRL. Cash-out fee is determined by use count only.

7.4 Exemption Conditions (Source: SRC-VA-FEE)

7.5 Rule Set

VA_FF_001 [Exemption Check — Run FIRST] Source: SRC-VA-FEE IF funding_fee_exempt_flag = true THEN funding_fee_percent = 0 funding_fee_amount = 0 STOP — do not evaluate remaining fee rules

VA_FF_002 [IRRRL Fee] Source: SRC-VA-IRRRL IF va_loan_purpose = irrrl THEN funding_fee_percent = 0.005 // 0.50% flat, no tier

VA_FF_003 [Cash-Out Fee] Source: SRC-VA-FEE IF va_loan_purpose IN (cash_out_type1, cash_out_type2) THEN funding_fee_percent = IF prior_va_use_count = 0 THEN 0.0215 ELSE 0.033

VA_FF_004 [Purchase Fee — Tier Lookup] Source: SRC-VA-FEE IF va_loan_purpose = purchase IF prior_va_use_count = 0: // first use IF down_payment_percent < 0.05: fee = 0.0215 IF down_payment_percent < 0.10: fee = 0.015 ELSE: fee = 0.0125 ELSE: // subsequent use IF down_payment_percent < 0.05: fee = 0.033 IF down_payment_percent < 0.10: fee = 0.015 ELSE: fee = 0.0125

VA_FF_005 [Fee Amount] funding_fee_amount = base_loan_amount * funding_fee_percent

VA_FF_006 [Total Loan Amount + Recalculation Trigger] IF funding_fee_financed_flag = true THEN total_loan_amount = base_loan_amount + funding_fee_amount

       // MUST trigger recalculation of:
       //   LTV = total_loan_amount / appraised_value
       //   monthly_PI = PMT(rate/12, term*12, total_loan_amount)
ELSE
  total_loan_amount = base_loan_amount

SECTION 8: DECISION OBJECT 6 — CLOSING COST VALIDATOR

8.1 Purpose

VA has specific rules about what can be financed and what counts toward the seller concession cap. Closing costs and seller concessions are NOT the same thing in VA. This distinction is a common implementation error.

8.2 Rule Set

VA_CTC_001 [Purchase: Financing Limit] Source: SRC-VA-FEE IF va_loan_purpose = purchase THEN only_funding_fee_may_be_financed = true

       // All other fees (origination, title, appraisal, prepaid)
       // must be paid at closing — may NOT be rolled into loan amount

VA_SELL_001  [Seller Concession Cap]                 Source: SRC-VA-FEE
IF seller_concessions > 0.04 * reasonable_value
  THEN fail_seller_concession_cap = true
       // reasonable_value = VA-determined appraised value

CLOSING COSTS vs. SELLER CONCESSIONS — CRITICAL DISTINCTION
The 4% seller concession cap applies ONLY to seller-paid concessions: prepaid taxes/insurance, discount points above 2 points, funding fee if paid by seller. Standard closing costs (origination, title, appraisal) are NOT subject to the 4% cap — they are negotiated separately. A system that applies the 4% cap to ALL closing costs is wrong. Source: SRC-VA-FEE.

SECTION 9: DECISION OBJECT 7 — INCOME HANDLER

9.1 Purpose

Governs income stability standards and the tax-free gross-up rule. The gross-up is the key complexity: it applies to DTI but NOT to residual income. If misapplied, both calculations are wrong.

9.2 Rule Set

VA_INC_001 [Income Stability Standard] Source: SRC-VA-ELIG Only include income streams that are:

// Same general principle as agency — verify source, history, continuance

VA_INC_002  [Tax-Free Income Gross-Up]               Source: SRC-VA-CH4
IF income_stream_type = tax_free
  (examples: disability compensation, Social Security, BAH in some cases)
  THEN:
    gross_up_allowed_for_dti = true
    gross_up_allowed_for_residual_income = FALSE

  // For DTI: use grossed-up amount as income in denominator
  // For residual income: use ACTUAL net amount — no gross-up

  // This means DTI and residual income will produce DIFFERENT numbers
  // from the same income stream. Both must be computed separately.

9.3  Net Effective Income Derivation
The workbook takes net_effective_income as an input. In production, it must be derived as follows:
net_effective_income =
    gross_monthly_income
  - estimated_federal_income_tax
  - estimated_state_income_tax
  - social_security_fica (6.2% on applicable wages)
  - medicare_fica (1.45% on applicable wages)
  - other_mandatory_deductions
Source: VA Chapter 4 — use actual withholding from most recent paystub OR VA's published tax deduction tables if paystub is not available.

SECTION 10: TEST CASES — 10 VERIFIED SCENARIOS

10.1 Summary Table

All 10 test cases computed against workbook rules. DTI highlighted gold when over 41% (120% rule triggered). Final loan amount highlighted green = Pass, red = Ineligible or Fail.

TC Purpose Gross / Net Shelter DTI Req Resid Act Resid 120% Thresh FF% Total Loan

TC01

purchase 1st use / 0%dn $9,000 $7,000 $3,150 42.8% $1,117 $3,150 $1,340 2.1% $408,600

TC02

purchase Subs. / 0%dn $9,000 $7,000 $3,150 42.8% $1,117 $3,150 $1,340 3.3% $413,200

TC03

purchase 1st use / 10.0%dn $8,500 $6,500 $2,720 39.1% $889 $3,180 $889 1.3% $354,375

TC04

cash_out_refinance 1st use / 0%dn $10,000 $7,600 $2,990 41.9% $738 $3,410 $886 2.1% $306,450

TC05

cash_out_refinance Subs. / 0%dn $10,000 $7,600 $2,990 41.9% $738 $3,410 $886 3.3% $309,900

TC06

IRRRL

Subs. / 0%dn $8,000 $6,300 $2,520 37.8% $823 $3,280 $823 0.5% $251,250

TC07

purchase 1st use / 0%dn $9,200 $7,100 $3,290 42.8% $1,117 $3,160 $1,340 0.0% $425,000

TC08

purchase 1st use / 0%dn $7,000 $5,000 $2,860 53.7% $1,003 $1,240 $1,204 2.1% $357,525

TC09

purchase 1st use / 0%dn $7,000 $6,500 $2,860 53.7% $1,003 $2,740 $1,204 2.1% $357,525

TC10

purchase 1st use / 0%dn $8,000 $6,200 $2,590 41.1% $990 $2,910 $1,188 2.1% $331,988

10.2 Detailed Walkthrough — Key Cases

TC01: Purchase, First Use, 0% Down — Standard Path

Input Value Loan Amount $400,000 Gross Monthly Income $9,000 Net Effective Income $7,000 Monthly Debt Obligations $700 Shelter Expense (P&I+Tax+Ins+Maint) $3,150 DTI = (3,150+700)/9,000

42.8% — OVER 41%

Required Residual (Family 4, West, 80k+) $1,117 120% Threshold = $1,117 x 1.20 $1,340 Actual Residual = 7,000-3,150-700 $3,150 $3,150 >= $1,340?

YES — PASS

Funding Fee (1st use, 0% down) 2.15% = $8,600 Total Loan (fee financed) $408,600

TC08 vs TC09: 120% Rule — Fail vs Pass

TC08 and TC09 use the same loan inputs but different net income. This is the most important test case pair in the suite.

Calculation Step TC08 (Lower Net Income) TC09 (Higher Net Income) Gross Monthly Income $7,000 $7,000 Net Effective Income $5,000 $6,500 Monthly Shelter Expense $2,860 $2,860 Monthly Debt Obligations $900 $900 DTI 53.7% — Over 41% 53.7% — Over 41% Required Residual (Family 4, South) $1,003 $1,003 120% Threshold = $1,003 x 1.20 $1,204 $1,204 Actual Residual = Net - Shelter - Debt $5,000-$2,860-$900 = $1,240 $6,500-$2,860-$900 = $2,740 Actual >= 120% Threshold? $1,240 >= $1,204 — PASS $2,740 >= $1,204 — PASS IMPORTANT: TC08 shows the 120% rule working correctly. The workbook Expected_Result column labeled TC08 as 'Fail 120% rule' — this is a labeling error in the workbook. The formula and computed math both produce a PASS. BIX should implement the math as defined above — TC08 is a pass.

TC10: Investment Property — Occupancy Hard Gate

TC10 fails at Object 1 (Eligibility), not at residual income. The borrower's residual income would pass — but occupancy check fires first and stops all downstream processing.

Check Result va_loan_purpose purchase occupancy_intent investment VA_ELIG_003 fires? YES — purchase + non-primary program_status INELIGIBLE — Hard Gate Residual income evaluated? NO — downstream objects do not run

SECTION 11: IMPLEMENTATION GUARDRAILS AND FAILURE MODES

11.1 Critical Implementation Rules

Rule Reason / Consequence of Violation Never apply Fannie Mae underwriting rules to VA loans DTI limits, LTV rules, credit score floors, and income treatment differ fundamentally. Cross-contamination produces wrong qualification results. Residual income is always required for purchase and cash-out VA_DTI_002 does not replace the residual income test. Both must be computed. DTI alone cannot qualify or disqualify a VA loan. DTI is a benchmark, not a hard stop 41% is a threshold that triggers the 120% residual rule, not an automatic decline. A VA borrower with DTI of 55% and strong residual income is not automatically disqualified. Keep Ginnie Mae in a separate module Ginnie governs securitization and delivery. It does not set borrower eligibility, DTI limits, or underwriting standards. Mixing Ginnie and VA rules is a hard architectural error. Two income variables — not one gross_monthly_income feeds DTI. net_effective_income feeds residual income. Same borrower, different numbers. One variable breaks both calculations. Tax-free gross-up: DTI yes / Residual income NO Applying gross-up to residual income inflates the residual income result and misrepresents the borrower's actual financial position. IRRRL is its own rule tree Do not reuse purchase or cash-out logic for IRRRL. IRRRL bypasses residual income, income verification, credit, and appraisal in most cases. Fee is always 0.50% regardless of use count or down payment. Treat lender overlays as a separate layer Do not hardcode lender-specific credit score floors, DTI overlays, or reserve requirements into base VA rules. Both residual income tables must be implemented Loans below $80,000 use a different (lower) table. Using the 80k+ table for all loans produces a higher required residual for small loans. Seller concession cap applies to concessions — not all closing costs Standard closing costs (origination, title, appraisal) are outside the 4% cap. Only seller-paid concessions (prepaid items, buydowns above 2 points, etc.) count toward the cap.

11.2 Nova / Explanation Layer — Required Disclosures

When the Clarity Engine presents VA outcomes to borrowers through the Nova interface, the following rules apply:

11.3 Minimum Build Checklist — Gear 1

Component Section Ref

VA eligibility validator — 5 rules, 6 fields, produces program_status enum Section 3

Entitlement calculator — 2 rules, 7 fields, produces required_down_payment_amount Section 4

Loan purpose router — 4 branches, gates downstream objects (IRRRL bypasses Objects 4, 7) Section 5

Residual income engine — 6 calculation steps, 2 lookup tables (80k+ and Under80k), 4 regions, family sizes 1-5+ Section 6

Funding fee calculator — exemption check first, 3-path lookup (purchase/cash-out/IRRRL), financed fee triggers LTV + payment recalc Section 7

Closing cost validator — 2 rules, closing cost vs. seller concession distinction enforced Section 8

Income handler — tax-free gross-up for DTI only, net_effective_income derivation logic Section 9

Regression test suite — all 10 test cases with computed expected outputs, including TC08 correct pass result Section 10

Ginnie_Execution_Module scaffolded as separate service — does not touch borrower underwriting logic Section 1.4

Overlay layer scaffolded as separate service — no lender overlays in base VA rules Section 11.1

END OF DOCUMENT

Clarity Engine VA Module PRD v1.0 | CONFIDENTIAL | PreFi, Inc. / Purpose Technology, Inc. d/b/a Purlend