Global Loan and Mortgage Calculator API

API ID 12810

A globally usable mortgage and loan calculator supporting multiple currencies. Covers monthly repayments, full amortisation schedules, affordability reverse-calculation, early repayment savings, side-by-side comparison, total cost of ownership, APR, debt-to-income ratio, stamp duty estimates, refinance break-even, balloon payments, interest-only periods, loan consolidation, and biweekly payment options. Pure maths — no external data sources. Pass any currency code (USD, GBP, EUR, ZAR, AUD, etc.) for localised display.

149 ms avg response

API Documentation

Endpoints

Request

Calculates the standard monthly mortgage repayment using the amortisation formula. Supports an optional biweekly payment frequency (26 payments per year). Request Body: - loanAmount (required): Principal loan amount. - termYears (required): Loan term in years. - annualRate (required): Annual interest rate as a percentage (e.g. 6.5 for 6.5%). - paymentFrequency (optional): monthly (default) or biweekly. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25240
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25240/mortgage+repayment
INPUT PARAMETERS

Mortgage Repayment — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"monthlyPayment":1896.2,"loanAmount":300000,"termYears":30,"annualRate":6.5},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Mortgage Repayment — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25240/mortgage+repayment' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"loanAmount": 300000, "termYears": 30, "annualRate": 6.5, "currency": "USD"}'

    
Request

Reverse-calculates the maximum loan amount a borrower can afford given a monthly budget, term, and interest rate. Request Body: - monthlyBudget (required): Maximum monthly payment the borrower can afford. - termYears (required): Loan term in years. - annualRate (required): Annual interest rate as a percentage. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25241
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25241/mortgage+affordability
INPUT PARAMETERS

Mortgage Affordability — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"affordableLoanAmount":316421.64,"monthlyBudget":2000,"termYears":30,"annualRate":6.5},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Mortgage Affordability — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25241/mortgage+affordability' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"monthlyBudget": 2000, "termYears": 30, "annualRate": 6.5, "currency": "USD"}'

    
Request

Returns a full month-by-month amortisation schedule. Each row shows the payment, principal portion, interest portion, and remaining balance. The final month balance closes to exactly zero. Request Body: - loanAmount (required): Principal loan amount. - termYears (required): Loan term in years. - annualRate (required): Annual interest rate as a percentage. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25242
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25242/mortgage+amortisation+schedule
INPUT PARAMETERS

Mortgage Amortisation Schedule — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"monthlyPayment":5869.84,"totalMonths":60,"schedule":[{"month":1,"payment":5869.84,"principal":4244.84,"interest":1625,"balance":295755.16},{"month":2,"payment":5869.84,"principal":4267.84,"interest":1602.01,"balance":291487.32},{"month":3,"payment":5869.84,"principal":4290.95,"interest":1578.89,"balance":287196.36},{"month":4,"payment":5869.84,"principal":4314.2,"interest":1555.65,"balance":282882.17},{"month":5,"payment":5869.84,"principal":4337.57,"interest":1532.28,"balance":278544.6},{"month":6,"payment":5869.84,"principal":4361.06,"interest":1508.78,"balance":274183.54},{"month":7,"payment":5869.84,"principal":4384.68,"interest":1485.16,"balance":269798.85},{"month":8,"payment":5869.84,"principal":4408.43,"interest":1461.41,"balance":265390.42},{"month":9,"payment":5869.84,"principal":4432.31,"interest":1437.53,"balance":260958.11},{"month":10,"payment":5869.84,"principal":4456.32,"interest":1413.52,"balance":256501.79},{"month":11,"payment":5869.84,"principal":4480.46,"interest":1389.38,"balance":252021.33},{"month":12,"payment":5869.84,"principal":4504.73,"interest":1365.12,"balance":247516.6},{"month":13,"payment":5869.84,"principal":4529.13,"interest":1340.71,"balance":242987.47},{"month":14,"payment":5869.84,"principal":4553.66,"interest":1316.18,"balance":238433.81},{"month":15,"payment":5869.84,"principal":4578.33,"interest":1291.52,"balance":233855.48},{"month":16,"payment":5869.84,"principal":4603.13,"interest":1266.72,"balance":229252.35},{"month":17,"payment":5869.84,"principal":4628.06,"interest":1241.78,"balance":224624.29},{"month":18,"payment":5869.84,"principal":4653.13,"interest":1216.71,"balance":219971.16},{"month":19,"payment":5869.84,"principal":4678.33,"interest":1191.51,"balance":215292.83},{"month":20,"payment":5869.84,"principal":4703.67,"interest":1166.17,"balance":210589.15},{"month":21,"payment":5869.84,"principal":4729.15,"interest":1140.69,"balance":205860},{"month":22,"payment":5869.84,"principal":4754.77,"interest":1115.07,"balance":201105.23},{"month":23,"payment":5869.84,"principal":4780.52,"interest":1089.32,"balance":196324.7},{"month":24,"payment":5869.84,"principal":4806.42,"interest":1063.43,"balance":191518.28},{"month":25,"payment":5869.84,"principal":4832.45,"interest":1037.39,"balance":186685.83},{"month":26,"payment":5869.84,"principal":4858.63,"interest":1011.21,"balance":181827.2},{"month":27,"payment":5869.84,"principal":4884.95,"interest":984.9,"balance":176942.25},{"month":28,"payment":5869.84,"principal":4911.41,"interest":958.44,"balance":172030.85},{"month":29,"payment":5869.84,"principal":4938.01,"interest":931.83,"balance":167092.84},{"month":30,"payment":5869.84,"principal":4964.76,"interest":905.09,"balance":162128.08},{"month":31,"payment":5869.84,"principal":4991.65,"interest":878.19,"balance":157136.43},{"month":32,"payment":5869.84,"principal":5018.69,"interest":851.16,"balance":152117.74},{"month":33,"payment":5869.84,"principal":5045.87,"interest":823.97,"balance":147071.87},{"month":34,"payment":5869.84,"principal":5073.21,"interest":796.64,"balance":141998.66},{"month":35,"payment":5869.84,"principal":5100.69,"interest":769.16,"balance":136897.98},{"month":36,"payment":5869.84,"principal":5128.31,"interest":741.53,"balance":131769.66},{"month":37,"payment":5869.84,"principal":5156.09,"interest":713.75,"balance":126613.57},{"month":38,"payment":5869.84,"principal":5184.02,"interest":685.82,"balance":121429.55},{"month":39,"payment":5869.84,"principal":5212.1,"interest":657.74,"balance":116217.45},{"month":40,"payment":5869.84,"principal":5240.33,"interest":629.51,"balance":110977.11},{"month":41,"payment":5869.84,"principal":5268.72,"interest":601.13,"balance":105708.4},{"month":42,"payment":5869.84,"principal":5297.26,"interest":572.59,"balance":100411.14},{"month":43,"payment":5869.84,"principal":5325.95,"interest":543.89,"balance":95085.19},{"month":44,"payment":5869.84,"principal":5354.8,"interest":515.04,"balance":89730.39},{"month":45,"payment":5869.84,"principal":5383.8,"interest":486.04,"balance":84346.58},{"month":46,"payment":5869.84,"principal":5412.97,"interest":456.88,"balance":78933.62},{"month":47,"payment":5869.84,"principal":5442.29,"interest":427.56,"balance":73491.33},{"month":48,"payment":5869.84,"principal":5471.77,"interest":398.08,"balance":68019.56},{"month":49,"payment":5869.84,"principal":5501.41,"interest":368.44,"balance":62518.16},{"month":50,"payment":5869.84,"principal":5531.2,"interest":338.64,"balance":56986.95},{"month":51,"payment":5869.84,"principal":5561.17,"interest":308.68,"balance":51425.79},{"month":52,"payment":5869.84,"principal":5591.29,"interest":278.56,"balance":45834.5},{"month":53,"payment":5869.84,"principal":5621.57,"interest":248.27,"balance":40212.92},{"month":54,"payment":5869.84,"principal":5652.02,"interest":217.82,"balance":34560.9},{"month":55,"payment":5869.84,"principal":5682.64,"interest":187.2,"balance":28878.26},{"month":56,"payment":5869.84,"principal":5713.42,"interest":156.42,"balance":23164.84},{"month":57,"payment":5869.84,"principal":5744.37,"interest":125.48,"balance":17420.47},{"month":58,"payment":5869.84,"principal":5775.48,"interest":94.36,"balance":11644.99},{"month":59,"payment":5869.84,"principal":5806.77,"interest":63.08,"balance":5838.22},{"month":60,"payment":5869.84,"principal":5838.22,"interest":31.62,"balance":0}]},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Mortgage Amortisation Schedule — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25242/mortgage+amortisation+schedule' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"loanAmount": 300000, "termYears": 5, "annualRate": 6.5, "currency": "USD"}'

    
Request

