Urgent.News

What's breaking now, across thousands of outlets.

Tech

Decoding an Amortization Schedule: How to Audit a Mortgage Calculator's Output Row by Row

Most engineers and analysts treat a mortgage calculator as a black box: enter three numbers, get a monthly payment back, walk away. When something looks wrong on a loan estimate, the instinct is to suspect the bank, the broker, or the tool itself — without a way to verify which one. This article takes the opposite approach. It treats the calculator's full amortization schedule as a dataset you…

An amortization schedule is a detailed list of every payment made throughout the life of a mortgage, broken down into four key components: the payment number, the total monthly payment amount, the portion of that payment that goes toward interest, the portion that reduces the outstanding principal balance, and the remaining balance after the payment is applied. This schedule provides a clear, row-by-row view of how each payment affects the loan, allowing for thorough auditing and verification of the calculation.

To verify the accuracy of a mortgage calculator's output, there are three essential tests that can be performed. The first test checks whether the interest portion of each row matches the product of the previous row's balance and the monthly interest rate, rounded to the same precision used throughout the schedule. This test ensures that interest is being calculated correctly based on the outstanding balance.

The second test verifies that, for each row in a fixed-rate loan, the sum of the principal portion and the interest portion equals the scheduled payment amount, except for the final row, which absorbs any remaining rounding errors. The third test confirms that the closing balance of the final row is exactly zero, indicating that all payments have been accounted for and the loan has been fully paid off.

Any deviation from these tests suggests a potential bug or error in the calculator's implementation.

Mortgages can be structured in several ways, each requiring a different approach to generate an accurate amortization schedule. The most common is the fixed-rate, fully amortizing loan, where the payment amount remains constant throughout the loan term, and the principal balance declines gradually over time. Adjustable-rate mortgages (ARMs) introduce additional complexity, as the interest rate may change after an initial fixed period, necessitating adjustments to the payment amounts and potentially leading to scenarios such as negative amortization if the payment does not cover the new interest.

Interest-only loans, on the other hand, require a different calculation method, as the borrower pays only interest for a specified period before the amortization phase begins. To ensure accuracy, it is crucial to confirm that the tool being used correctly handles these different loan types by accurately interpreting the annual rate, term length, and any extra payments or adjustments.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

The guardrails that matter are code, not prompts

I built an agent that coordinates eldercare for my mother in India, and the interesting part was not the agents. It was the four times I stopped and decided what the system was not allowed to do, and…

  • Framework enforces safeguards to prevent agents from acting beyond limits
  • Deterministic layer and severity dictionary block prompt manipulation
  • Compliance with legal boundaries and tamper-proof record-keeping

Tell Me About You

After sixty-seven published posts here, the comments have become one of the best parts of the work. Some of you have run my code, found things I missed, challenged a claim, or brought me a project of…

  • Author has made over sixty-seven posts on the platform.
  • Engages with readers through comments, distinguishing bots from real people.
  • Invites readers to share projects, interests, and reasons for engaging with the forum.

Native CORS support on GKE Gateway: Offloading cross-origin policy management to infrastructure

Web browsers enforce the Same-Origin Policy by default to protect users from malicious scripts trying to read data across distinct origins.

  • Google introduces native CORS support in GKE Gateway and Inference Gateway load balancers
  • CORS management offloaded to load balancer, terminating OPTIONS preflight requests
  • CORS filter in HTTPRoute configures policies declaratively with allowOrigins and allowCredentials

Retries didn't make GitHub resilient. They DDoS'd it.

A capacity blip at GitHub resulted in an outage that lasted 7 hours and 47 minutes. The infrastructure recovered faster than the clients let it.

  • GitHub suffered a seven-hour outage on August 17, 2026.
  • Istio sidecar proxy reached concurrency limit, leading to traffic overflow.
  • Retries worsened the situation, acting like a self-denial of service attack.

More from Sunday 30 August →