Предполагая, что пользователь успешно завершает свою транзакцию после перенаправления на Mastercard для оплаты, но закрывает браузер, прежде чем перенаправить обратно на vpc_ReturnURL
поставляется в драйвер Omnipay, есть ли способ обработать это автоматически?
К сожалению, короткий ответ заключается в том, что вы не можете обрабатывать это автоматически напрямую через MiGS.
При использовании 3-х сторонней версии (Migs_ThreeParty
), вы полагаетесь на то, что конечный пользователь вернется и ударит completePurchase()
метод. Вы можете настроить задания cron для обнаружения «заброшенных» продаж (которые могут или не могут быть фактически отменены) для ручного согласования на вашей панели Mastercard, но MiGS не предоставляет опцию для notifyUrl
ни какая-либо реализация acceptNotification()
метод для уведомлений на основе шлюза, аналогичный IPN PayPal. К сожалению, у него также нет простого URL-адреса запроса для «завершена ли эта транзакция», который вы могли бы прикрепить к заданию cron, оставленному для проверки продажи.
Самое лучшее, на что вы можете надеяться, это поговорить с Mastercard и посмотреть, сможете ли вы сократить время перенаправления с помощью автоматического перенаправления, или чтобы ваш обратный URL был сверхбыстрой загрузкой страницы «пока не закрывайте это окно», которая затем ваш completePurchase
загрузка в фоновом режиме.
Redirect / сторонние шлюзы имеют эту проблему много. Это одна из причин, по которой большинство продавцов предпочитают двухсторонние шлюзы (если они могут быть обеспокоены соответствием PCI) и видели рост шлюзов на основе токенов (поэтому они могут избежать бремени соблюдения PCI без головной боли при перенаправлениях). ).
Других решений пока нет …