Simulates the effect of making extra monthly payments on a mortgage. Returns the interest saved and months saved compared to the base repayment plan. Required fields are loanAmount, termYears, annualRate and extraMonthlyPayment. The currency field is optional and defaults to USD.

Endpoint ID: 25243
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25243/mortgage+extra+payment
INPUT PARAMETERS

Mortgage Extra Payment — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"base":{"monthlyPayment":1896.2,"totalInterest":382633.47,"termMonths":360},"withExtra":{"monthlyPayment":2096.2,"totalInterest":279184.67,"termMonths":277},"interestSaved":103448.79,"monthsSaved":83},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Mortgage Extra Payment — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25243/mortgage+extra+payment' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"loanAmount": 300000, "termYears": 30, "annualRate": 6.5, "extraMonthlyPayment": 200, "currency": "USD"}'

    
Request

Compares two mortgage scenarios side by side. Identifies the cheaper option by total cost and returns a trade-off note explaining the difference. Request Body: - scenario1 (required): Object with loanAmount, termYears, annualRate. - scenario2 (required): Object with loanAmount, termYears, annualRate. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25244
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25244/mortgage+comparison
INPUT PARAMETERS

Mortgage Comparison — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"scenario1":{"loanAmount":300000,"termYears":30,"annualRate":6.5,"monthlyPayment":1896.2,"totalPaid":682633.47,"totalInterest":382633.47},"scenario2":{"loanAmount":300000,"termYears":20,"annualRate":6,"monthlyPayment":2149.29,"totalPaid":515830.36,"totalInterest":215830.36},"cheaperOption":"scenario2","tradeOffNote":"scenario2 costs 166803.11 less in total (2149.29/mo vs 1896.2/mo for scenario1)."},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Mortgage Comparison — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25244/mortgage+comparison' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"scenario1": {"loanAmount": 300000, "termYears": 30, "annualRate": 6.5}, "scenario2": {"loanAmount": 300000, "termYears": 20, "annualRate": 6.0}, "currency": "USD"}'

    
Request

Returns the total amount paid and total interest over the full mortgage term. Supports biweekly payment frequency. Request Body: - loanAmount (required): Principal loan amount. - termYears (required): Loan term in years. - annualRate (required): Annual interest rate as a percentage. - paymentFrequency (optional): monthly (default) or biweekly. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25245
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25245/mortgage+total+cost
INPUT PARAMETERS

Mortgage Total Cost — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"monthlyPayment":1896.2,"totalPaid":682633.47,"totalInterest":382633.47,"loanAmount":300000,"termYears":30,"annualRate":6.5},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Mortgage Total Cost — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25245/mortgage+total+cost' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"loanAmount": 300000, "termYears": 30, "annualRate": 6.5, "currency": "USD"}'

    
Request

Single call returning monthly payment, total cost, total interest, and maximum affordable loan amount combined. Ideal for dashboard-style applications that need multiple values in one request. Request Body: - loanAmount (required): Principal loan amount. - termYears (required): Loan term in years. - annualRate (required): Annual interest rate as a percentage. - monthlyBudget (required): Monthly budget used to calculate the affordable loan amount. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25246
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25246/mortgage+summary
INPUT PARAMETERS

Mortgage Summary — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"monthlyPayment":1896.2,"totalPaid":682633.47,"totalInterest":382633.47,"affordableLoanAmount":316421.64},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Mortgage Summary — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25246/mortgage+summary' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"loanAmount": 300000, "termYears": 30, "annualRate": 6.5, "monthlyBudget": 2000, "currency": "USD"}'

    
Request

