Loan Amortization

Generates a full amortisation schedule with per-period principal, interest and balance, supporting extra payments and several compounding conventions.

POST /v1/business/loan-amortization $0.01 per call

Specification

Endpoint
POST /v1/business/loan-amortization
Price
$0.01 per call · tier standard_data
Payment
x402 on X Layer (chain 196) · settled in USDG or USDT0 · scheme exact
Data source
Deterministic decimal arithmetic on caller-supplied input
Timeout
15 seconds
Max request
256 KB
Version
1.0.0

Calling it

The first call returns a 402 with the payment challenge. Retry with a signed authorisation in the X-PAYMENT header — see the payment guide for the exact shape.

curl -i -X POST "https://api.dana-edu.pp.ua/v1/business/loan-amortization" \
  -H "content-type: application/json" \
  -d '{ ... }'

Response

Real output, captured by running this endpoint at build time — not written by hand. Volatile fields such as timestamps are elided. Captured 2026-07-30.

{
  "payment_per_period": "2013.98",
  "period_count": 240,
  "payments_per_year": 12,
  "periodic_rate_percent": "0.625000",
  "compounding": "periodic",
  "totals": {
    "total_paid": "483356.93",
    "total_interest": "233356.93",
    "total_principal": "250000.00",
    "interest_as_multiple_of_principal": "0.933"
  },
  "payoff": {
    "periods_used": 241,
    "periods_scheduled": 240,
    "months_saved": 0
  },
  "schedule_row_count": 241,
  "schedule_truncated": false,
  "schedule": [
    {
      "period": 1,
      "payment": "2013.98",
      "interest": "1562.50",
      "principal": "451.48",
      "extra_principal": "0.00",
      "remaining_balance": "249548.52"
    },
    {
      "period": 2,
      "payment": "2013.98",
      "interest": "1559.68",
      "principal": "454.30",
      "extra_principal": "0.00",
      "remaining_balance": "249094.22"
    },
    {
      "period": 3,
      "payment": "2013.98",
      "interest": "1556.84",
      "principal": "457.14",
      "extra_principal": "0.00",
      "remaining_balance": "248637.08"
    },
    {
      "period": 4,
      "payment": "2013.98",
      "interest": "1553.98",
      "principal": "460.00",
      "extra_principal": "0.00",
      "remaining_balance": "248177.08"
    },
    {
      "period": 5,
      "payment": "2013.98",
      "interest": "1551.11",
      "principal": "462.87",
      "extra_principal": "0.00",
      "remaining_balance": "247714.21"
    },
  … truncated for display

Trimmed for display. The full body is returned by the endpoint and described by its schema.

Every response is wrapped in the same envelope: data plus warnings, sources, confidence, informational_only and a measured processing_ms. See the envelope reference.

Related endpoints