Получение контракта по ID
GET   /bs-core/main/contracts/{id}
Метод позволяет получить существующий контракт по его идентификатору.
Определение текущего статуса контракта:
- issueDate is null - контракт не выдан
- issueDate is not null and closeDate is null - контракт открыт
- closeDate is not null - контракт закрыт
Запрос
GET /bs-core/main/contracts/10134296 HTTP/1.1
Нет описанных параметров
Ответ
{
"status": "ok",
"timestamp": 1548255414171,
"data": {
"id": 101342168,
"name": "002086",
"creationDate": "2019-01-23",
"donorId": 101091,
"branchId": 101306,
"subdivisionId": 101791,
"clientId": 101322927,
"currencyId": 101011,
"loanAmount": 10088,
"loanCategoryId": 101144,
"loanApplicationId": 101133126,
"loanStage": 1,
"issuePlanDate": "2019-01-23",
"firstRepaymentDate": "2019-02-22",
"repaymentPlanDate": "2019-05-23",
"comment": "",
"creditOfficerId": 1010824,
"documentsReceived": false,
"forIssue": true,
"underCourt": false,
"underCourtDate": null,
"institutionDate": null,
"determinationDate": null,
"underCourtAmount": 0,
"captive": false,
"contractAgentId": null,
"ofertaCode": "",
"insurancePolicy": "",
"loadingDate": null,
"prevProlongationsQty": null,
"definedIntForepaymentAmount": 0,
"msfoReserveRate": 0,
"barcode": null,
"merchantCommissionRate": 0,
"creditProductId": 10133178,
"creditProductName": "21% капитал",
"creditFieldReq": {
"id": 101195118,
"dateCalcMethodId": 101232,
"allowHolidaysPayment": true,
"shortTermControl": false,
"shiftFirstRepaymentDate": false,
"interestChargeMethodId": 101863,
"interestCalcMethodId": 101223,
"repaymentNorm": 0,
"calcIntOnIssueDate": false,
"calcInterestOnDelinqBalance": true,
"calcArrearInterest": false,
"arrearInterestFirstDay": 0,
"arrearInterestLastDay": 0,
"principalDistribMethodId": 101351,
"forepaymentConsiderationMethodId": 101591,
"creditLineId": null,
"trancheDuration": 30,
"interestForTranche": 1.93,
"delinquencyIntRate": 0,
"delinqIntRateDelay": 0,
"useDelinqIntRateTillNextTranche": true,
"keepUsingDelinqIntRate": false,
"interestRateTypeId": 101123,
"chargeExtraInterest": true,
"interestLgotPeriod": 0,
"interestLgotRate": 0,
"interestGracePeriod": 0,
"trancheCount": 4,
"repaymentSequenceId": 101204,
"mandatoryChargePeriod": 30,
"allowPrepayment": true,
"prolongationPeriod": 20,
"earlyProlongationFromCurrentDate": true,
"prolongationOnNewSchedule": false,
"prolongedIntToLastTranche": true,
"penaltyTypeId": 101272,
"calendarDaysPenalty": true,
"firstWeekendWithoutPenalty": false,
"stopPenaltyOnClose": false,
"qtyDaysStopPenaltyOnClose": 0,
"fixedDelayPenalty": 1000,
"delayPenaltyDay": 10,
"inviteAmountPct": 0,
"inviteDiscountPerFriend": 0,
"inviteMinIntRate": 0,
"scheduleRecalcEnabled": false,
"fullScheduleDatesRecalc": false,
"useDelinqIntRateForPsk": false,
"discountingEnabled": true,
"useEirForDiscounting": false,
"fees": [],
"principalParts": [
{
"id": 101617612,
"trancheNo": 1,
"part": 25
},
{
"id": 101617613,
"trancheNo": 2,
"part": 25
},
{
"id": 101617614,
"trancheNo": 3,
"part": 25
},
{
"id": 101617615,
"trancheNo": 4,
"part": 25
}
],
"penaltyRates": [
{
"id": 101622766,
"periodBegin": 1,
"periodEnd": 50,
"principalRate": 4,
"interestRate": 0,
"feeRate": 0,
"keyRateCB": null,
"keyRateCBTypeId": null
}
],
"qtyTranchesFirstPeriod": 0,
"intRateFirstPeriod": 0,
"qtyTranchesSecondPeriod": 0,
"intRateSecondPeriod": 0,
"qtyTranchesRepNormSecondPeriod": 0,
"interestOnLoanAmount": false
},
"contractCollectorId": null,
"repaymentNorm": 0,
"additional": false,
"joinFee": 0,
"fixedJoinFee": 0,
"insuranceFee": 0,
"fixedInsuranceFee": 0,
"estimateFee": 0,
"fixedEstimateFee": 0,
"insurance": false,
"insurancePremiumRate": 0,
"insurancePremiumAmount": 0,
"contractTypeId": 101911,
"issueDate": 1548190800000,
"fullCostOfCredit": 704.448,
"eirForInvestor": 704.45,
"marketRate": 0,
"closeDate": null,
"closedStatusId": null,
"dropOutDate": null,
"clientGroupId": null,
"groupConventionId": null,
"restructedContractId": null,
"prolonged": false,
"createUserId": 1082,
"createSubdivisionId": 101791,
"contactDocId": null,
"contactNewOutgoingDate": null,
"contactTrnReference": null,
"schedules": [
{
"id": 10147240,
"creationDate": 1548190800000,
"amount": 10088,
"chargeIssueFee": true,
"specifiedRepaymentNorm": 0,
"issued": true,
"activeBefore": null,
"tranches": [
{
"id": 101478327,
"issueDate": "2019-01-23",
"repaymentDate": "2019-02-22",
"principal": 2522,
"interest": 5841,
"lgot": false,
"eachRepaymentFee": 0,
"rest": 7566
},
{
"id": 101478328,
"issueDate": "2019-02-22",
"repaymentDate": "2019-03-24",
"principal": 2522,
"interest": 4381,
"lgot": false,
"eachRepaymentFee": 0,
"rest": 5044
},
{
"id": 101478329,
"issueDate": "2019-03-24",
"repaymentDate": "2019-04-23",
"principal": 2522,
"interest": 2920,
"lgot": false,
"eachRepaymentFee": 0,
"rest": 2522
},
{
"id": 101478330,
"issueDate": "2019-04-23",
"repaymentDate": "2019-05-23",
"principal": 2522,
"interest": 1460,
"lgot": false,
"eachRepaymentFee": 0,
"rest": 0
}
]
}
],
"autoCalcSchedule": true,
"contractLine": {
"id": 101601867,
"lineLimit": null
},
"currentStatusId": 101281,
"indexed": false,
"issueInProcess": false,
"lastIntLimitDate": null
}
}
Описание параметров
Параметр | Обязателен | Тип данных | Описание |
id | R | [int][20] | Идентификатор контракта (при создании нового контракта - его указывать не нужно) |
name | R | [string][50] | Номер контракта |
creationDate | R | [date] | Дата создания в формате YYYY-MM-DD |
donorId | R | [int][20] | Источник финансирования |
branchId | R | [int] | |
subdivisionId | R | [int] | |
clientId | R | [int] | Идентификатор клиента |
currencyId | R | [int] | |
loanAmount | R | [float] | Сумма займа |
loanCategoryId | R | [int] | |
loanApplicationId | R | [int] | Идентификатор заявки на займ |
loanStage | R | [int] | Ступень займа. Механизм проставления loanStage следующий: |
issuePlanDate | R | [date] | Дата плановой выдачи в формате YYYY-MM-DD |
firstRepaymentDate | R | [date] | Дата первого погашения в формате YYYY-MM-DD |
repaymentPlanDate | R | [date] | Дата планового погашения в формате YYYY-MM-DD |
comment | R | [string][50] | Комментарий |
creditOfficerId | R | [int] | |
documentReceived | R | [bool] | Оригиналы документов получены |
forIssue | R | [bool] | Флаг "К выдаче" |
underCourt | R | [bool] | Флаг Судебник |
underCourtDate | R | [date] | Дата обращения в суд |
institutionDate | R | [date] | Дата поставления о возбуждении |
determitionDate | R | [date] | Дата поставления об удержании |
underCourtAmount | R | [float] | Исковая сумма задолженности |
captive | R | [bool] | Каптивный |
contractAgentId | R | [int] | |
ofertaCode | R | [string][25] | Код оферты |
insurancePolicy | R | [string][50] | Страховой полис |
loadingDate | R | [date] | Дата загрузки (если контракт был перенесён из сторонней системы ведения учета). Дата загрузки в данное поле автоматически записывается дата миграции контракта. При этом поле Дата загрузки = дате на которую грузим остатки. Все расчеты по контракту будут начинаться с этой даты. Если контракт был создан в BS (не мигрирован), то в поле будет значение NULL. |
prevProlongationsQty | R | [int][11] | Предыдущее кол-во пролонгаций/реструктуризаций (при переносе из сторонней системы ведения учета) |
definedIntForepaymentAmount | R | [float] | Заданная сумма для распределения предоплаты по процентам |
msfoReserveRate | R | [float] | |
creditProductId | R | [int][20] | |
creditProductName | R | [string][250] | Наименование кредитного продукта |
creditFieldReq | R | [object] | Условия кредита |
creditFieldReq.id | R | [int] | Идентификатор условия кредита |
creditFieldReq.dateCalcMethodId | R | [int] | |
creditFieldReq.allowHolidaysPayment | R | [bool] | Не переносить с праздников и выходных |
creditFieldReq.shortTermControl | R | [bool] | Контроль краткосрочности займа |
creditFieldReq.interestChargeMethodId | R | [int] | |
creditFieldReq.interestCalcMethodId | О | [int][20] | |
creditFieldReq.repaymentNorm | R | [float] | Норма погашения |
creditFieldReq.calcIntOnIssueDate | R | [bool] | Начислять проценты в день выдачи контракта (в этом случае проценты начисляются и на первый и на последний день транша) |
creditFieldReq.calcInterestOnDelinqBalance | R | [bool] | Начислять процента на просроченную ОС |
creditFieldReq.calcArrearInterest | R | [bool] | Начислять доп. проценты на просроченную ОС (отдельным видом суммы) |
creditFieldReq.arrearInterestFirstDay | R | [int] | первый день начисления доп.процентов на просроченную ОС |
creditFieldReq.arrearInterestLastDay | R | [int] | последний день начисления доп.процентов на просроченную ОС |
creditFieldReq.principalDistribMethodId | О | [int][20] | |
creditFieldReq.forepaymentConsiderationMethodId | R | [int] | |
creditFieldReq.creditLineId | R | [int] | Тип кредитной линии |
creditFieldReq.trancheDuration | R | [int] | Длительность периода между погашениями |
creditFieldReq.interestForTranche | R | [float] | Процентная ставка |
creditFieldReq.delinquencyIntRate | R | [float] | Процентная ставка при просрочке |
creditFieldReq.delinqIntRateDelay | R | [int][11] | Кол-во дней до перехода на ставку при просрочке. Если в поле delinqIntRateDelay значение 0 - то процентная ставка при просрочке используется с первого дня начисления процентов на транш (если по предыдущим траншам есть просрочка), иначе - обычная процентная ставка будет продолжать действовать с начала транша указанное кол-во дней. |
creditFieldReq.useDelinqIntRateTillNextTranche | R | [bool] | Возвращение к регулярной процентной ставке со следующего транша после погашения просрочки. Если поле useDelinqIntRateTillNextTranche = ДА (true), то возврат к обычной ставке после погашения просрочки будет с начала следующего транша, если НЕТ (false) - со следующего дня после погашения просрочки. |
creditFieldReq.keepUsingDelinqIntRate | R | [bool] | Продолжать применять ставку при просрочке после выхода из просрочки. В случае, если это поле проставлено, то ставка при просрочке будет использоваться для расчета процентов после возникновения первой просрочки и до конца контракта. Важно, что наличие предыдущих просрочек определяется по наличию соответствующих статусов контракта (Просроченный, Реструктурированный просроченный). |
creditFieldReq.interestRateTypeId | R | [int] | |
creditFieldReq.chargeExtraInterest | R | [bool] | Начислять проценты по окончанию срока кредита |
creditFieldReq.interestFreePeriod | R | [int] | Беспроцентный период в днях |
creditFieldReq.interestGracePeriod | R | [int] | Беспроцентный льготный период (в днях) |
creditFieldReq.trancheCount | R | [int] | Количество траншей |
creditFieldReq.repaymentSequenceId | R | [int] | |
creditFieldReq.verticalSequenceForDelinqOnly | R | [bool] | Погашать вертикально только просроченные транши |
creditFieldReq.mandatoryChargePeriod | R | [int] | Период обязательного начисления процентов |
creditFieldReq.allowPrepayment | R | [bool] | Возможно погашение до срока при автоакцепте |
creditFieldReq.ProlongationPeriod | R | [int] | Срок пролонгации |
creditFieldReq.earlyProlongationFromCurrentDate | R | [bool] | Досрочная пролонгация с текущей даты (иначе пролонгация с даты окончания текущего транша) |
creditFieldReq.prolongationOnNewSchedule | R | [bool] | Создавать новый график при пролонгации (иначе добавляются новые транши к существующему). Возможность добавлена как опция (для обратной совместимости). |
creditFieldReq.prolongedIntToLastTranche | R | [bool] | Переносить проценты по пролонгированным контрактам на последний транш. Для того чтобы проценты не переносились как отсроченные после пролонгации - в контракте в этом поле должно быть значение false. |
creditFieldReq.penaltyTypeId | R | [int] | |
creditFieldReq.calendarDaysPenalty | R | [bool] | Штраф по календарным дням |
creditFieldReq.firstWeekendWithoutPenalty | R | [bool] | Первые выходные штрафы не начислять. При установке в кредитном продукте "Первые выходные штрафы не начислять" - "true" штрафы будут начисляться в первый рабочий день после выходных или праздников, если в этот день не будет произведено уплаты. По умолчанию значение этого параметра равно "false". Например: Дата планового погашения 4 января 2018. При ежедневной обработке штрафы не должны начисляться до 9-го января 2018 (9 января первый рабочий день). Если 9 января не было произведено погашения, то при ежедневной обработке начиная с 9 января будут начисляться штрафы. А с 4 января по 9 января котракт будет иметь статус "просрочен". |
creditFieldReq.stopPenaltyOnClose | R | [bool] | Останавливать штрафы после окончания графика |
creditFieldReq.qtyDaysStopPenaltyOnClose | R | [int] | Кол-во дней после окончания графика до остановки штрафов |
creditFieldReq.fixedDelayPenalty | R | [float] | Штраф за опоздание (Фиксированная сумма) |
creditFieldReq.delayPenaltyDay | R | [int] | День просрочки для начисления штрафа за опоздание |
creditFieldReq.inviteAmountPct | R | [float] | Процент от суммы выдачи (по которому определяем считать ли другом) |
creditFieldReq.inviteDiscountPerFriend | R | [float] | Снижение процентной ставки за каждого друга |
creditFieldReq.inviteMinIntRate | R | [float] | Минимальная процентная ставка |
creditFieldReq.scheduleRecalcEnabled | R | [bool] | Перерасчет графика в дату планового платежа |
creditFieldReq.fullScheduleDatesRecalc | R | [bool] | Полное смещение графика от фактической даты выдачи |
creditFieldReq.useDelinqIntRateForPsk | R | [bool] | Использовать процентную ставку при просрочке для расчета ПСК. Если по контракту в этом поле проставлено ДА, а также процентная ставка при просрочке не нулевая, то при расчете ПСК по контракту создаётся график с учетом процентной ставки при просрочке и ПСК рассчитывается от этого графика. |
creditFieldReq.discountingEnabled | R | [bool] | Дисконтирование активировано |
creditFieldReq.fees | R | [collection] | Сборы |
creditFieldReq.fees._.id | R | [int] | Идентификатор |
creditFieldReq.fees._.amountTypeId | О | [int][20] | |
creditFieldReq.fees._.chargeMomentId | R | [int] | Момент начисления |
creditFieldReq.fees._.valueTypeId | R | [int] | |
creditFieldReq.fees._.chargeBaseId | R | [int] | |
creditFieldReq.fees._.value | R | [float] | Значение |
creditFieldReq.fees._.compositeValue | R | [string][100] | Составная ставка |
creditFieldReq.fees._.chargePenalty | R | [bool] | Штраф за просрочку |
creditFieldReq.fees._.notForCharge | R | [bool] | Не начислять |
creditFieldReq.fees._.notForRepayment | R | [bool] | Не погашать |
creditFieldReq.fees._.involvedInFullCostCalc | R | [bool] | Участвует в расчете ПСК |
creditFieldReq.principalParts | R | [collection] | Части основной суммы |
creditFieldReq.principalParts._.id | R | [int] | Идентификатор транша |
creditFieldReq.principalParts._.trancheNo | R | [int] | Порядковый номер транша |
creditFieldReq.principalParts._.part | R | [float] | Доля основной суммы в процентах |
creditFieldReq.penaltyRates | R | [collection] | Ставки штрафа |
creditFieldReq.penaltyRates._.id | R | [int] | Идентификатор ставки |
creditFieldReq.penaltyRates._.periodBegin | R | [int] | Начало периода начисления штрафов |
creditFieldReq.penaltyRates._.periodEnd | R | [int] | Конец периода начисления штрафов |
creditFieldReq.penaltyRates._.principalRate | R | [float] | Ставка на ОС |
creditFieldReq.penaltyRates._.interestRate | R | [float] | Ставка на проценты |
creditFieldReq.penaltyRates._.feeRate | R | [float] | Ставка на сбор |
creditFieldReq.qtyTranchesFirstPeriod | R | [int] | Кол-во траншей в 1-м периоде |
creditFieldReq.intRateFirstPeriod | R | [float] | Процентная ставка в 1-м периоде |
creditFieldReq.qtyTranchesSecondPeriod | R | [int] | Кол-во траншей в 2-м периоде |
creditFieldReq.intRateSecondPeriod | R | [float] | Процентная ставка в 2-м периоде |
creditFieldReq.interestOnLoanAmount | R | [bool] | Рассчитывать проценты от суммы в контракте |
creditFieldReq.qtyTranchesRepNormSecondPeriod | О | [int][11] | Количество траншей для расчета нормы погашения второго периода. Это поле сейчас имеет смысл отображать только при выборе метода расчета процентов (параметр interestCalcMethodId) Остаточный с двумя ставками (101226). Если это поле больше нуля, то при расчете графика для второго периода рассчитывается норма погашения исходя из указанного кол-ва траншей, рассчитанная норма погашения сохраняется в контракте. |
contractCollectorId | R | [int] | Идентификатор коллектора |
repaymentNorm | R | [float] | Норма погашения |
additional | R | [bool] | Дополнительный |
joinFee | R | [float] | Вступительный взнос (Ставка) |
fixedJoinFee | R | [float] | Фиксированный вступительный взнос (Сумма) |
insuranceFee | R | [float] | Страховочный взнос (Ставка) |
fixedInsuranceFee | R | [float] | Фиксированный страховочный взнос (Сумма) |
estimateFee | R | [float] | Сметный взнос (Ставка) |
fixedEstimateFee | R | [float] | Фиксированный сметный взнос (Сумма) |
insurance | R | [bool] | Страхование |
insurancePremiumRate | R | [float] | Ставка страховой премии |
insurancePremiumAmount | R | [float] | Сумма страховой премии |
contractTypeId | R | [int] | Идентификатор типа контракта |
issueDate | R | [date] | Дата выдачи контракта |
fullCostOfCredit | R | [float] | ПСК |
eirForInvestor | R | [float] | ЭПС (для инвестора). Поле добавлено в 2.0.0-69 релизе в метаданные как read-only (нельзя поменять из интерфейса). |
marketRate | R | [float] | Рыночная ставка. Поле добавлено в 2.0.0-69 релизе в метаданные как read-only (нельзя поменять из интерфейса). |
closeDate | R | [date] | Дата закрытия контракта |
closedStatusId | R | [int] | Идентификатор статуса закрытия контракта:
|
dropOutDate | R | [date] | Дата полного погашения ОС |
clientGroupId | R | [int] | |
groupConventionId | R | [int] | |
restructedContractId | R | [int] | Ссылка на реструктурированный контракт |
prolonged | R | [bool] | Был пролонгирован |
createUserId | R | [int] | Идентификатор пользователя, создавшего контракт |
createSubdivisionId | R | [int] | Идентификатор подразделения пользователя, создавшего контракт |
contactDocId | R | [String] | Результат выполнения запроса NewOutgoing сервисом Contact |
contactNewOutgoingDate | R | [date] | Дата+время успешного выполнения запроса NewOutgoing |
contactTrnReference | R | [string] | Код получения перевода Contact (если не пусто - запрос PayOutgoing выполнился успешно) |
schedules | R | [collection] | Графики |
schedules._.id | R | [int] | Идентификатор графика |
schedules._.creationDate | R | [timestamp] | Дата создания |
schedules._.amount | R | [float] | Сумма |
schedules._.chargeIssueFee | R | [bool] | Начислять сборы при выдаче |
schedules._.specifiedRepaymentNorm | R | [float] | Норма погашения (заданное значение) |
schedules._.issued | R | [bool] | Выдан |
schedules._.activeBefore | R | [date] | Дата, до которой график является активным (используется для перерасчета графиков) |
schedules._.tranches | R | [collection] | Транши |
schedules._.tranches._. id | R | [int] | Идентификатор транша |
schedules._.tranches._. issueDate | R | [date] | Дата начала транша в формате YYYY-MM-DD |
schedules._.tranches._. repaymentDate | R | [date] | Дата окончания транша в формате YYYY-MM-DD |
schedules._.tranches._. principal | R | [float] | ОС |
schedules._.tranches._. interest | R | [float] | Проценты |
schedules._.tranches._. lgot | R | [bool] | Льготный |
schedules._.tranches._. eachRepaymentFee | R | [float] | Сборы при каждом погашении (расчетное значение) |
schedules._.tranches._.rest | R | [float] | Остаток ОС |
autoCalcSchedule | R | [bool] | График был рассчитан автоматически при выдаче |
contractLine | R | [object] | Линия нарушения последовательности |
contractLine.id | R | [int] | Идентификатор границы последовательности |
contractLine.lineLimit | R | [int] | Граница последовательности |
currentStatusId | R | [int] | Текущий системный статус контракта. Возможные значения можно посмотреть в методе История статусов |
indexed | R | [bool] | Является ли контракт индексированным (валютным) |
issueInProcess | R | [bool] | В процессе выдачи |