Calculates how many months it takes to recoup refinancing closing costs through monthly savings when switching to a lower interest rate. Returns monthly savings, break-even month count, and total net savings over the remaining term. Request Body: - loanAmount (required): Outstanding loan balance. - termYears (required): Remaining loan term in years. - currentRate (required): Current annual interest rate as a percentage. - newRate (required): Proposed annual interest rate (must be lower than currentRate). - closingCosts (required): Upfront refinancing costs. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25247
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25247/mortgage+refinance+breakeven
INPUT PARAMETERS

Mortgage Refinance Breakeven — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"currentMonthlyPayment":1896.2,"newMonthlyPayment":1703.37,"monthlySavings":192.84,"breakEvenMonths":16,"totalSavingsAfterBreakEven":66421.34},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Mortgage Refinance Breakeven — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25247/mortgage+refinance+breakeven' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"loanAmount": 300000, "termYears": 30, "currentRate": 6.5, "newRate": 5.5, "closingCosts": 3000, "currency": "USD"}'

    
Request

Calculates a mortgage with a lump-sum balloon payment due at the end of the term. Monthly payments are lower than a fully-amortising loan. Returns the full amortisation schedule with the balloon amount shown on the final month. Request Body: - loanAmount (required): Principal loan amount. - termYears (required): Loan term in years. - annualRate (required): Annual interest rate as a percentage. - balloonAmount (required): Lump sum due at end of term. Must be less than loanAmount. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25248
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25248/mortgage+balloon+payment
INPUT PARAMETERS

Mortgage Balloon Payment — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"monthlyPayment":5162.37,"balloonPayment":50000,"totalPaid":359742.22,"totalInterest":59742.22,"schedule":[{"month":1,"payment":5162.37,"principal":3537.37,"interest":1625,"balance":296462.63},{"month":2,"payment":5162.37,"principal":3556.53,"interest":1605.84,"balance":292906.1},{"month":3,"payment":5162.37,"principal":3575.8,"interest":1586.57,"balance":289330.3},{"month":4,"payment":5162.37,"principal":3595.16,"interest":1567.21,"balance":285735.14},{"month":5,"payment":5162.37,"principal":3614.64,"interest":1547.73,"balance":282120.5},{"month":6,"payment":5162.37,"principal":3634.22,"interest":1528.15,"balance":278486.28},{"month":7,"payment":5162.37,"principal":3653.9,"interest":1508.47,"balance":274832.38},{"month":8,"payment":5162.37,"principal":3673.7,"interest":1488.68,"balance":271158.68},{"month":9,"payment":5162.37,"principal":3693.59,"interest":1468.78,"balance":267465.09},{"month":10,"payment":5162.37,"principal":3713.6,"interest":1448.77,"balance":263751.49},{"month":11,"payment":5162.37,"principal":3733.72,"interest":1428.65,"balance":260017.77},{"month":12,"payment":5162.37,"principal":3753.94,"interest":1408.43,"balance":256263.83},{"month":13,"payment":5162.37,"principal":3774.27,"interest":1388.1,"balance":252489.56},{"month":14,"payment":5162.37,"principal":3794.72,"interest":1367.65,"balance":248694.84},{"month":15,"payment":5162.37,"principal":3815.27,"interest":1347.1,"balance":244879.56},{"month":16,"payment":5162.37,"principal":3835.94,"interest":1326.43,"balance":241043.63},{"month":17,"payment":5162.37,"principal":3856.72,"interest":1305.65,"balance":237186.91},{"month":18,"payment":5162.37,"principal":3877.61,"interest":1284.76,"balance":233309.3},{"month":19,"payment":5162.37,"principal":3898.61,"interest":1263.76,"balance":229410.69},{"month":20,"payment":5162.37,"principal":3919.73,"interest":1242.64,"balance":225490.96},{"month":21,"payment":5162.37,"principal":3940.96,"interest":1221.41,"balance":221550},{"month":22,"payment":5162.37,"principal":3962.31,"interest":1200.06,"balance":217587.69},{"month":23,"payment":5162.37,"principal":3983.77,"interest":1178.6,"balance":213603.92},{"month":24,"payment":5162.37,"principal":4005.35,"interest":1157.02,"balance":209598.57},{"month":25,"payment":5162.37,"principal":4027.04,"interest":1135.33,"balance":205571.53},{"month":26,"payment":5162.37,"principal":4048.86,"interest":1113.51,"balance":201522.67},{"month":27,"payment":5162.37,"principal":4070.79,"interest":1091.58,"balance":197451.88},{"month":28,"payment":5162.37,"principal":4092.84,"interest":1069.53,"balance":193359.04},{"month":29,"payment":5162.37,"principal":4115.01,"interest":1047.36,"balance":189244.03},{"month":30,"payment":5162.37,"principal":4137.3,"interest":1025.07,"balance":185106.73},{"month":31,"payment":5162.37,"principal":4159.71,"interest":1002.66,"balance":180947.02},{"month":32,"payment":5162.37,"principal":4182.24,"interest":980.13,"balance":176764.78},{"month":33,"payment":5162.37,"principal":4204.89,"interest":957.48,"balance":172559.89},{"month":34,"payment":5162.37,"principal":4227.67,"interest":934.7,"balance":168332.22},{"month":35,"payment":5162.37,"principal":4250.57,"interest":911.8,"balance":164081.65},{"month":36,"payment":5162.37,"principal":4273.59,"interest":888.78,"balance":159808.05},{"month":37,"payment":5162.37,"principal":4296.74,"interest":865.63,"balance":155511.31},{"month":38,"payment":5162.37,"principal":4320.02,"interest":842.35,"balance":151191.29},{"month":39,"payment":5162.37,"principal":4343.42,"interest":818.95,"balance":146847.87},{"month":40,"payment":5162.37,"principal":4366.94,"interest":795.43,"balance":142480.93},{"month":41,"payment":5162.37,"principal":4390.6,"interest":771.77,"balance":138090.33},{"month":42,"payment":5162.37,"principal":4414.38,"interest":747.99,"balance":133675.95},{"month":43,"payment":5162.37,"principal":4438.29,"interest":724.08,"balance":129237.66},{"month":44,"payment":5162.37,"principal":4462.33,"interest":700.04,"balance":124775.32},{"month":45,"payment":5162.37,"principal":4486.5,"interest":675.87,"balance":120288.82},{"month":46,"payment":5162.37,"principal":4510.81,"interest":651.56,"balance":115778.01},{"month":47,"payment":5162.37,"principal":4535.24,"interest":627.13,"balance":111242.77},{"month":48,"payment":5162.37,"principal":4559.81,"interest":602.57,"balance":106682.97},{"month":49,"payment":5162.37,"principal":4584.5,"interest":577.87,"balance":102098.46},{"month":50,"payment":5162.37,"principal":4609.34,"interest":553.03,"balance":97489.13},{"month":51,"payment":5162.37,"principal":4634.3,"interest":528.07,"balance":92854.82},{"month":52,"payment":5162.37,"principal":4659.41,"interest":502.96,"balance":88195.42},{"month":53,"payment":5162.37,"principal":4684.65,"interest":477.73,"balance":83510.77},{"month":54,"payment":5162.37,"principal":4710.02,"interest":452.35,"balance":78800.75},{"month":55,"payment":5162.37,"principal":4735.53,"interest":426.84,"balance":74065.22},{"month":56,"payment":5162.37,"principal":4761.18,"interest":401.19,"balance":69304.03},{"month":57,"payment":5162.37,"principal":4786.97,"interest":375.4,"balance":64517.06},{"month":58,"payment":5162.37,"principal":4812.9,"interest":349.47,"balance":59704.16},{"month":59,"payment":5162.37,"principal":4838.97,"interest":323.4,"balance":54865.18},{"month":60,"payment":55162.37,"principal":54865.18,"interest":297.19,"balloon":50000,"balance":0}]},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Mortgage Balloon Payment — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25248/mortgage+balloon+payment' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"loanAmount": 300000, "termYears": 5, "annualRate": 6.5, "balloonAmount": 50000, "currency": "USD"}'

    
Request

