По формуле: расчёт нужен по стандартной аннуитетной схеме, но со своей ставкой для залоговых и беззалоговых сценариев — ставки должны задаваться отдельными параметрами, а не быть зашиты в код намертво, потому что организация периодически их меняет. Важно продумать пограничные случаи: слишком маленькая или слишком большая запрошенная сумма, нулевой или чрезмерно длинный срок — виджет должен показывать понятное сообщение, а не ломаться и не выдавать бессмысленные цифры.
По оформлению сайт уже свёрстан, поэтому виджет должен вписаться в текущий дизайн без своего фреймворка, корректно отображаться на мобильных экранах, поскольку основной трафик именно оттуда, и обновляться в реальном времени при движении ползунков. Отдельно нужна короткая памятка по коду — как потом менять ставки и лимиты без повторного привлечения разработчика.