Skip to content

Метод фасада для запуска возврата товара

POST

Краткое описание логики работы метода:

  • Валидация на заполнение обязательных полей, корректность сумм нового графика и проверка отсутствия просроченных сумм по кредитному контракту.

  • Выяснение типа возврата - полный или частичный (полный в случае, если Сумма возврата совпадает с суммой текущего графика)

  • Запуск кастомизированного документа Восстановление (при полном возврате восстанавливаются все погашения кроме штрафов, при частичном - восстанавливается только погашенная ОС)

  • Если возврат полный - списываем все суммы по контракту с видом движения Корректировка

  • Если частичный возврат - делается перерасчет графика по переданному новому графику (корректировка списания ОС, сохранение нового графика, корректировка выдача ОС на новый график - включая прошедшие транши)

  • Получаем сумму, которую восстановили документом Восстановление выше и на эту сумму пополняем лицевой счет (пай) - новый документ для пополнения пая без ДДС

  • Запускаем докумет Погашение реакцепт всех кредитных контрактов клиента за счет доп.пая - новый документ, работает также как документ погашения контрактов за счет пая, только создаёт операции с видом движения Погашение реакцепт.

Важно - метод создаёт документы как по кредитному контракту, так и по паю-лицевому счету, поэтому при необходимости отката нужно будет удалять документы по обоим этим контрактам.

Коды ошибок:

  • NO_DATA_ERROR - никакие данные не переданы

  • NO_RETURN_AMOUNT_ERROR - Не указана сумма возврата

  • CONTRACT_NAME_IS_NOT_SPECIFIED_ERROR - Не передан номер кредитного контракта

  • CONTRACT_NOT_FOUND_BY_NAME_ERROR - Не найден кредитный контракт по переданному номеру

  • CONTRACT_MUST_BE_ISSUED_ERROR - Кредитный контракт не выдан

  • CONTRACT_IS_OVERDUE_ERROR - По контракту есть просроченные суммы

  • TRANCHE_TOTAL_PRINCIPAL_NOT_EQUAL_REMAINED_AMOUNT_ERROR - Суммы ОС на траншах не соответствуют остатку ОС по контракту после возврата

  • Коды ошибок для переданного графика (аналогичные проверки как и для метода выдачи займа)

Request Body

application/json
object

Номер контракта

Дата в формате unix timestamp в миллисекундах. Поле не является обязательным (если не передано - используется текущие дата-время)

Format"date-time"
object[]

Идентификатор вида суммы. Это поле является условно обязательным. Если передается коллекция fees, то тогда этот параметр является обязательным

Format"int64"
Format"int64"

Идентификатор момента начисления сбора. Это поле является условно обязательным. Если передается коллекция fees, то тогда этот параметр является обязательным

Format"int64"

Штраф за просрочку. Это поле не обязательно. Его значение по умолчанию равно false

Участвует в расчёте ПСК. Это поле не обязательно. Его значение по умолчанию равно true

Не начислять. Это поле не обязательно. Его значение по умолчанию равно false

Не погашать. Это поле не обязательно. Его значение по умолчанию равно false

Значение

Format"double"
Format"int64"
object
object[]

Транши

object

Новый график. Поле newSchedule можно не передавать в случае если происходит полный возврат

object[]

Транши

Сумма возврата

Format"double"

Responses

OK

*/*
object

При успешном вызове возвращается пустая строка. Иначе метод возвращает ошибку

Статус запроса (ok/error)

Valid values"error""ok"

Дата и время запроса (unix timestamp в мс)

Format"int64"