Adding item total to PayPal's order summary, for full aggregate cart payment

一曲冷凌霜 提交于 2019-12-25 05:00:08

问题


I've got my own shopping cart and everything set up, I just need a "Pay Now" button for my website users, and I just intend to send the entire cart's total amount up to payPal, that's it, no other integration necessary. So the customers on my website have already reviewed their order, checked quantities and shipping charges etc for individual items, and now PayPal just needs to be given the total amount which they will confirm and pay.

My code for the "Pay Now" button is below ($overall_total has already been calculated somewhere above in my php code):

<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
   <input type="hidden" name="cmd" value="_s-xclick">
   <input type="hidden" name="hosted_button_id" value="JRECLRTYAJDKY">
   <input type="hidden" name="amount" value="<?php echo $overall_total;?>">
   <input type="hidden" name="item_total" value="<?php echo $overall_total;?>">
   <input type="hidden" name="item_name" value="Your Shopping order">
   <input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_paynow_SM.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
   <img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>

The user submits this form when they hit "Pay Now", and they come to next page. But Even though I included the amount and item_total variables, the next page gives me an item_total of 0.00. Also, I don't want any Quantity or Item price to show since I am simply implementing an aggregate cart payment for customers, and they have already reviewed per item charges before coming to the payment. This is what I get:

How can I get rid of Quantity and Item price, and have the $overall_total value that I calculated inside the total price on the PayPal summary?


回答1:


there is no item_total or any total, since every single button handles ONE item at once

$overall_total must be in the english format with "." as decimals separator

problem may be the cmd parameter.. use instead:

<input type="hidden" name="cmd" value="_xclick">

also you need to specify:

<input type="hidden" name="business" value="yourBusiness@yourBusiness.tld">

look at this for a more complete example:

<form action="https://www.paypal.com/cgi-bin/webscr" method="post">

    <input type="hidden" name="cmd" value="_xclick">
    <input type="hidden" name="business" value="yourBusiness@yourBusiness.tld">

    <input type="hidden" name="lc" value="US">
    <input type="hidden" name="amount" value="10.10">
    <input type="hidden" name="currency_code" value="USD">

    <input type="hidden" name="item_name" value="Item bought desc">

    <input type="hidden" name="button_subtype" value="services">
    <input type="hidden" name="no_note" value="0">

    <input type="hidden" name="bn" value="PP-BuyNowBF:btn_paynow_SM.gif:NonHostedGuest">
    <input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_paynow_SM.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
    <img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">

</form>

also have a look at:

  • the documentation of cart parameters: HTML Form Basics for PayPal Payments Standard
  • the cart button builder: Create a PayPal payment button

about the "quantity" issue, sadly you can't hide it... if this is an important issue for you, you could try instead the ExpressCheckout (using php) which is very customizable and not that difficult to implement

hoping to be helpful




回答2:


The most straightforward way to get around the Qty:1 issue of simple 'Pay Now' buttons is to implement 'Cart Upload' instead, which is how 99% of shopping carts implement Standard. See: PayPal's Cart Upload Documentation

If you are a programmer who can handle API calls, I instead recommend using Express Checkout (perhaps with SOLUTIONTYPE=Sole) rather than a Standard form post like Cart Upload. EC is a more robust interface to program against and essentially a free upgrade to Standard that's available to all PayPal seller accounts.



来源:https://stackoverflow.com/questions/15185271/adding-item-total-to-paypals-order-summary-for-full-aggregate-cart-payment

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!