Simulate effects of voluntary purchase
Changed onSimulates the financial effect of voluntary purchase of additional pension benefits for the provided parameters (retirement age, purchase amount etc.)
If the specified purchase amount is higher the maximum allowed purchase amount, it will be reduced to the allowed amount. The simulation result contains the effective purchase amount.
For periodic payments, the simulation assumes that the payments are made with the specified payment size and payment frequency until the maximum purchase amount has been exhausted or the retirement date has been reached (whichever is first).
If the retirement date is reached before the purchase amount is exhausted, the returned effective purchase amount will be lower than both the requested and the maximum purchase amount.
Using a very high amount (e.g. CHF 10 million), it is possible to query the maximum purchase amount and the maximum additional pension at once.
Request
- Base URLhttps://pension.common-api.ch
- URLhttps://pension.common-api.ch/policies/{policyId}/purchase-simulation
- AuthOAuth 2Authorization code: https://example.com/oauth/authorizeToken URL: https://example.com/oauth/token scopes: read:basic_pension_data
Path parameters
Technical ID of policy used in API calls.
Technical policy ID.
Request body
Example request
{
"totalAmount": 10000,
"date": "2018-04-13",
"paymentSize": 10000,
"retirementAge": 780
}Response
Simulation result.
Example response
{
"pensionStatementAfterChange": {
"employer": {
"employerName": "Acrea AG",
"employerId": "CHE115873291",
"industry": "information technology and management consulting"
},
"pensionPlans": [
{
"contractType": "mand",
"planName": "Basisplan",
"optionalSavingsPlanName": "Sparplan 2",
"planId": "Plan_XY4284_425"
}
],
"pensionProvider": {
"providerName": "Omnifund",
"portalName": "Omni Portal",
"portalUrl": "www.omnifund.ch",
"providerAddress": {
"countryCode": "CH",
"postalCode": "3944",
"street": "Brandstrasse 2",
"town": "Unterbäch",
"poBox": "PO Box 42"
},
"providerId": "CHE123456789"
},
"pensionStatementType": "regular",
"personId": "JohnDoe_1234",
"personalPensionDetails": {
"earliestRetirementAge": 696,
"financing": {
"contributionSavingsEmployer": 4025,
"contributionSavingsInsuredPerson": 4025
},
"homeOwnershipAvailableForWithdrawal": 31000,
"ordinaryRetirementAge": 780,
"regularPurchaseMaxAmount": 48392.45,
"retirementCapital": {
"balanceMandatoryReferenceDate": 38942.15,
"balanceReferenceDate": 53842.5,
"interestRates": {
"interestRateEnvelopingProjection": 3.175,
"interestRateEnvelopingPurchase": 3.175,
"interestRateEnvelopingSaving": 3.175,
"interestRateMandatoryProjection": 3.175,
"interestRateMandatoryPurchase": 3.175,
"interestRateMandatorySaving": 3.175,
"interestRateSupplementaryProjection": 3.175,
"interestRateSupplementaryPurchase": 3.175,
"interestRateSupplementarySaving": 3.175
},
"lastYearDevelopment": {
"balanceBeginningLastYear": 100000,
"balanceEndLastYear": 106000,
"interestCreditLastYear": 2000,
"interestRatesLastYear": {
"interestRateEnvelopingProjection": 3.175,
"interestRateEnvelopingPurchase": 3.175,
"interestRateEnvelopingSaving": 3.175,
"interestRateMandatoryProjection": 3.175,
"interestRateMandatoryPurchase": 3.175,
"interestRateMandatorySaving": 3.175,
"interestRateSupplementaryProjection": 3.175,
"interestRateSupplementaryPurchase": 3.175,
"interestRateSupplementarySaving": 3.175
},
"oldAgeCreditLastYear": 4000,
"totalDepositsLastYear": 5000,
"totalWithdrawalsLastYear": 5000
},
"projectedRetirementBenefits": [
{
"capitalBalance": 378832.05,
"capitalBalanceMandatory": 284832.15,
"retirementAge": 756,
"capitalBalanceNoInterest": 331285.25,
"capitalBalanceNoInterestMandatory": 248862.65,
"conversionRateEnveloping": 6.3,
"conversionRateMandatory": 6.8,
"conversionRateSupplementary": 5.5,
"pension": 22835
}
],
"balanceEndCurrentYear": 56325.25,
"balanceMandatoryEndCurrentYear": 40846.6,
"transferredCapital": 45210.25,
"transferredCapitalMandatory": 32840.55
},
"riskBenefits": {
"childPensionDisability": 5382,
"lumpSumWithoutPensionBenefits": 92834,
"minimalLumpSumWithPensionBenefits": 74383,
"orphanPensionDeath": 5382,
"partnerPensionDeath": 24817,
"pensionDisability": 40213
},
"salaryData": {
"declaredSalary": 78000,
"employmentLevel": 100,
"insuredSalaryMandatory": 59215,
"insuredSalaryRetirement": 59215,
"insuredSalaryRisk": 59215
},
"vestedBenefits": {
"capitalAtMarriage": 28483.35,
"capitalAtMarriageMandatory": 23863.15,
"capitalFirstCommunicatedDate": "2018-04-13",
"divorceWithdrawals": [
{
"date": "2018-04-13"
}
],
"homeOwnershipWithdrawals": [
{
"date": "2018-04-13"
}
],
"pledges": [
{
"amount": 20000,
"amountMandatory": 20000,
"pledgee": "UBS AG",
"pledgeeAddress": {
"countryCode": "CH",
"postalCode": "3944",
"street": "Brandstrasse 2",
"town": "Unterbäch",
"poBox": "PO Box 42"
}
}
],
"referenceDate": "2018-04-13",
"voluntaryPurchases": [
{
"date": "2018-04-13"
}
]
},
"homeOwnershipAvailableForPledge": 50000
},
"referenceDate": "2018-04-13",
"timeStamp": "2018-04-13T11:11:11Z",
"languageCode": "de",
"pensionStatementId": "550e8450-e59b-21d4-a346-442215440560",
"pensionStatementNo": "PS_ID_6789-ABC"
},
"pensionStatementBeforeChange": {
"employer": {
"employerName": "Acrea AG",
"employerId": "CHE115873291",
"industry": "information technology and management consulting"
},
"pensionPlans": [
{
"contractType": "mand",
"planName": "Basisplan",
"optionalSavingsPlanName": "Sparplan 2",
"planId": "Plan_XY4284_425"
}
],
"pensionProvider": {
"providerName": "Omnifund",
"portalName": "Omni Portal",
"portalUrl": "www.omnifund.ch",
"providerAddress": {
"countryCode": "CH",
"postalCode": "3944",
"street": "Brandstrasse 2",
"town": "Unterbäch",
"poBox": "PO Box 42"
},
"providerId": "CHE123456789"
},
"pensionStatementType": "regular",
"personId": "JohnDoe_1234",
"personalPensionDetails": {
"earliestRetirementAge": 696,
"financing": {
"contributionSavingsEmployer": 4025,
"contributionSavingsInsuredPerson": 4025
},
"homeOwnershipAvailableForWithdrawal": 31000,
"ordinaryRetirementAge": 780,
"regularPurchaseMaxAmount": 48392.45,
"retirementCapital": {
"balanceMandatoryReferenceDate": 38942.15,
"balanceReferenceDate": 53842.5,
"interestRates": {
"interestRateEnvelopingProjection": 3.175,
"interestRateEnvelopingPurchase": 3.175,
"interestRateEnvelopingSaving": 3.175,
"interestRateMandatoryProjection": 3.175,
"interestRateMandatoryPurchase": 3.175,
"interestRateMandatorySaving": 3.175,
"interestRateSupplementaryProjection": 3.175,
"interestRateSupplementaryPurchase": 3.175,
"interestRateSupplementarySaving": 3.175
},
"lastYearDevelopment": {
"balanceBeginningLastYear": 100000,
"balanceEndLastYear": 106000,
"interestCreditLastYear": 2000,
"interestRatesLastYear": {
"interestRateEnvelopingProjection": 3.175,
"interestRateEnvelopingPurchase": 3.175,
"interestRateEnvelopingSaving": 3.175,
"interestRateMandatoryProjection": 3.175,
"interestRateMandatoryPurchase": 3.175,
"interestRateMandatorySaving": 3.175,
"interestRateSupplementaryProjection": 3.175,
"interestRateSupplementaryPurchase": 3.175,
"interestRateSupplementarySaving": 3.175
},
"oldAgeCreditLastYear": 4000,
"totalDepositsLastYear": 5000,
"totalWithdrawalsLastYear": 5000
},
"projectedRetirementBenefits": [
{
"capitalBalance": 378832.05,
"capitalBalanceMandatory": 284832.15,
"retirementAge": 756,
"capitalBalanceNoInterest": 331285.25,
"capitalBalanceNoInterestMandatory": 248862.65,
"conversionRateEnveloping": 6.3,
"conversionRateMandatory": 6.8,
"conversionRateSupplementary": 5.5,
"pension": 22835
}
],
"balanceEndCurrentYear": 56325.25,
"balanceMandatoryEndCurrentYear": 40846.6,
"transferredCapital": 45210.25,
"transferredCapitalMandatory": 32840.55
},
"riskBenefits": {
"childPensionDisability": 5382,
"lumpSumWithoutPensionBenefits": 92834,
"minimalLumpSumWithPensionBenefits": 74383,
"orphanPensionDeath": 5382,
"partnerPensionDeath": 24817,
"pensionDisability": 40213
},
"salaryData": {
"declaredSalary": 78000,
"employmentLevel": 100,
"insuredSalaryMandatory": 59215,
"insuredSalaryRetirement": 59215,
"insuredSalaryRisk": 59215
},
"vestedBenefits": {
"capitalAtMarriage": 28483.35,
"capitalAtMarriageMandatory": 23863.15,
"capitalFirstCommunicatedDate": "2018-04-13",
"divorceWithdrawals": [
{
"date": "2018-04-13"
}
],
"homeOwnershipWithdrawals": [
{
"date": "2018-04-13"
}
],
"pledges": [
{
"amount": 20000,
"amountMandatory": 20000,
"pledgee": "UBS AG",
"pledgeeAddress": {
"countryCode": "CH",
"postalCode": "3944",
"street": "Brandstrasse 2",
"town": "Unterbäch",
"poBox": "PO Box 42"
}
}
],
"referenceDate": "2018-04-13",
"voluntaryPurchases": [
{
"date": "2018-04-13"
}
]
},
"homeOwnershipAvailableForPledge": 50000
},
"referenceDate": "2018-04-13",
"timeStamp": "2018-04-13T11:11:11Z",
"languageCode": "de",
"pensionStatementId": "550e8450-e59b-21d4-a346-442215440560",
"pensionStatementNo": "PS_ID_6789-ABC"
}
}Changes
- breaking
the response property
////became optional for the status - breaking
the response property
////became optional for the status - breaking
the response property
////became optional for the status - breaking
the response property
////became optional for the status - breaking
the response property
////became optional for the status - breaking
the response property
////became optional for the status - breaking
the response property
////became optional for the status - breaking
the response property
/////became optional for the status - breaking
the response property
////became optional for the status - breaking
the response property
////became optional for the status - breaking
the response property
////became optional for the status - breaking
the response property
////became optional for the status - breaking
the response property
////became optional for the status - breaking
the response property
////became optional for the status - breaking
the response property
////became optional for the status - breaking
the response property
/////became optional for the status - warning
removed the optional property
///from the response with the status - warning
removed the optional property
///from the response with the status - info
added the optional property
/to the response with the status - info
added the optional property
///to the response with the status - info
added the optional property
/to the response with the status - info
added the optional property
///to the response with the status - info
the response property
///became required for the status - info
the response property
//became required for the status - info
the response property
///became required for the status - info
the response property
//became required for the status
- breaking
- breaking
the response property
/////became optional for the status - breaking
the response property
/////became optional for the status - breaking
the response property
/////became optional for the status - breaking
the response property
/////became optional for the status - breaking
the response property
/////became optional for the status - breaking
the response property
/////became optional for the status - info
added the non-success response with the status
- info
added the optional property
//to the response with the status - info
added the optional property
///to the response with the status - info
added the optional property
//to the response with the status - info
added the optional property
///to the response with the status - info
the response property
///became required for the status - info
the response property
///became required for the status - info
added the required property
///to the response with the status - info
added the required property
///to the response with the status
- breaking