#php #paypal #paypal-sandbox
Вопрос:
Можно ли показать все товары, которые у нас есть в корзине покупок на PayPal ??
Например (это уже внутри paypal):
5 досок для гребли-Цена этих 5 предметов
3 Рубашки для серфинга-Цена
ОБЩАЯ ЦЕНА: общая цена
Мой код :
<form name="frm_customer_detail" action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="POST">
<input type='hidden'name='business' value='sb-unhom7091284@business.example.com'>
<input type='hidden' name='item_name' value='Prancha Surf'>
<input type='hidden' name='amount' value='<?php echo $item_price; ?>'>
<input type='hidden' name='quantity' value='<?php echo $item_quantity; ?>'>
<input type='hidden' name='currency_code' value='EUR'>
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="order" value="<?php echo $order;?>">
<div>
<input type="submit" class="btn-action"
name="continue_payment" value="Continue Payment">
</div>
</form>
Мой $item_price-это общая сумма всех продуктов.
И $item_quantity-это количество всех товаров, которые у вас есть в корзине.
Я знаю, что мне нужно изменить значение cmd на _cart, но здесь многого не хватает, верно ? Заранее спасибо
Ответ №1:
Загрузка корзины ( _cart
) — это очень старый (20 лет?), устаревший метод интеграции, который не дает хорошего опыта оформления заказа.
Лучшим решением является использование смарт-кнопки; смотрите текущее руководство по настройке стандартных платежей, в частности раздел о расширении создания заказа с более подробной информацией:
createOrder: function(data, actions) {
return actions.order.create({
"purchase_units": [{
"amount": {
"currency_code": "USD",
"value": "100",
"breakdown": {
"item_total": { /* Required when including the `items` array */
"currency_code": "USD",
"value": "100"
}
}
},
"items": [
{
"name": "First Product Name", /* Shows within upper-right dropdown during payment approval */
"description": "Optional descriptive text..", /* Item details will also be in the completed paypal.com transaction view */
"unit_amount": {
"currency_code": "USD",
"value": "50"
},
"quantity": "2"
},
]
}]
});
},
Поскольку вы используете серверную часть PHP, для достижения наилучших результатов вам следует создать этот заказ и захватить его с вашего сервера через API, а не в JS. В этом руководстве есть примечания о том , как выполнить интеграцию сервера и подключить его к JS fetch(
, см. демонстрационную версию, связанную там.