Подключение оплаты YooMoney

Подключение оплаты к форме

В настройках формы нужно указать действие “Вставка HTML кода”, или другое подобное.

В поле “Код для вставки” нужно вставить код:

<form id="form<%= order_id %>" method="POST" action="https://yoomoney.ru/quickpay/confirm.xml">
  <input type="hidden" name="receiver" value="41000000000000">
  <input type="hidden" name="quickpay-form" value="shop">
  <input type="hidden" name="targets" value="Доступ к контактам <%= member_id %>">
  <input type="hidden" name="paymentType" value="AC">
  <input type="hidden" name="sum" value="3" data-type="number">
  <input type="hidden" name="label" value="Оплата доступа:<%= member_id %>:Подписка на 3 месяца">
  <input type="hidden" name="formcomment" value="Creatium Demo: оплата доступа к контактам на 3 месяца">
  <input type="hidden" name="short-dest" value="Creatium Demo: оплата доступа к контактам на 3 месяца">
  <input type="hidden" name="successURL" value="https://mysite.ru/catalog?success-payment=<%= order_id %>">
  <input type="submit" value="Перевести">
</form>

<script>
  document.getElementById("form<%= order_id %>").submit();
</script>

В коде нужно заменить несколько частей:

  • 41000000000000 на номер кошелька YooMoney
  • Доступ к контактам <%= member_id %> на назначение платежа (рекомендуем на всякий случай в назначении указывать или номер пользователя <%= member_id %> или номер заявки <%= order_id %>)
  • Оплата доступа:<%= member_id %>:Подписка на 3 месяца это данные платежа, которые затем придут в вебхук, тут через двоеточие нужно указать все данные, необходимые для того, чтобы с этим платежом работать дальше в интегромате. Можно не менять формат, а так и оставить 3 значения через двоеточие.
  • Creatium Demo: оплата доступа к контактам на 3 месяца описание платеж, которое будет видеть покупатель
  • https://mysite.ru/catalog?success-payment=<%= order_id %> ссылка, куда будет перенаправлен покупатель после успешной оплаты
Еще один пример кода
<form id="form<%= order_id %>" method="POST" action="https://yoomoney.ru/quickpay/confirm.xml">
  <input type="hidden" name="receiver" value="41000000000000">
  <input type="hidden" name="quickpay-form" value="shop">
  <input type="hidden" name="targets" value="Размещение объявления <%= order_id %>">
  <input type="hidden" name="paymentType" value="AC">
  <input type="hidden" name="sum" value="2" data-type="number">
  <input type="hidden" name="label" value="Оплата объявления:<%= order_id %>:Единый тариф">
  <input type="hidden" name="formcomment" value="Creatium Demo: платное размещение объявления">
  <input type="hidden" name="short-dest" value="Creatium Demo: платное размещение объявления">
  <input type="hidden" name="successURL" value="https://mysite.ru/cabinet?success-payment=<%= order_id %>">
  <input type="submit" value="Перевести">
</form>

<script>
  document.getElementById("form<%= order_id %>").submit();
  </script>

Обработка вебхука

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

Данные в вебхук приходят так:

Из всего этого нам полезно поле label, которое содержит информацию о платеже.

Сразу после приема вебхука нужно добавить действие “Match pattern”:

В этом действии настроить обработку поля label по следующему шаблону: (?<Назначение>.+)\:(?<Номер>.+)\:(?<Тариф>.+).

В результате этот модуль будет возвращать 3 поля: Назначение, Номер и Тариф, которые затем можно использовать в сценарии.

 

Работает на Creatium