API ReferenceCalculation
Generate CPF projection
Generate multi-year CPF contribution projection with cumulative totals.
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
curl -X POST "https://loading/api/cpf/projection" \ -H "Content-Type: application/json" \ -d '{ "income": 5000, "age": 30, "years": 5 }'{
"input": {
"income": 0,
"age": 0,
"years": 1
},
"projections": [
{
"year": 0,
"age": 0,
"ageGroup": "string",
"contribution": {
"totalContribution": 0,
"employer": 0,
"employee": 0
},
"cumulative": {
"totalContribution": 0,
"employer": 0,
"employee": 0
}
}
],
"projectionInput": {
"monthlyIncome": 0,
"birthDate": "2019-08-24",
"startAge": 0,
"endAge": 1,
"housingWithdrawal": 0,
"citizenship": "citizen",
"voluntaryTopUp": {
"amount": 0,
"account": "SA",
"frequency": "monthly"
},
"oaToSaTransfer": {
"amount": 0,
"timing": "now"
}
},
"yearlyBalances": [
{
"year": 0,
"age": 0,
"ageGroup": "string",
"balances": {
"oa": 0,
"sa": 0,
"ma": 0,
"ra": 0
},
"contributions": {
"employee": 0,
"employer": 0,
"total": 0
},
"distribution": {
"oa": 0,
"sa": 0,
"ma": 0,
"ra": 0
},
"interestEarned": {
"oa": 0,
"sa": 0,
"ma": 0,
"ra": 0,
"extraInterest": 0
},
"housingWithdrawal": 0,
"voluntaryTopUp": 0
}
],
"milestones": {
"age55": {
"oa": 0,
"sa": 0,
"ma": 0,
"ra": 0
},
"age65": {
"oa": 0,
"sa": 0,
"ma": 0,
"ra": 0
},
"age70": {
"oa": 0,
"sa": 0,
"ma": 0,
"ra": 0
}
},
"cpfLifeEstimate": {
"standardMonthly": 0,
"escalatingStartMonthly": 0,
"basicMonthly": 0,
"deferredTo70Monthly": 0
},
"totalContributed": 0,
"totalInterestEarned": 0
}{
"error": "string"
}{
"error": "Rate limit exceeded"
}