Метод для расчета графика в кредитном калькуляторе
Метод позволяет расчитать (подобрать) сумму займа или кол-во траншей. Для этого метода API добавлены два необязательных булиновых параметра: calcTrancheCount - для расчета кол-ва траншей и calcLoanAmount - для расчета суммы займа. Если эти параметры не передавать, то кредитный калькулятор работает как обычно. Одновременно нельзя передавать оба параметра, так как рассчитывается либо сумма займа либо кол-во траншей, иначе возвращается ошибка с кодом CANNOT_CALC_TWO_PARAMS_ERROR. Расчет кол-ва траншей: POST /bs-core/main/credit-calculator/calc-schedule?calcTrancheCount=true Расчет суммы займа: POST /bs-core/main/credit-calculator/calc-schedule?calcLoanAmount=true Для этих расчетов должна быть указана норма погашения в кредитном калькуляторе (поле repaymentNorm). Для остаточных методов расчета процентов в этом поле должна быть передана норма, к которой стремимся при подборе аннуитета на всех траншах, для комбинированного или простого метода расчета - в этом поле должна быть передана максимальная сумма платежа (ОС + проценты) - сумма платежа первого транша. Для остаточных методов расчета процентов расчет выполняется методом подбора: Если подбираем кол-во траншей, то за начальное значение принимаем целую часть от деления суммы займа на норму погашения, и далее увеличиваем кол-во траншей на единицу до тех пор пока не подберём подходящий график. Если подбираем сумму займа, то за начальное значение принимаем норму погашения умноженную на кол-во траншей, и далее уменьшаем сумму на 1 процент от нормы погашения до тех пор пока не подберём подходящий график. Нужно учесть что подбор продолжается до тех пор пока разница не будет меньше либо равна значению из константы "Приемлемая разница между нормой погашения последнего и предпоследнего транша", то есть как только мы достигаем приемлемой разницы - выходим из подбора. Также подбор прекращается если разница текущего расчета стала больше разницы предыдущего. В этом случае считаем что предыдущий график являлся наилучшим вариантом. Также подбор прекращается по достижении 1000-ной итерации цикла (чтобы гарантировать отсутствие бесконечных циклов при подборе). Для комбинированного или простого метода рассчитываем кол-во траншей или сумму займа исходя из нормы погашения (поле repaymentNorm), в котором должна быть передана максимальная сумма платежа (ОС и проценты первого транша). Подразумеваем что ОС должна быть распределена равномерно по всем траншам.
Query Parameters
calcLoanAmount
calcTrancheCount
Request Body required
request
- Array [
- ]
- Array [
- ]
- Array [
- ]
calcParams object
creditField object
fees object[]
Possible values: [FROM_DELINQUENCY_START_BY_STATUS
, FROM_TRANCHE_REPAYMENT_DATE
]
penaltyRates object[]
principalParts object[]
- 200
- 201
- 401
- 403
- 404
OK
Schema
- Array [
- Array [
- ]
- ]
contractFields object
tranches object[]
eachRepaymentFeeByType object[]
{
"activeBefore": "2024-11-20T07:47:08.408Z",
"amount": 0,
"chargeIssueFee": true,
"contractFields": {
"intRate": 0,
"loanAmount": 0,
"repaymentNorm": 0,
"trancheCount": 0
},
"creationDate": "2024-11-20T07:47:08.408Z",
"eachRepaymentFeeFree": true,
"id": 0,
"issued": true,
"specifiedRepaymentNorm": 0,
"tranches": [
{
"eachRepaymentFee": 0,
"eachRepaymentFeeByType": [
{
"amount": 0,
"amountType": 0,
"feeId": 0
}
],
"id": 0,
"interest": 0,
"issueDate": "2024-11-20",
"lgot": true,
"principal": 0,
"repaymentDate": "2024-11-20",
"rest": 0
}
]
}
Created
Unauthorized
Forbidden
Not Found