Paypal - страница и переменные возвращаемого URL-адреса
Возможно ли, чтобы я получал переменные postppal в обратном URL. Я хочу показать ответное сообщение на странице URL-адреса возврата в зависимости от того, была ли выполнена транзакция пользователя/ожидающая/неудачная. Я тестирую с помощью учетной записи sandbox в paypal.
Вот мой код,
<input type="hidden" name="item_name" value="Credit Purchase">
<input type="hidden" name="business" value="<?php echo paypal_business_id;?>">
<input type="hidden" name="rm" value="2">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="currency_code" id="currency_code" value="GBP">
<input type="hidden" name="custom" id="custom" value="<?php echo $user."@@@".$num_purchase;?>">
<input type="hidden" name="return" value="<?php echo base_url(); ?>buy/success">
<input type="hidden" name="cancel_return" value="<?php echo base_url(); ?>">
<input type="hidden" name="notify_url" value="<?php echo base_url(); ?>buy/notify
Ответы
Ответ 1
Его можно добавить в переменную return
, идентификатор заказа, тогда вы получите свой идентификатор заказа, когда пользователь вернется, и из идентификатора заказа вы покажете ему информацию.
Eg
<input type="hidden" name="return" value="myReturnUrl.php?OrderID=88273882717A72734">
Ответ 2
Подождите, пока не поступит уведомление IPN, и посмотрите на это.
Поскольку транзакции автоматически проверяются на предмет мошенничества и могут быть профинансированы банковскими счетами, их возврат к URL-адресу возврата не всегда означает успешную транзакцию.
Список переменных IPN можно ожидать, см. переменные IPN и PDT PayPal
Вы захотите посмотреть (по крайней мере) на следующие значения:
- payment_status
- mc_gross и/или payment_gross (payment_gross используется, если транзакция находится в долларах США, mc_gross, если какая-либо другая валюта).
- payment_type
- pending_reason
Ответ 3
Подобные проблемы существуют в FF, если вы ждете 10 секунд.
Мое решение - изменить обратный URL-адрес на "xxx.com?orderId=xxx".
Затем вы судите, если это POST или GET. и выберите информацию о заказе по orderId
Вам не нужно беспокоиться о статусе оплаты. потому что он всегда должен быть успешным, если он возвращается в ваш магазин не "cancel_return"