Calculates a mortgage with an interest-only period followed by full amortisation over the remaining term. The principal is unchanged during the interest-only period, resulting in higher payments once full amortisation begins. Request Body: - loanAmount (required): Principal loan amount. - termYears (required): Total loan term in years. - annualRate (required): Annual interest rate as a percentage. - interestOnlyYears (required): Length of interest-only period in years. Must be less than termYears. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25249
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25249/mortgage+interest+only
INPUT PARAMETERS

Mortgage Interest Only — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"interestOnlyPayment":1625,"amortisedPayment":2025.62,"interestOnlyPeriodMonths":60,"amortisedPeriodMonths":300,"totalPaid":705186.45,"totalInterest":405186.45},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Mortgage Interest Only — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25249/mortgage+interest+only' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"loanAmount": 300000, "termYears": 30, "annualRate": 6.5, "interestOnlyYears": 5, "currency": "USD"}'

    
Request

Calculates the true Annual Percentage Rate (APR) including upfront fees and closing costs using Newton-Raphson iteration. The APR will always be higher than the nominal rate when fees are present. Request Body: - loanAmount (required): Principal loan amount. - termYears (required): Loan term in years. - annualRate (required): Nominal annual interest rate as a percentage. - fees (required): Total upfront fees and closing costs. Pass 0 if none. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25250
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25250/mortgage+apr
INPUT PARAMETERS

Mortgage APR — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"nominalRate":6.5,"apr":6.5969,"monthlyPayment":1896.2,"loanAmount":300000,"fees":3000,"termYears":30},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Mortgage APR — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25250/mortgage+apr' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"loanAmount": 300000, "termYears": 30, "annualRate": 6.5, "fees": 3000, "currency": "USD"}'

    
Request

Calculates the debt-to-income (DTI) ratio for a mortgage application and returns a 4-band affordability assessment: Excellent (≤28%), Good (≤36%), Acceptable (≤43%), or High (>43%). Request Body: - grossMonthlyIncome (required): Gross monthly income before tax. - monthlyDebts (required): Existing monthly debt payments excluding the new mortgage. Pass 0 if none. - loanAmount (required): Principal loan amount. - termYears (required): Loan term in years. - annualRate (required): Annual interest rate as a percentage. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25251
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25251/mortgage+debt-to-income
INPUT PARAMETERS

Mortgage Debt-to-Income — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"grossMonthlyIncome":8000,"existingMonthlyDebts":500,"newMonthlyPayment":1896.2,"totalMonthlyDebt":2396.2,"dtiRatio":29.95,"assessment":"Good — within standard lending guidelines","loanAmount":300000,"termYears":30,"annualRate":6.5},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Mortgage Debt-to-Income — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25251/mortgage+debt-to-income' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"grossMonthlyIncome": 8000, "monthlyDebts": 500, "loanAmount": 300000, "termYears": 30, "annualRate": 6.5, "currency": "USD"}'

    
Request

Estimates stamp duty or transfer tax for residential property purchases in supported countries. First-time buyer relief is applied where available. Required fields are "propertyPrice" and "country". The "firstTimeBuyer" field is optional and uses false if not provided. The "currency" field is optional and uses USD if not provided. Supported country codes are "ZA", "GB", "AU", "IE" and "CA".

Endpoint ID: 25252
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25252/mortgage+stamp+duty
INPUT PARAMETERS

Mortgage Stamp Duty — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"country":"ZA","propertyPrice":2000000,"firstTimeBuyer":false,"stampDuty":41625,"effectiveRate":2.0813,"notes":"South Africa Transfer Duty rates applied. No first-time buyer relief available for Transfer Duty."},"meta":{"source":"Static","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"ZAR","cached":false}}
Mortgage Stamp Duty — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25252/mortgage+stamp+duty' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"propertyPrice": 2000000, "country": "ZA", "firstTimeBuyer": false, "currency": "ZAR"}'

    
Request

Calculates the standard monthly personal loan repayment using the amortisation formula. Supports an optional biweekly payment frequency (26 payments per year). Request Body: - loanAmount (required): Principal loan amount. - termYears (required): Loan term in years. - annualRate (required): Annual interest rate as a percentage. - paymentFrequency (optional): monthly (default) or biweekly. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25253
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25253/loan+repayment
INPUT PARAMETERS

Loan Repayment — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"monthlyPayment":420.04,"loanAmount":20000,"termYears":5,"annualRate":9.5},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Loan Repayment — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25253/loan+repayment' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"loanAmount": 20000, "termYears": 5, "annualRate": 9.5, "currency": "USD"}'

    
Request

