API

  1. Домой
  2. API
  3. Примеры интеграции
  4. Работа через iFrame

Работа через iFrame

Задача: Магазин хочет, чтобы platron не было видно, и клиент вводил все платежные данные и выбирал платежные способы, никуда не переходя.

Решение: Магазин включает настройку использования iframe в настройках магазина в административной панели platron. Выводит iframe на стороне магазина.

<iframe src=”https://www.platron.ru/payment_params.php?набор_параметров”></iframe>

При использовании iframe есть возможность открывать в родительском окне страницу прохождения 3ds. При таком способе оплаты человек больше доверяет при вводе одноразового кода подтверждения. Так же есть возможность чтобы человек проходил 3ds в том же iframe, где он вводил данные. В этом случае после завершения окна в родительское окно магазин получит сообщение с помощью Window.postMessage()


Пример отслеживания результата платежа
<script>
	$(document).ready(function () {
		window.addEventListener("message", function(e) {
			if(e.origin === 'https://www.platron.ru') {
				if (e.data === 'success') {
					// show customer success
				}
				if (e.data === 'failed') {
					// show customer fail
				}
			}
		},
		false);
	});
</script>

За выбор из этих вариантов отвечает настройка в личном кабинете магазина.


При этом есть несколько важных рекомендаций:

1. Сайт должен быть открыт по https://, чтобы у клиента не возникло впечатление, что номер карты он вводит на небезопасном сайте (хотя на самом деле ввод данных и отправка происходит на https://www.platron.ru)

2. Ссылка для размещения должна быть получена запросом на init_payment.php и сохранена в БД магазина, чтобы при каждом обновлении пользователем страницы с iFrame, в системе Platron не создавался новый заказ.

3. Если пункт 2 вызывает сложности – то нужно хотя бы минимизировать создание транзакций на стороне Платрон. Т.е. если в iframe стоит ссылка на payment.php для создания транзакций, то страница оплаты должна быть последней при оформлении.