Qualified Mortgages (QM)

A Qualified Mortgage (QM) is a mortgage loan that meets specific federal standards designed to ensure the borrower has the ability to repay it. To assist lenders in determining whether or not a loan can be assessed as a qualified mortgage, the Qualified Mortgage module was created. For detailed legal information on qualifed mortgages, refer to Section §1026.43(e).

The use of the QM module requires the successful completion of the High Cost Mortgage module. The Hcm response contains common and critical data to assess QM status.

The federally defined data which changes annually are stored in the qm.ini. This file needs to be located in the same directory as the hcm.ini file.

Federally defined data that remains constant are hard-coded in the Qm Module.

Sample Request

Qualified mortgage request data is arranged in the following criteria:

  • Qualified Mortgage type - General or Small Creditor qualified mortgages are considered.

  • Loan Features - Various loan properties exclude a loan from being a qualified mortgage.

  • Loan Data - Relevant loan data is collected to make the qualified mortgage assessment.

  • HCM Data - Targeted results from a High Cost Mortgage module assessment are loaded.

  • Small Creditor Balloon Data - Additional features may exclude a balloon loan from a small creditor from being a Qualified Mortgage.

{
  "Module" : "Qm",
  "Data" : {
    "QmType" : "SmallCreditor",
    "Lien" : {
      "LienType" : "first",
      "IsManufactured" : true
    },
    "LoanFeatures" : {
      "HasBalloon" : true,
      "HasDeferredPrincipal" : false,
      "HasNegativeAm" : false
    },
    "LoanData" : {
      "Apr" : "12.501",
      "LoanAmount" : "9000.00",
      "LockInYear" : "2014",
      "TermInYears" : "10.0"
    },
    "HcmResults" : {
      "Apor" : "6.000",
      "TotalLoanAmount" : "90000.00",
      "TotalPointsFees" : "3000.00"
    },
    "SmallCreditorBalloon" : {
      "HasRateIncrease" : false,
      "AmortTermInYears" : "30.0"
    }
  }
}

Sample Response

Following the request, the response payload will assess whether or not the loan has passed the Qualified Mortgage test, which is divided into several parts:

  • Description - Assessment of the xml data that was passed in the request.

  • IsQm - The data of the IsQm object answers the question of whether or not the loan passed the tests along with several triggers which, if true, indicate which test failed. The data below gives more detail on the nature of the failure causing disqualification.

  • AprTrigger - The Apr less Apor spread is compared to the spread cap (threshold) to justify the assessment of pass/fail as true/false.

  • FeaturesTrigger - Which feature(s), if any, triggered a failure.

  • PointsFeesTrigger - Compares the Total Points and Fees collected from the Hcm calculation with the maximum allowed to be a Qualified mortgage.

  • SmallCreditorBalloonTrigger - The trigger that could cause a Small Creditor Balloon loan to fail the QM test are listed as fields attributes of this empty object.

{
  "Result" : 200,
  "Module" : "Qm",
  "Data" : {
    "Errors" : [
    ],
    "Warnings" : [
    ],
    "IsQm" : true,
    "Triggers" : {
      "Apr" : false,
      "Features" : false,
      "PointsFees" : false,
      "SmallCreditorBalloon" : false
    },
    "AprTrigger" : {
      "Spread" : "6.501",
      "SpreadCap" : "6.500",
      "Enforced" : false
    },
    "FeaturesTrigger" : {
      "Balloon" : true,
      "BalloonEnforced" : false,
      "DeferredPrincipal" : false,
      "LoanTermTooLong" : false,
      "NegativeAm" : false
    },
    "PointsFeesTrigger" : {
      "TotalPointsFees" : "3000.00",
      "MaxPointsFees" : "7200.00"
    },
    "SmallCreditorBalloonTrigger" : {
      "AmortTermTooLong" : false,
      "HasRateIncrease" : false,
      "LoanTermTooShort" : false
    }
  }
}