Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Image Added

Платёжный виджет позволяет встроить платежную систему в всплывающем окне непосредственно на сайт, где производится оплата товара, без перевода клиента на стороннюю страницу для оплаты.

...

Code Block
<!DOCTYPE html>
<html>
<head>
<title>Тестовая платежная страница</title>
<!-- Подключенный JQUERY -->
<script  src="https://code.jquery.com/jquery-3.6.3.js"></script>
<!-- Подключаем скрипт платежного виджета -->
<script src="https://merchant.intellectmoney.ru/v2/js/IntellectMoneyMerchantWidget.js"></script></head>
</head>
<body>

<div>
  <script>
		// Инициализация виджета с передачей необходимых параметров
	 	var payInvoice = () => {
		      return IntellectMoneyMerchantWidget.Configuration.init({
       					EshopId: '123456',
        				OrderId: '666333',
        				ServiceName: 'Тестовый заказ',
        				RecipientCurrency: 'RUB',
        				RecipientAmount: 100.00,
        				Email: 'asdf@mail.ru',
        				SuccessUrl: '',
        				FailUrl: '',
       					Preference: '',
        				UserField_1: '',
        				UserField_2: ''
     		 });
		}

	// Обработчик клика на кнопку оплаты товара (который запустит платежный виджет)
	 $(function() {
	      $('#pay').click(() => {
			payInvoice();
		  })
	 });
	    
  </script>

<!-- Кнопка оплаты товара-->
<div id="pay">Оплатить товар</pay>
</div>
</body>
</html>


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

...

Code Block
<!DOCTYPE html>
<html>
<head>
<title>Тестовая платежная страница</title>
<!-- Подключаем скрипт платежного виджета -->
<script src="https://merchant.intellectmoney.ru/v2/js/IntellectMoneyMerchantWidget.js"></script></head>
</head>
<body>

<div>
  <script>
		// Инициализация виджета с передачей необходимых параметров
	 	var payInvoice = () => {
		      return IntellectMoneyMerchantWidget.Configuration.init({
        				InvoiceId: '3015690797',
       					EshopId: '123456',
        				OrderId: '666333',
        				ServiceName: 'Тестовый заказ',
        				RecipientCurrency: 'RUB',
        				RecipientAmount: 100.00,
        				Email: 'asdf@mail.ru',
        				SuccessUrl: '',
        				FailUrl: '',
       					Preference: '',
        				UserField_1: '',
        				UserField_2: ''
					},
					{
					 	onSuccess: function (options) { // success
							//действие при успешной оплате
							console.log(options)
						},
					    onClosedWindow: function () { // success
							//действие при закрытии окна виджета
       						console.log('closed Window');
						},
					}
     		 });
		}

		// Запуск виджета
	    window.onload = payInvoice();
  </script>
</div>

</body>
</html>


Для работы с физ. лицами, необходимо дополнительно передать параметры:

EshopId = 450157;
UserFieldName_0 = "Перевод в кошелек";
UserField_0 = 13132131312; //Данное значение можно получить в Личном кабинете (идентификатор аккаунта AccountId)
UserFieldName_9 = 'UserPaymentFormId';
UserField_9 = 3564; //Данное значение можно получить в Личном кабинте (идентификатор формы FormId)
FormType = 'PeerToPeer';

Пример инициализации виджета для физ.лиц:

Code Block
<!DOCTYPE html>
<html>
<head>
<title>Тестовая платежная страница</title>
<!-- Подключаем скрипт платежного виджета -->
<script src="https://merchant.intellectmoney.ru/v2/js/IntellectMoneyMerchantWidget.js"></script></head>
</head>
<body>

<div>
  <script>
		// Инициализация виджета с передачей необходимых параметров
	 	var payInvoice = () => {
		      return IntellectMoneyMerchantWidget.Configuration.init({
       					EshopId: '450157',
        				OrderId: '666333',
        				ServiceName: 'Тестовый заказ',
        				RecipientCurrency: 'RUB',
        				RecipientAmount: 100.00,
        				Email: 'asdf@mail.ru',
        				SuccessUrl: '',
        				ResultUrl: '',
   						UserFieldName_0: 'Перевод в кошелек',
						UserField_0: '13132131312',
						UserFieldName_9: 'UserPaymentFormId',
						UserField_9: '3564',
						FormType: 'PeerToPeer'
     		 });
		}

		// Запуск виджета
	    window.onload = payInvoice();
  </script>
</div>

</body>
</html>

 Программное закрытие виджета:

Для закрытия виджета, необходимо функцию вызова присвоить глобальной переменной. После чего у данной переменной вызвать метод "close()"

Code Block
languagejs
titleПрограммное закрытие виджета
<!DOCTYPE html>
<html>
<head>
<title>Тестовая платежная страница</title>
<!-- Подключаем скрипт платежного виджета -->
<script src="https://merchant.intellectmoney.ru/v2/js/IntellectMoneyMerchantWidget.js"></script></head>
</head>
<body>

<div>
  <script>

		var linkToFrame; // Глобальная переменная для привязки к всплывающей форме
 
		// Инициализация виджета с передачей необходимых параметров
	 	var payInvoice = () => {
		      return IntellectMoneyMerchantWidget.Configuration.init({
       					EshopId: '450157',
        				OrderId: '666333',
        				ServiceName: 'Тестовый заказ',
        				RecipientCurrency: 'RUB',
        				RecipientAmount: 100.00,
        				Email: 'asdf@mail.ru',
        				SuccessUrl: '',
        				ResultUrl: '',
   						UserFieldName_0: 'Перевод в кошелек',
						UserField_0: '13132131312',
						UserFieldName_9: 'UserPaymentFormId',
						UserField_9: '3564',
						FormType: 'PeerToPeer'
     		 });
		}

		// Запуск виджета
	    window.onload = {
		  linkToFrame = payInvoice();
		}

	    ...

		document.getElementById("close").addEventListener("click", closeFunction); // Обработчик вызывающий закрытие окна

		function closeFunction(event) {
        	linkToFrame.close()
	 	}		

  </script>
</div>

<div id="close">Альтернативная кнопка закрытия окна</div>

</body>
</html>


Параметры

...