Как показать несколько товаров на Paypal

#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( , см. демонстрационную версию, связанную там.