Reverse-calculates the maximum personal loan amount a borrower can afford given a monthly budget, term, and interest rate. Request Body: - monthlyBudget (required): Maximum monthly payment the borrower can afford. - termYears (required): Loan term in years. - annualRate (required): Annual interest rate as a percentage. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25254
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25254/loan+affordability
INPUT PARAMETERS

Loan Affordability — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"affordableLoanAmount":23807.41,"monthlyBudget":500,"termYears":5,"annualRate":9.5},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Loan Affordability — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25254/loan+affordability' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"monthlyBudget": 500, "termYears": 5, "annualRate": 9.5, "currency": "USD"}'

    
Request

Returns a full month-by-month amortisation schedule for a personal loan. Each row shows the payment, principal portion, interest portion, and remaining balance. The final month balance closes to exactly zero. Request Body: - loanAmount (required): Principal loan amount. - termYears (required): Loan term in years. - annualRate (required): Annual interest rate as a percentage. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25255
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25255/loan+amortisation+schedule
INPUT PARAMETERS

Loan Amortisation Schedule — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"monthlyPayment":420.04,"totalMonths":60,"schedule":[{"month":1,"payment":420.04,"principal":261.7,"interest":158.33,"balance":19738.3},{"month":2,"payment":420.04,"principal":263.78,"interest":156.26,"balance":19474.52},{"month":3,"payment":420.04,"principal":265.86,"interest":154.17,"balance":19208.66},{"month":4,"payment":420.04,"principal":267.97,"interest":152.07,"balance":18940.69},{"month":5,"payment":420.04,"principal":270.09,"interest":149.95,"balance":18670.6},{"month":6,"payment":420.04,"principal":272.23,"interest":147.81,"balance":18398.37},{"month":7,"payment":420.04,"principal":274.38,"interest":145.65,"balance":18123.99},{"month":8,"payment":420.04,"principal":276.56,"interest":143.48,"balance":17847.43},{"month":9,"payment":420.04,"principal":278.75,"interest":141.29,"balance":17568.69},{"month":10,"payment":420.04,"principal":280.95,"interest":139.09,"balance":17287.73},{"month":11,"payment":420.04,"principal":283.18,"interest":136.86,"balance":17004.56},{"month":12,"payment":420.04,"principal":285.42,"interest":134.62,"balance":16719.14},{"month":13,"payment":420.04,"principal":287.68,"interest":132.36,"balance":16431.46},{"month":14,"payment":420.04,"principal":289.95,"interest":130.08,"balance":16141.51},{"month":15,"payment":420.04,"principal":292.25,"interest":127.79,"balance":15849.26},{"month":16,"payment":420.04,"principal":294.56,"interest":125.47,"balance":15554.69},{"month":17,"payment":420.04,"principal":296.9,"interest":123.14,"balance":15257.8},{"month":18,"payment":420.04,"principal":299.25,"interest":120.79,"balance":14958.55},{"month":19,"payment":420.04,"principal":301.62,"interest":118.42,"balance":14656.94},{"month":20,"payment":420.04,"principal":304,"interest":116.03,"balance":14352.93},{"month":21,"payment":420.04,"principal":306.41,"interest":113.63,"balance":14046.52},{"month":22,"payment":420.04,"principal":308.84,"interest":111.2,"balance":13737.69},{"month":23,"payment":420.04,"principal":311.28,"interest":108.76,"balance":13426.41},{"month":24,"payment":420.04,"principal":313.74,"interest":106.29,"balance":13112.66},{"month":25,"payment":420.04,"principal":316.23,"interest":103.81,"balance":12796.43},{"month":26,"payment":420.04,"principal":318.73,"interest":101.31,"balance":12477.7},{"month":27,"payment":420.04,"principal":321.26,"interest":98.78,"balance":12156.45},{"month":28,"payment":420.04,"principal":323.8,"interest":96.24,"balance":11832.65},{"month":29,"payment":420.04,"principal":326.36,"interest":93.68,"balance":11506.28},{"month":30,"payment":420.04,"principal":328.95,"interest":91.09,"balance":11177.34},{"month":31,"payment":420.04,"principal":331.55,"interest":88.49,"balance":10845.79},{"month":32,"payment":420.04,"principal":334.17,"interest":85.86,"balance":10511.61},{"month":33,"payment":420.04,"principal":336.82,"interest":83.22,"balance":10174.79},{"month":34,"payment":420.04,"principal":339.49,"interest":80.55,"balance":9835.31},{"month":35,"payment":420.04,"principal":342.17,"interest":77.86,"balance":9493.13},{"month":36,"payment":420.04,"principal":344.88,"interest":75.15,"balance":9148.25},{"month":37,"payment":420.04,"principal":347.61,"interest":72.42,"balance":8800.64},{"month":38,"payment":420.04,"principal":350.37,"interest":69.67,"balance":8450.27},{"month":39,"payment":420.04,"principal":353.14,"interest":66.9,"balance":8097.13},{"month":40,"payment":420.04,"principal":355.93,"interest":64.1,"balance":7741.2},{"month":41,"payment":420.04,"principal":358.75,"interest":61.28,"balance":7382.44},{"month":42,"payment":420.04,"principal":361.59,"interest":58.44,"balance":7020.85},{"month":43,"payment":420.04,"principal":364.46,"interest":55.58,"balance":6656.39},{"month":44,"payment":420.04,"principal":367.34,"interest":52.7,"balance":6289.05},{"month":45,"payment":420.04,"principal":370.25,"interest":49.79,"balance":5918.81},{"month":46,"payment":420.04,"principal":373.18,"interest":46.86,"balance":5545.63},{"month":47,"payment":420.04,"principal":376.13,"interest":43.9,"balance":5169.49},{"month":48,"payment":420.04,"principal":379.11,"interest":40.93,"balance":4790.38},{"month":49,"payment":420.04,"principal":382.11,"interest":37.92,"balance":4408.27},{"month":50,"payment":420.04,"principal":385.14,"interest":34.9,"balance":4023.13},{"month":51,"payment":420.04,"principal":388.19,"interest":31.85,"balance":3634.94},{"month":52,"payment":420.04,"principal":391.26,"interest":28.78,"balance":3243.68},{"month":53,"payment":420.04,"principal":394.36,"interest":25.68,"balance":2849.32},{"month":54,"payment":420.04,"principal":397.48,"interest":22.56,"balance":2451.84},{"month":55,"payment":420.04,"principal":400.63,"interest":19.41,"balance":2051.21},{"month":56,"payment":420.04,"principal":403.8,"interest":16.24,"balance":1647.42},{"month":57,"payment":420.04,"principal":407,"interest":13.04,"balance":1240.42},{"month":58,"payment":420.04,"principal":410.22,"interest":9.82,"balance":830.2},{"month":59,"payment":420.04,"principal":413.46,"interest":6.57,"balance":416.74},{"month":60,"payment":420.04,"principal":416.74,"interest":3.3,"balance":0}]},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Loan Amortisation Schedule — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25255/loan+amortisation+schedule' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"loanAmount": 20000, "termYears": 5, "annualRate": 9.5, "currency": "USD"}'

    
Request

