Loan payment
POST /api/loan-paymentCompute the monthly (or per-period) payment on a fully-amortizing loan: mortgage, auto, student loan, business loan. Returns the periodic payment, total paid over the term, and total interest. Matches Excel's PMT(rate, nper, -principal). Use this when you just need the payment number, not the full per-period schedule (see amortization).
Input
| Field | Type | Description |
|---|---|---|
principal * | number | Loan principal (positive) |
annualRate * | number | Annual interest rate as decimal (0.06 = 6%) |
termYears * | number | Loan term in years |
paymentsPerYear | number | Payments per year (12 = monthly, 26 = bi-weekly, 52 = weekly). Default 12. |
Example output
{
"payment": 1199.1,
"totalPaid": 431676.38,
"totalInterest": 231676.38,
"periods": 360,
"periodicRate": 0.005
}
Try it - see the 402 challenge (free)
curl -i -X POST https://agent402.tools/api/loan-payment \
-H "Content-Type: application/json" \
-d '{"principal":200000,"annualRate":0.06,"termYears":30}'
The response is HTTP 402 Payment Required with exact payment requirements. Any x402 v2 client pays automatically and retries:
Paid call (JavaScript agent)
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";
const client = new x402Client();
registerExactEvmScheme(client, { signer: privateKeyToAccount(KEY) });
const payFetch = wrapFetchWithPayment(fetch, client);
const res = await payFetch("https://agent402.tools/api/loan-payment", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
"principal": 200000,
"annualRate": 0.06,
"termYears": 30
}),
});
No wallet? Pay with compute
This is a pure-CPU tool, so an agent without a wallet can pay with proof-of-work instead of USDC: fetch a challenge, solve the sha256 puzzle (16 leading zero bits - a fraction of a second of CPU, no money, no AI tokens), and resend with the X-Pow-Solution header.
import { createHash } from "node:crypto";
const lz = (b) => { let t = 0; for (const x of b) { if (!x) { t += 8; continue; } t += Math.clz32(x) - 24; break; } return t; };
const c = await (await fetch("https://agent402.tools/api/pow/challenge?slug=loan-payment")).json();
let n = 0;
while (lz(createHash("sha256").update(c.challenge + ":" + n).digest()) < c.difficulty) n++;
await fetch("https://agent402.tools/api/loan-payment", { method: "POST", headers: { "X-Pow-Solution": c.token + ":" + n, "Content-Type": "application/json" }, body: JSON.stringify({"principal":200000,"annualRate":0.06,"termYears":30}) });
Part of these workflows
This tool is one step in 5 curated multi-tool workflows - agents can fetch the whole sequence as an MCP prompt or call https://agent402.tools/api/skill-packs/{slug}/prompt.
- Loan comparison - Compare two or more loan offers - different rates, terms, fees, prepayment structures - on the metrics that actually matter (monthly payment, total interest, year-1 equity build, NPV at your discount rate, effective rate). Apples-to-apples math without opening a spreadsheet.
- Investment decision - Should we do this project? Run a capital allocation decision (equipment, expansion, acquisition, build-vs-buy) through the textbook CFO workflow: NPV at your hurdle rate, IRR vs. cost of capital, opportunity cost against a passive benchmark, and levered cashflow analysis if the project is debt-financed. Deterministic answers, not a gut call.
- Retirement planning - Will my retirement plan actually work? Project the accumulation phase forward with compound interest, compute the target nest egg from your expected spending, then model the drawdown phase using the same PMT formula a mortgage uses - your retirement is mathematically a loan you're paying yourself. Deterministic numbers, no glossy advisor PowerPoint.
- Savings goal - How much do I need to save each month to hit $X in N years? Pin down the required contribution with a clever PV-discount trick: discount the target back to today, then call loan-payment with the discounted target as principal - the 'payment' the tool returns IS your required monthly savings. Same PMT formula a mortgage uses; different decision.
- Financial calculators - Compound interest, amortization schedule, and loan payment in one call - the three financial calculations agents need most.
Related tools
US gov dataset search
GET /api/gov-dataSearch 300,000+ US government datasets on catalog.data.gov (CKAN): titles, publishing org, formats, and direct resource …
US weather alerts
GET /api/weather-alertsActive National Weather Service alerts for a US state as clean JSON: event, severity, headline, affected areas, onset/ex…
Recent earthquakes (USGS)
GET /api/earthquakesReal-time USGS earthquake feed: magnitude, place, time, depth, coordinates. Live government data, no key. ?minMag=4.5&pe…