Платежная система о заказе на сайте может вернуть только 1 параметр т.е. я могу передать либо order_id либо user_id
Насколько я понял запись о платеже создается только после проведения оплаты на сайте платежной системы
насколько правильно будет order_id создать во время создания записи о платеже на моем сайте?
в самом плагине как я понял присваивается так pay_id = current_time('timestamp');
Добрый день.
Если честно, не очень понял вопрос.
Речь идет о том, что платежная система после платежа может возвратить на сайт только один параметр?
order_id - идентификатор заказа, если речь идет о простой транзакции без привязки к конкретному заказу, то вы можете присвоить любое свое значение, но по-умолчанию используется timestamp на момент создания платежа.
Я бы не советовал создавать платеж до его проведения.
Если платежная система может принять или возвратить только один параметр, то пробуйте передавать строку склеенную из нескольких параметров, например: order_id::user_id::custom_data, тогда при ее возвращении системой, вы сможете разбить ее на составные части и получить все необходимые данные.
как я понимаю можно обойтись таким решением?
склеили
$order_user = array($data->pay_id,$data->user_id); $order_user = implode("::", $order_user);
и разобрали
$order_user = $_REQUEST["order_id"]; $order_user = explode("::", $order_user); $order_id = $order_user[0]; $user_id = $order_user[1];
1. страница для этих целей должна быть создана на сайте и указана в настройках магазина
2. ссылка на эту страницу должна быть указана на стороне платежной системы в качестве URL-обработчика, куда платежная система будет отправлять данные платежа на проверку перед непосредственным совершением платежа.
Оба пункта выполняются?
ну тогда внутри метода можете произвести какую нибудь проверку на предмет получения данных от платежной системы, например, послать себе письмо, обычно я делаю это вызвав функци:
rcl_mail_payment_error(); exit;
она высылает письмо с данными присланного запроса на почту админа сайта.
Если письмо не пришло, значит метод не был вызван, что может означать, что если платежная система посылает запросы к серверу, то где то они во что то утыкаются, например, в правила .htaccess или настройки каких-нибудь плагинов безопасности, всякое может быть.