Вы можете сделать это, но вам нужно будет заняться программированием на стороне сервера.Вы программно создаете «зашифрованную кнопку» и отправляете ее в PayPal.
Страница моего магазина по адресу https://secure.entrian.com/store/store.html делает это - она запрашивает некоторую информацию, отправляет ее на сервер, чтобы она превратилась вЗашифрованная кнопка, а затем отправляет это в PayPal.
JavaScript выглядит следующим образом, где $license_name
и $quantity
- это поля, которые я запрашиваю, а formgen.py
- это Python на стороне сервера.скрипт, который создает и подписывает запрос с использованием OpenSSL в соответствии с документацией PayPal:
$paypal_form.submit(function () {
var response = $.ajax({
type: "GET",
url: 'formgen.py?' + serialize({
licenseName: $license_name.val(),
quantity: $quantity.val()
}),
async: false
}).responseText;
if (response.indexOf('PKCS7') >= 0) {
$encrypted.val(response);
} else {
$payment_errors.text(response).show(easing_duration);
return false;
}
return true;
}
Форма выглядит так (скорее упрощенно):
<form id="paypal-form" action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="upload" value="1">
<input type="hidden" id="encrypted" name="encrypted" value="">
<button id="buynow" class="submit-button btn" type="submit">Buy Now</button>
</form>
То, что <input name="encrypted" ...>
заполняетсяОтвет AJAX до отправки формы в PayPal.