Simulates the effect of making extra monthly payments on a personal loan. Returns the interest saved and months saved compared to the base repayment plan. Required fields are "loanAmount", "termYears", "annualRate" and "extraMonthlyPayment". The "currency" field is optional and uses USD if not provided.

Endpoint ID: 25256
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25256/loan+extra+payment
INPUT PARAMETERS

Loan Extra Payment — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"base":{"monthlyPayment":420.04,"totalInterest":5202.23,"termMonths":60},"withExtra":{"monthlyPayment":520.04,"totalInterest":3944.34,"termMonths":47},"interestSaved":1257.9,"monthsSaved":13},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Loan Extra Payment — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25256/loan+extra+payment' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"loanAmount": 20000, "termYears": 5, "annualRate": 9.5, "extraMonthlyPayment": 100, "currency": "USD"}'

    
Request

Compares two personal loan scenarios side by side. Identifies the cheaper option by total cost and returns a trade-off note. Request Body: - scenario1 (required): Object with loanAmount, termYears, annualRate. - scenario2 (required): Object with loanAmount, termYears, annualRate. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25257
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25257/loan+comparison
INPUT PARAMETERS

Loan Comparison — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"scenario1":{"loanAmount":20000,"termYears":3,"annualRate":7.5,"monthlyPayment":622.12,"totalPaid":22396.48,"totalInterest":2396.48},"scenario2":{"loanAmount":20000,"termYears":5,"annualRate":9.5,"monthlyPayment":420.04,"totalPaid":25202.23,"totalInterest":5202.23},"cheaperOption":"scenario1","tradeOffNote":"scenario1 costs 2805.75 less in total (622.12/mo vs 420.04/mo for scenario2)."},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Loan Comparison — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25257/loan+comparison' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"scenario1": {"loanAmount": 20000, "termYears": 3, "annualRate": 7.5}, "scenario2": {"loanAmount": 20000, "termYears": 5, "annualRate": 9.5}, "currency": "USD"}'

    
Request

Returns the total amount paid and total interest over the full personal loan term. Supports biweekly payment frequency. Request Body: - loanAmount (required): Principal loan amount. - termYears (required): Loan term in years. - annualRate (required): Annual interest rate as a percentage. - paymentFrequency (optional): monthly (default) or biweekly. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25258
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25258/loan+total+cost
INPUT PARAMETERS

Loan Total Cost — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"monthlyPayment":420.04,"totalPaid":25202.23,"totalInterest":5202.23,"loanAmount":20000,"termYears":5,"annualRate":9.5},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Loan Total Cost — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25258/loan+total+cost' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"loanAmount": 20000, "termYears": 5, "annualRate": 9.5, "currency": "USD"}'

    
Request

Single call returning monthly payment, total cost, total interest, and maximum affordable loan amount combined. Ideal for dashboard-style applications. Request Body: - loanAmount (required): Principal loan amount. - termYears (required): Loan term in years. - annualRate (required): Annual interest rate as a percentage. - monthlyBudget (required): Monthly budget used to calculate the affordable loan amount. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25259
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25259/loan+summary
INPUT PARAMETERS

Loan Summary — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"monthlyPayment":420.04,"totalPaid":25202.23,"totalInterest":5202.23,"affordableLoanAmount":23807.41},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Loan Summary — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25259/loan+summary' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"loanAmount": 20000, "termYears": 5, "annualRate": 9.5, "monthlyBudget": 500, "currency": "USD"}'

    
Request

Combines multiple existing loans into a single consolidated loan and surfaces monthly savings and total savings over the new term. Request Body: - loans (required): Array of existing loans. Each item requires balance, annualRate, and monthlyPayment. - newAnnualRate (required): Annual interest rate for the consolidated loan. - newTermYears (required): Term of the consolidated loan in years. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25260
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25260/loan+consolidation
INPUT PARAMETERS

Loan Consolidation — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"totalCurrentBalance":23000,"totalCurrentMonthlyPayment":700,"newMonthlyPayment":477.44,"newTotalPaid":28646.53,"newTotalInterest":5646.53,"monthlySavings":222.56,"totalSavings":13353.47},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Loan Consolidation — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25260/loan+consolidation' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"loans": [{"balance": 15000, "annualRate": 11.5, "monthlyPayment": 420}, {"balance": 8000, "annualRate": 18.0, "monthlyPayment": 280}], "newAnnualRate": 9.0, "newTermYears": 5, "currency": "USD"}'

    
Request

Calculates the true Annual Percentage Rate (APR) for a personal loan including upfront fees using Newton-Raphson iteration. The APR will always be higher than the nominal rate when fees are present. Request Body: - loanAmount (required): Principal loan amount. - termYears (required): Loan term in years. - annualRate (required): Nominal annual interest rate as a percentage. - fees (required): Total upfront fees. Pass 0 if none. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25261
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25261/loan+apr
INPUT PARAMETERS

Loan APR — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"nominalRate":9.5,"apr":10.5937,"monthlyPayment":420.04,"loanAmount":20000,"fees":500,"termYears":5},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Loan APR — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25261/loan+apr' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"loanAmount": 20000, "termYears": 5, "annualRate": 9.5, "fees": 500, "currency": "USD"}'

    
Request

