{"data":{"id":"us/12-cfr-appendix-m2-to-part-1026","jurisdiction":"us","citation":"12 CFR Appendix M2 to Part 1026","heading":"Appendix M2 to Part 1026—Sample Calculations of Repayment Disclosures","body":"The following is an example of how to calculate the minimum payment repayment estimate, the minimum payment total cost estimate, the estimated monthly payment for repayment in 36 months, the total cost estimate for repayment in 36 months, and the savings estimate for repayment in 36 months using the guidance in appendix M1 to this part where three annual percentage rates apply (where one of the rates is a promotional APR), the total outstanding balance is $1000, and the minimum payment formula is 2 percent of the outstanding balance or $20, whichever is greater. The following calculation is written in SAS code.\ndata one;\n/*\nNote:\npmt01 = estimated monthly payment to repay balance in 36 months sumpmts36 = sum of payments for repayment in 36 months\nmonth = number of months to repay total balance if making only minimum payments\npmt = minimum monthly payment\nfc = monthly finance charge\nsumpmts = sum of payments for minimum payments\n*/\n* inputs;\n* annual percentage rates; apr1 = 0.0; apr2 = 0.17; apr3 = 0.21; * insert in ascending order;\n* outstanding balances; cbal1 = 500; cbal2 = 250; cbal3 = 250;\n* dollar minimum payment; dmin = 20;\n* percent minimum payment; pmin = 0.02; * (0.02 + perrate);\n* promotional rate information;\n* last month for promotional rate; expm = 6; * = 0 if no promotional rate;\n* regular rate; rrate = .17; * = 0 if no promotional rate;\narray apr(3); array perrate(3);\ndays = 365/12; * calculate days in month;\n* calculate estimated monthly payment to pay off balances in 36 months, and total cost of repaying balance in 36 months;\narray xperrate(3);\ndo I = 1 to 3;\nxperrate(I) = (apr(I)/365) * days; * calculate periodic rate;\nend;\nif expmgt 0 then xperrate1a = (expm/36) * xperrate1 + (1-(expm/36)) * (rrate/365) * days; else xperrate1a = xperrate1;\ntbal = cbal1 + cbal2 + cbal3;\nperrate36 = (cbal1 * xperrate1a + cbal2 * xperrate2 + cbal3 * xperrate3)/(cbal1 + cbal2 + cbal3);\n* months to repay; dmonths = 36;\n* initialize counters for sum of payments for repayment in 36 months; Sumpmts36 = 0;\npvaf = (1-(1 + perrate36) ** -dmonths)/perrate36; * calculate present value of annuity factor;\npmt01 = round(tbal/pvaf,0.01); * calculate monthly payment for designated number of months;\nsumpmts36 = pmt01 * 36;\n* calculate time to repay and total cost of making minimum payments each month;\n* initialize counter for months, and sum of payments;\nmonth = 0;\nsumpmts = 0;\ndo I = 1 to 3;\nperrate(I) = (apr(I)/365) * days; * calculate periodic rate;\nend;\nput perrate1 = perrate2 = perrate3 =;\neins:\nmonth = month + 1; * increment month counter;\npmt = round(pmin * tbal,0.01); * calculate payment as percentage of balance;\nif month geexpm and expm ne 0 then perrate1 = (rrate/365) * days;\nif pmtltdmin then pmt = dmin; * set dollar minimum payment;\narray xxxbal(3); array cbal(3);\ndo I = 1 to 3;\nxxxbal(I) = round(cbal(I) * (1 + perrate(I)),0.01);\nend;\nfc = xxxbal1 + xxxbal2 + xxxbal3 − tbal;\nif pmtgt (tbal + fc) then do;\ndo I = 1 to 3;\nif cbal(I) gt 0 then pmt = round(cbal(I) * (1 + perrate(I)),0.01); * set final payment amount;\nend;\nend;\nif pmt le xxxbal1 then do;\ncbal1 = xxxbal1 − pmt;\ncbal2 = xxxbal2;\ncbal3 = xxxbal3;\nend;\nif pmtgt xxxbal1 and xxxbal2 gt 0 and pmt le (xxxbal1 + xxxbal2) then do;\ncbal2 = xxxbal2 − (pmt − xxxbal1);\ncbal1 = 0;\ncbal3 = xxxbal3;\nend;\nif pmtgt xxxbal2 and xxxbal3 gt 0 then do;\ncbal3 = xxxbal3 − (pmt − xxxbal1 − xxxbal2);\ncbal2 = 0;\nend;\nsumpmts = sumpmts + pmt; * increment sum of payments;\ntbal = cbal1 + cbal2 + cbal3; * calculate new total balance;\n* print month, balance, payment amount, and finance charge;\nput month = tbal = cbal1 = cbal2 = cbal3 = pmt = fc =;\nif tbalgt 0 then go to eins; * go to next month if balance is greater than zero;\n* initialize total cost savings;\nsavtot = 0;\nsavtot = round(sumpmts,1)—round (sumpmts36,1);\n* print number of months to repay debt if minimum payments made, final balance (zero), total cost if minimum payments made, estimated monthly payment for repayment in 36 months, total cost for repayment in 36 months, and total savings if repaid in 36 months;\nput title = ‘ ’;\nput title = ‘number of months to repay debt if minimum payment made, final balance, total cost if minimum payments made, estimated monthly payment for repayment in 36 months, total cost for repayment in 36 months, and total savings if repaid in 36 months’;\nput month = tbal = sumpmts = pmt01 = sumpmts36 = savtot =;\nput title = ‘ ’;\nrun;","path":["Title 12—Banks and Banking","CHAPTER X—CONSUMER FINANCIAL PROTECTION BUREAU","PART 1026—TRUTH IN LENDING (REGULATION Z)"],"source_url":"https://www.ecfr.gov/api/versioner/v1/full/2026-08-25/title-12.xml","current_through":"2026-08-25","vintage":"","retrieved_at":"2026-08-27T02:24:16Z","sha256":"20d938e3b06d60fb940811bda5752541295e694d82b0b66c6d4bcd9f67bee2aa","source_id":"us-cfr","stale":true,"prev":"us/12-cfr-appendix-m1-to-part-1026","next":"us/12-cfr-appendix-n-to-part-1026"},"notice":"GroundRules: Original legal text. Not legal advice."}
