Я использую PayPal Express Chechkout на своем сайте для разовых платежей. Все работает нормально, за исключением того, что я не могу получить paymentID и payerID от PayPal. Мне нужны эти переменные для внесения изменений в мою базу данных, если транзакция прошла успешно.
В настоящее время я использую следующий код. Транзакции в Sandbox и Live Modus работают нормально, а также перенаправление после успешной оплаты. Моя проблема в том, что я не могу получить paymentID и payerID.
<script src='https://www.paypalobjects.com/api/checkout.js'></script>
<div id='paypal-button'></div>
<script>\n";
paypal.Button.render({
// Configure environment
print "env: 'sandbox',
client: {
sandbox: 'SANDBOX-KEY',
production: 'PRODUCTION-KEY'
},
// Customize button (optional)\n";
locale: 'de_DE',
style: {
size: 'small',
color: 'gold',
shape: 'pill',
},
// Set up a payment
payment: function (data, actions) {
return actions.payment.create({
transactions: [{
amount: {
total: '".$price."',
currency: 'EUR'
}
}]
});
},
// Execute the payment:
// 1. Add an onAuthorize callback
onAuthorize: function(data, actions) {
return actions.payment.execute({ paymentID: data.paymentID, payerID: data.payerID })
then(function(res) { window.location.replace ('MY-URL/index.php?func=billing&pp_success=1&paymentID=$paymentID') })
catch(function(err) { window.location.replace ('MY-URL/index.php?func=billing&pp_error=1') });
},
}, '#paypal-button');
</script>
Может ли кто-нибудь сказать мне, как мне нужно изменить свой код, чтобы я получал идентификаторы paymentId и payerID из транзакции?