Calculates the debt-to-income (DTI) ratio for a personal loan application and returns a 4-band affordability assessment: Excellent (≤28%), Good (≤36%), Acceptable (≤43%), or High (>43%). Request Body: - grossMonthlyIncome (required): Gross monthly income before tax. - monthlyDebts (required): Existing monthly debt payments excluding the new loan. Pass 0 if none. - loanAmount (required): Principal loan amount. - termYears (required): Loan term in years. - annualRate (required): Annual interest rate as a percentage. - currency (optional): Display currency label. Default USD.

Endpoint ID: 25262
POST https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25262/loan+debt-to-income
INPUT PARAMETERS

Loan Debt-to-Income — Endpoint Features

Object Description
Request Body Required Json

Free test requests remaining: 3 of 3.


INPUT PARAMETERS

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"grossMonthlyIncome":5000,"existingMonthlyDebts":300,"newMonthlyPayment":420.04,"totalMonthlyDebt":720.04,"dtiRatio":14.4,"assessment":"Excellent — well within standard lending guidelines","loanAmount":20000,"termYears":5,"annualRate":9.5},"meta":{"source":"Formula","disclaimer":"Estimates only. Consult a qualified financial advisor.","currency":"USD","cached":false}}
Loan Debt-to-Income — CODE SNIPPETS

curl --location --request POST 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25262/loan+debt-to-income' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '{"grossMonthlyIncome": 5000, "monthlyDebts": 300, "loanAmount": 20000, "termYears": 5, "annualRate": 9.5, "currency": "USD"}'

    
Request

Returns the full list of supported currency codes, symbols, and names. Pass any code value as the currency parameter on any other endpoint to localise the display label in the response.

Endpoint ID: 25263
GET https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25263/info+list+supported+currencies
INPUT PARAMETERS

Free test requests remaining: 3 of 3.

This endpoint does not require any input parameters.

API EXAMPLE RESPONSE
JSON
{"success":true,"data":{"currencies":[{"code":"USD","symbol":"$","name":"US Dollar"},{"code":"EUR","symbol":"€","name":"Euro"},{"code":"GBP","symbol":"£","name":"British Pound"},{"code":"ZAR","symbol":"R","name":"South African Rand"},{"code":"AUD","symbol":"A$","name":"Australian Dollar"},{"code":"CAD","symbol":"C$","name":"Canadian Dollar"},{"code":"NZD","symbol":"NZ$","name":"New Zealand Dollar"},{"code":"SGD","symbol":"S$","name":"Singapore Dollar"},{"code":"AED","symbol":"د.إ","name":"UAE Dirham"},{"code":"INR","symbol":"₹","name":"Indian Rupee"},{"code":"JPY","symbol":"¥","name":"Japanese Yen"},{"code":"CHF","symbol":"Fr","name":"Swiss Franc"},{"code":"HKD","symbol":"HK$","name":"Hong Kong Dollar"},{"code":"MXN","symbol":"MX$","name":"Mexican Peso"},{"code":"BRL","symbol":"R$","name":"Brazilian Real"},{"code":"NGN","symbol":"₦","name":"Nigerian Naira"},{"code":"KES","symbol":"KSh","name":"Kenyan Shilling"},{"code":"GHS","symbol":"GH₵","name":"Ghanaian Cedi"}]},"meta":{"source":"Static","disclaimer":"Estimates only. Consult a qualified financial advisor.","cached":false}}
Info List Supported Currencies — CODE SNIPPETS

curl --location --request GET 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25263/info+list+supported+currencies' --header 'Authorization: Bearer YOUR_API_KEY' 


    
Request
Returns API status, version, and uptime in seconds. Use this to verify the service is running before making calculation requests.
Endpoint ID: 25264
GET https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25264/health+check
INPUT PARAMETERS

Free test requests remaining: 3 of 3.

This endpoint does not require any input parameters.

API EXAMPLE RESPONSE
JSON
{"status":"ok","version":"1.0.0","uptime_seconds":208488}
Health Check — CODE SNIPPETS

curl --location --request GET 'https://zylalabs.com/api/12810/global+loan+and+mortgage+calculator+api/25264/health+check' --header 'Authorization: Bearer YOUR_API_KEY' 


    

API Access Key & Authentication

After signing up, every developer is assigned a personal API access key, a unique combination of letters and digits provided to access to our API endpoint. To authenticate with the Global Loan and Mortgage Calculator API simply include your bearer token in the Authorization header.

Headers
Header Description
Authorization Required Should be Bearer access_key. See "Your API Access Key" above when you are subscribed.

Simple Transparent Pricing

No long-term commitment. Upgrade, downgrade, or cancel anytime. Free Trial includes up to 50 requests.

(Save 2 months with annual billing 🎉)

🚀 Enterprise Plan
Custom Volume

  • Custom Rate Limit
  • Team & Access Management
  • SLA-backed Uptime
  • Specialized Customer Support
  • Real-Time API Monitoring
  • Enterprise Security & Compliance
Minimum annual contract: USD 10,000

Trusted by leading companies

Overview

A globally usable mortgage and loan calculator supporting multiple currencies. Covers monthly repayments, full amortisation schedules, affordability reverse-calculation, early repayment savings, side-by-side comparison, total cost of ownership, APR, debt-to-income ratio, stamp duty estimates, refinance break-even, balloon payments, interest-only periods, loan consolidation, and biweekly payment options. Pure maths — no external data sources. Pass any currency code (USD, GBP, EUR, ZAR, AUD, etc.) for localised display.

Global Loan and Mortgage Calculator API FAQs

No. The "currency" field is for display purposes only. All calculations use the numbers you provide regardless of which currency code you pass.

Pass the annual interest rate as a percentage. For example, pass 6.5 for 6.5% not 0.065.

Yes. The final month balance on every amortisation schedule closes to exactly zero.

The annual rate is the nominal interest rate on the loan. APR includes upfront fees and closing costs and will always be higher than the nominal rate when fees are present.

ZA for South Africa Transfer Duty, GB for UK SDLT, AU for NSW rates, IE for Ireland, and CA for Ontario Land Transfer Tax. US is not supported as rates vary by state and county.

A DTI of 28% or below is Excellent. Up to 36% is Good. Up to 43% is Acceptable. Above 43% is High and most lenders will decline at that level.

Each endpoint returns JSON data containing calculation results, including monthly payments, total costs, amortisation schedules, and affordability assessments. For example, the Mortgage Repayment endpoint returns the monthly payment and loan details.

