Я не совсем понимаю, что вы здесь задаете, но я попытаюсь объяснить, как это работает из моих собственных наблюдений.
Изменения статуса отправляются на ваш адрес TransactionStatus
. Это будет POST с множеством параметров.
Ваш обработчик состояния транзакции должен сохранить эти данные (все простые строки в $_POST
) в соответствующее хранилище, а затем вернуть «TSOK», как только это будет сделано. Он должен сделать это быстро, потому что конечный пользователь будет ждать этого ответа при использовании метода оплаты «Передняя сторона» (так называемая хостинговая форма).
Если вы возвращаете что-либо иное, кроме «TSOK», тогда PAYONE будет считать это неудачным с вашей стороны и будет продолжать повторно отправлять сообщение с интервалом до его окончательного принятия. Таким образом, вы не можете сообщить что-либо обратно в PAYONE, когда он отправляет вам статус транзакции, кроме как сказать «получилось, спасибо!».
Когда пользователи перенаправляются на передний конец, вы должны следить за тем, что происходит в сеансе сервера. У вас будет свой собственный идентификатор транзакции и идентификатор, сгенерированный PAYONE, - используйте их для поиска состояния транзакции, сохраненного в базе данных в уведомлении «обратный канал».
Последнее примечание: все данные POST, отправленные PAYONE в сообщении о состоянии транзакции, будут кодироваться ISO-8859-1, независимо от того, какая кодировка была использована для отправки запроса на оплату в первую очередь. Если ваш сайт использует UTF-8 - и большинство сайтов будут в эти дни - тогда не забудьте преобразовать кодировку входящих данных. utf8_encode()
сделаю.
Надеюсь, что это поможет.
Вы решили это? – Michael
Нет, не разрешено. Вы охотитесь за значками комментариев? –
Нет, я просто «затягиваю» – Michael