Equal Payment Loans

Equal payment loans are the most common type of loan calculated, and are usually the main focus of a lending institution. The four basic variables involved in an equal payment loan are: proceeds, rate, term and payment.

Most of the time, a user will want to specify the proceeds, rate and term, and then have the SCE compute the resulting payment. However, there are times when a specific payment is desired and the user may wish to compute either the proceeds or term. The SCE supports these rollback calculations, and each is documented in this chapter.

Sample Request

The following example is a request for an equal payment loan with proceeds of $10,000, interest will accrue at a 4.5% rate using an actual day / 365 U. S. Rule accrual method (accrual code 320), with a financed and APR affecting document preparation fee of $25 included. There will be 12 monthly equal principal and interest payments.

{
  "Module" : "EqualPmt",
  "Data" : {
    "LoanDate" : "2022-08-22",
    "PmtDate" : "2022-10-01",
    "IntRate" : "4.500",
    "Proceeds" : "10000.00",
    "Term" : "12",
    "Fees" : [
      {
        "Name" : "Doc Prep Fee",
        "AddToFinChg" : true,
        "AddToPrin" : true,
        "CalcType" : "Dollar",
        "Entry" : "25.00"
      }
    ],
    "Settings" : {
      "AccrualCode" : "320"
    }
  }
}

Note that in the above request, the Payment field is not specified. This instructs the SCE to compute the payment given the IntRate, Proceeds, and Term. The following loan is identical to the one above, except that we are specifying a desired payment (Payment) and computing the proceeds (note that the Proceeds) field is omitted:

{
  "Module" : "EqualPmt",
  "Data" : {
    "LoanDate" : "2022-08-22",
    "PmtDate" : "2022-10-01",
    "IntRate" : "4.500",
    "Term" : "12",
    "Payment" : "856.93",
    "Fees" : [
      {
        "Name" : "Doc Prep Fee",
        "AddToFinChg" : true,
        "AddToPrin" : true,
        "CalcType" : "Dollar",
        "Entry" : "25.00"
      }
    ],
    "Settings" : {
      "AccrualCode" : "320"
    }
  }
}

Finally, to compute the Term for a given Proceeds, Rate, and Payment we would use a request similar to the following:

{
  "Module" : "EqualPmt",
  "Data" : {
    "LoanDate" : "2022-08-22",
    "PmtDate" : "2022-10-01",
    "IntRate" : "4.500",
    "Proceeds" : "10000.00",
    "Payment" : "856.93",
    "Fees" : [
      {
        "Name" : "Doc Prep Fee",
        "AddToFinChg" : true,
        "AddToPrin" : true,
        "CalcType" : "Dollar",
        "Entry" : "25.00"
      }
    ],
    "Settings" : {
      "AccrualCode" : "320"
    }
  }
}

Sample Response

The following example is the response returned from the SCE for the first request provided above.

{
  "Result" : 200,
  "Module" : "EqualPmt",
  "Data" : {
    "Errors" : [
    ],
    "Warnings" : [
    ],
    "Results" : {
      "Payment" : "856.92"
    },
    "FedBox" : {
      "AmtFin" : "10000.00",
      "FinChg" : "283.04",
      "TotPmts" : "10283.04",
      "APR" : {
        "Value" : "4.929",
        "Type" : "Actuarial"
      }
    },
    "Moneys" : {
      "Principal" : "10025.00",
      "Interest" : "258.04",
      "FinFees" : "25.00",
      "FinChgFees" : "25.00",
      "Fees" : [
        {
          "Name" : "Doc Prep Fee",
          "Fee" : "25.00"
        }
      ]
    },
    "Accrual" : {
      "Method" : "Actual/365 US Rule",
      "Days1Pmt" : "40",
      "DayCount" : "Actual",
      "Maturity" : "2023-09-01"
    },
    "PmtStreams" : [
      {
        "Term" : "12",
        "Pmt" : "856.92",
        "Rate" : "4.500",
        "Begin" : "2022-10-01"
      }
    ],
    "AmTable" : {
      "GrandTotals" : {
        "PmtTot" : "10283.04",
        "IntTot" : "258.07",
        "PrinTot" : "10024.97"
      },
      "SubTotals" : [
        {
          "Year" : "2022",
          "Start" : "1",
          "Events" : "3",
          "PmtSub" : "2570.76",
          "IntSub" : "115.72",
          "PrinSub" : "2455.04"
        },
        {
          "Year" : "2023",
          "Start" : "4",
          "Events" : "9",
          "PmtSub" : "7712.28",
          "IntSub" : "142.35",
          "PrinSub" : "7569.93"
        }
      ],
      "AmLines" : [
        {
          "Idx" : "1",
          "Date" : "2022-10-01",
          "BegBal" : "10025.00",
          "Pmt" : "856.92",
          "Int" : "49.44",
          "Prin" : "807.48",
          "EndBal" : "9217.52"
        },
        ...,
        {
          "Idx" : "12",
          "Date" : "2023-09-01",
          "BegBal" : "853.69",
          "Pmt" : "856.92",
          "Int" : "3.26",
          "Prin" : "853.66",
          "EndBal" : "0.03"
        }
      ]
    }
  }
}