Key fields include "success" (boolean), "data" (object with calculation results), and "meta" (metadata like currency and disclaimers). For instance, the Mortgage Affordability endpoint returns "affordableLoanAmount" and "monthlyBudget" within the "data" object.

Parameters vary by endpoint but generally include "loanAmount," "termYears," "annualRate," and optional fields like "currency" and "paymentFrequency." For example, the Mortgage Extra Payment endpoint requires "extraMonthlyPayment" alongside the standard loan parameters.

The response data is structured in a JSON format with a "success" field indicating the request status, a "data" object containing the results, and a "meta" object for additional information. This structure allows easy parsing and access to relevant data.

Each endpoint provides specific financial calculations, such as monthly payments, total interest, amortisation schedules, and affordability assessments. For example, the Loan Comparison endpoint offers a side-by-side analysis of two loan scenarios.

Users can customize requests by specifying parameters like "currency" for localized display, "paymentFrequency" for monthly or biweekly options, and loan-specific details such as "annualRate" and "termYears" to tailor calculations to their needs.

Typical use cases include mortgage planning, loan affordability assessments, and financial comparisons. Users can leverage the API to simulate different loan scenarios, evaluate refinancing options, or generate amortisation schedules for better financial decision-making.

The API relies on pure mathematical formulas for calculations, ensuring consistent accuracy across all endpoints. Users are advised to consult financial advisors for personalized advice, as the API provides estimates based on input parameters without external data sources.

General FAQs

To obtain your API key, first sign in to your account and navigate to the API you want to use. From the API's Pricing section, choose a plan and complete the subscription process. Once subscribed, return to the API page and you will see your API Access Key displayed at the top of the documentation page. You can use this key to authenticate your requests.

You can’t switch APIs during the free trial. If you subscribe to a different API, your trial will end and the new subscription will start as a paid plan.

The free trial lasts for 7 days and allows you to make up to 50 API requests.

No, the free trial is available only once, so we recommend using it on the API that interests you the most. Most of our APIs offer a free trial, but some may not include this option.

Yes. If the API offers a free trial, you will see a "Free 7-Day Trial" option in its Pricing section. The trial lasts for 7 days and allows up to 50 API requests, enabling you to evaluate the API before subscribing to a paid plan.

Zyla API Hub is like a big store for APIs, where you can find thousands of them all in one place. We also offer dedicated support and real-time monitoring of all APIs. Once you sign up, you can pick and choose which APIs you want to use. Just remember, each API needs its own subscription. But if you subscribe to multiple ones, you'll use the same key for all of them, making things easier for you.

Prices are listed in USD (United States Dollar), EUR (Euro), CAD (Canadian Dollar), AUD (Australian Dollar), and GBP (British Pound). We accept all major debit and credit cards. Our payment system uses the latest security technology and is powered by Stripe, one of the world's most reliable payment companies. If you have any trouble paying by card, just contact us at [email protected]

Additionally, if you already have an active subscription in any of these currencies (USD, EUR, CAD, AUD, GBP), that currency will remain for subsequent subscriptions. You can change the currency at any time as long as you don't have any active subscriptions.
The local currency shown on the pricing page is based on the country of your IP address and is provided for reference only. The actual prices are in USD (United States Dollar). When you make a payment, the charge will appear on your card statement in USD, even if you see the equivalent amount in your local currency on our website. This means you cannot pay directly with your local currency.
Occasionally, a bank may decline the charge due to its fraud protection settings. We suggest reaching out to your bank initially to check if they are blocking our charges. Also, you can access the Billing Portal and change the card associated to make the payment. If these does not work and you need further assistance, please contact our team at [email protected]
Prices are determined by a recurring monthly or yearly subscription, depending on the chosen plan.
API calls are deducted from your plan based on successful requests. Each plan comes with a specific number of calls that you can make per month. Only successful calls, indicated by a Status 200 response, will be counted against your total. This ensures that failed or incomplete requests do not impact your monthly quota.
Zyla API Hub works on a recurring monthly subscription system. Your billing cycle will start the day you purchase one of the paid plans, and it will renew the same day of the next month. So be aware to cancel your subscription beforehand if you want to avoid future charges.
To upgrade your current subscription plan, simply go to the pricing page of the API and select the plan you want to upgrade to. The upgrade will be instant, allowing you to immediately enjoy the features of the new plan. Please note that any remaining calls from your previous plan will not be carried over to the new plan, so be aware of this when upgrading. You will be charged the full amount of the new plan.
To check how many API calls you have left for the current month, refer to the 'X-Zyla-API-Calls-Monthly-Remaining' field in the response header. For example, if your plan allows 1,000 requests per month and you've used 100, this field in the response header will indicate 900 remaining calls.

You can monitor your API usage through the response headers included with every request:

x-zyla-api-calls-monthly-used: Shows the total number of API requests you have used during the current billing period.
x-zyla-api-calls-monthly-remaining: Shows the number of API requests you have remaining for the current billing period.

The 'X-Zyla-RateLimit-Reset' header shows the number of seconds until your rate limit resets. This tells you when your request count will start fresh. For example, if it displays 3,600, it means 3,600 seconds are left until the limit resets.

Yes, you can cancel your subscription at any time. Simply go to the Pricing section of the API you're subscribed to and click the "Unsubscribe" button.

Please note that upgrades, downgrades, and cancellations take effect immediately. Once your subscription is canceled, access to the service will end immediately, regardless of any remaining API calls in your quota.

After 7 days, you will be charged the full amount for the plan you were subscribed to during the trial. Therefore, it's important to cancel before the trial period ends. Refund requests for forgetting to cancel on time are not accepted.
When you subscribe to an API free trial, you can make up to 50 API calls. If you wish to make additional API calls beyond this limit, the API will prompt you to perform an "Start Your Paid Plan." You can find the "Start Your Paid Plan" button in your profile under Subscription -> Choose the API you are subscribed to -> Pricing tab.
You can contact us through our chat channel to receive immediate assistance. We are always online from 8 am to 5 pm (EST). If you reach us after that time, we will get back to you as soon as possible. Additionally, you can contact us via email at [email protected]

Please have a look at our Refund Policy: https://zylalabs.com/terms#refund


Related APIs