Summary: To check a disclosed APR, rebuild it from the amount financed and the payment schedule using the actuarial method in Appendix J to Regulation Z, then compare it with the figure on the disclosure. Regulation Z treats the disclosed rate as accurate if it is within 1/8 of 1 percentage point of the exact rate on a regular transaction, or 1/4 of 1 percentage point on an irregular one. The same file should also tie out: the finance charge must equal the total of payments minus the amount financed, and the disclosed figures must match the loan system.
What APR measures and why high-rate loans magnify small errors
Regulation Z defines the APR as “a measure of the cost of credit, expressed as a yearly rate, that relates the amount and timing of value received by the consumer to the amount and timing of payments made” (12 CFR 1026.22(a)(1)). Appendix J sets out the actuarial method, and section 1026.22(b)(2) allows any computation tool whose rate matches the Appendix J rate within the tolerance.
The APR is not the note rate. A prepaid finance charge, such as an origination fee deducted from the proceeds, reduces the amount financed without reducing the payments, so the APR rises above the contract rate. On a short, high-rate loan a modest fee moves the APR by whole percentage points, as the example below shows. That is why APR errors cluster in small-dollar books: a fee that a system treats as “not a finance charge” shows up as an understated rate on every loan that carries it.
The actuarial method, worked step by step
Appendix J describes the method in one sentence: “at the end of each unit-period (or fractional unit-period) the unpaid balance of the amount financed is increased by the finance charge earned during that period and is decreased by the total payment (if any) made at the end of that period.” The APR is “the nominal annual percentage rate determined by multiplying the unit-period rate by the number of unit-periods in a year.” For monthly payments, the unit-period is a month and there are 12 unit-periods per year.
The recalculation on a fictional loan with round numbers:
Example loan. Principal $3,000. A $100 origination fee is withheld from the proceeds. Twelve monthly payments of $300, the first due one month after consummation.
Step 1. Amount financed. Section 1026.18(b) builds it in three steps: “Determining the principal loan amount or the cash price (subtracting any downpayment)”, “Adding any other amounts that are financed by the creditor and are not part of the finance charge” and “Subtracting any prepaid finance charge”. The fee is a prepaid finance charge, so the amount financed is $3,000 minus $100, or $2,900.
Step 2. Total of payments and finance charge. The total of payments is the sum of the scheduled payments: 12 times $300, or $3,600. The finance charge is $3,600 minus $2,900, or $700. That is the $100 fee plus $600 of interest.
Step 3. Solve for the unit-period rate. Find the monthly rate at which $2,900 equals twelve payments of $300 discounted one month apart. There is no closed form, so iterate. The rate is 3.4941 percent per month.
Step 4. Annualize. Multiply by 12. The APR is 41.93 percent.
Step 5. Compare. If the disclosure says 41.93 percent, or anything from 41.80 to 42.05 percent, it passes. If the lender’s system computed the APR on $3,000 instead of $2,900, the disclosure would read 35.07 percent. That is 6.86 percentage points low and far outside the tolerance.
A short script reproduces the result.
def pv(rate, n, pmt):
return pmt * (1 - (1 + rate) ** -n) / rate
def unit_rate(amount_financed, n, pmt):
lo, hi = 1e-9, 1.0
for _ in range(200):
mid = (lo + hi) / 2
lo, hi = (mid, hi) if pv(mid, n, pmt) > amount_financed else (lo, mid)
return lo
print(round(12 * unit_rate(2900, 12, 300) * 100, 2)) # 41.93
A loan with an odd first period, say 45 days to the first payment, follows the fractional unit-period rules in Appendix J (b)(5), where the leftover days are divided by 30. Recalculate those loans separately rather than forcing them into the simple case.
Tolerances: 1/8 point for regular transactions, 1/4 point for irregular ones
Section 1026.22(a)(2) states the general rule: the APR “shall be considered accurate if it is not more than 1/8 of 1 percentage point above or below” the exact rate. The official interpretation gives the arithmetic: if the exact APR is 10 1/8 percent, “a disclosed annual percentage rate from 10% to 10 1/4%” complies.
Section 1026.22(a)(3) widens the band to 1/4 of 1 percentage point for an irregular transaction, which is “one that includes one or more of the following features: multiple advances, irregular payment periods, or irregular payment amounts (other than an irregular first period or an irregular first or final payment).” Most installment loans are regular transactions and get the 1/8 point band.
Section 1026.22(a)(1) excuses an error that “resulted from a corresponding error in a calculation tool used in good faith by the creditor”, but only if the creditor stops using the tool for disclosures and notifies the Bureau in writing. The commentary adds that this does not cover errors “from incorrect data entry, or from misapplication of the law.” A fee coded to the wrong bucket is a data and policy error, not a tool error.
Three tie-outs every file should pass
Finance charge equals total of payments minus amount financed. Section 1026.18 defines the three figures: the amount financed, “the amount of credit provided to you or on your behalf”; the finance charge, “the dollar amount the credit will cost you”; and the total of payments, “the amount you will have paid when you have made all scheduled payments.” On a standard closed-end installment loan every finance charge is either prepaid, and so deducted from the amount financed, or collected through the payments, so the three figures must reconcile exactly. The finance charge has its own tolerance in 1026.18(d)(2): $5 when the amount financed is $1,000 or less, and $10 when it is more than $1,000. A finance charge off by more than that is a separate finding from the APR.
Recomputed APR matches the disclosed APR within tolerance. Rebuild the rate from the disclosed amount financed and the disclosed payment schedule, not from the note rate. If the recomputed rate falls outside the band, the usual suspects are a prepaid charge left in the amount financed, a first-period calculation the system does not handle, or a payment schedule on the disclosure that differs from the note.
Disclosure matches the agreement and the loan system. The payment count, payment amount, first payment date and fee amounts on the TILA disclosure should match the promissory note and the loan record. This is the tie-out that catches configuration changes: a fee setting that changed for six weeks produces a run of loans whose disclosures no longer agree with the ledger.
How the automated version works
MightyBot is an AI agent platform for lending and finance. For this check, agents read the disclosure, the note and the loan system record for every loan, rebuild the APR with the actuarial method, and test it against rules written in plain English, such as “the disclosed APR must be within 1/8 of 1 percentage point of the recomputed rate on a regular transaction.” Each finding cites the page of the disclosure or the system field behind it, and exceptions are routed to a person for approval.
See compliance monitoring and the policy engine for how the rules are written and run.