Частичная оплата на любую сумму

Сделать оплату произвольной суммы в форме, часто используемую для приема донатов, не трудно. А вот реализовать частичную оплату на любую сумму на Геткурс сходу у меня не получалось.

Мысль об этой реализации давно сидела в моей голове и не хотела уходить. А тут еще и проект пришел за настройкой, где эта возможность частичной оплаты смотрелась как никуда кстати.

Поэтому решил «убить» полдня, но теперь и вы сможете у себя в проектах сделать вот так:

Пример: вы хотите принимать предзаказы на тренинг. Но не просто заявки (нулевые или с фиксированной суммой), а чтобы клиенты уже могли внести ЛЮБУЮ часть на свое усмотрение СРАЗУ после заполнения формы. А потом просто доплатить остаток в частично оплаченном заказе.

Что нам с вами потребуется:

1. Создаем дополнительное поле пользователя с любым названием. Это название не будет видно пользователям, но в дальнейшем будет задействовано.

Частичная оплата на любую сумму

2. Создаем процесс по пользователям. Не запускаем его. Он должен быть в статусе «отключен».

Частичная оплата на любую сумму

Здесь все просто — на входе ждём 5 минут и очищаем поле.

Обратите внимание — значение должно быть пустое (серый нолик все равно будет отображаться), по умолчанию там стоит реальное значение 0, которое необходимо просто стереть.

Частичная оплата на любую сумму

3. Добавляем в нашу форму созданное дополнительное поле, сюда ваши ученики могут вписывать сумму, которую они готовы сразу оплатить, чтобы «забронировать»

Частичная оплата на любую сумму

4. В обработчике формы обязательно добавляем полную авторизацию без пароля и запуск нашего созданного процесса.

Частичная оплата на любую сумму

5. Теперь нам надо дополнить страницу оформления заказа. Для этого заходим Страницы -> Системные страницы -> Оплата заказа
Здесь под последним блоком добавляем 2 наших блока: html и javascript

Частичная оплата на любую сумму
Частичная оплата на любую сумму

HTML-блок. Заходим в редактирование блока, переключаемся на режим кода (фон станет черным) и вставляем туда наш код:

<p id="firstsum" style="opacity: 0;">
	{sum}
</p>

Здесь на второй строке между скобок необходимо написать имя дополнительного поля, которое вы выбрали при создании.

Также обязательно в этом блоке ставим замену переменных:

Частичная оплата на любую сумму

Javascript-блок. Здесь все просто — копируем и вставляем текст:

$(function(){
var text = $('#firstsum').text().trim();
if(window.location.search.indexOf("paymentValue") != 1 && text > 1) {
    window.location.href = window.location.search + "?paymentValue=" + text;
  } 
});

Три-четыре. Закончили.

Важно: возможно, в силу специфики логики работы вашего проекта, такой способ вам не подойдет. Я пока сходу не могу придумать ситуацию, где это может не сработать. Но когда настройки выходят за рамки стандартного функционала Геткурса, есть вероятность появления нестандартных ситуаций, имейте ввиду 😊

О таком можете мне сообщать, будем «допиливать»

И ещё:

Не забудьте также отправить письмо по заказам с переменной {payment_link}?paymentValue={sum}, чтобы у пользователей осталась ссылка на частичную оплату своей суммы, а то ведь мы процессом очищаем её.

Также может быть полезным:
Оцените статью
Добавить комментарий

  1. Антон

    Что-то не совсем получилось. В обработчике формы мы не ставим никакое предложение, ничего? просто авторизовать и запустить процесс?

    Ответить
    1. Василий Брежнев автор

      в примере заказ создается через предложение на форме, дополнительно в обработчике заказ не создается

      Ответить
      1. Антон

        Т.е. на форме у нас предложение + поле sum, в поле sum вводим сумму, которую хотим частично оплатить, и жмем оплатить. На обработчике висит только авторизация + очищение суммы, но после нажатия кнопки оплатить перекидывает на стандартную страницу оплаты предложения 🙁

        Ответить
        1. Василий Брежнев автор

          да, так и должно быть, перекидывает на страницу оплаты, потом страничка сама обновляется, подставляя значении частичной оплаты в ссылку, тем самым включая оплату части на сумму {sum}. Скрипты все добавили на страницу оплаты? Может просто что обновилось у геткурса, перепроверю на неделе эту инструкцию

          Ответить
  2. Анна

    Вот если бы еще можно было ограничить сумму взноса, например не менее 1000 р

    Ответить