ngCart PayPal结账页面询问购物车的购买详情

时间:2017-12-28 13:41:44

标签: paypal form-submit shopping-cart

此问题可能与Itemized PayPal Checkout using Angular (ngCart)

有关

我正在尝试使用ngcart http://ngcart.snapjay.com/cart将购物车添加到我的网站。

我有一个工作结帐页面,其中有一个明细的产品清单。

enter image description here

当你加载购物车视图并添加到购物车中的商品时,检查结帐按钮的元素会显示:

.container {
  width: 100px;
  height: 100px;
  display: flex;
  align-items: center;
}

<ngcart-checkout template-url="/templates/ngCart/checkout.html" service="paypal" settings="{ url:'/shop/checkout', paypal: { business: 'paypal_email', item_number:'123', currency_code:'GBP'}}" class="ng-isolate-scope">

当我点击“立即购买”按钮时,我会被重定向到此页面,在此页面上询问购买详情并列出税前和运费之前的子总额。

enter image description here

在ngCart示例http://ngcart.snapjay.com/中,当您结帐时,它会转到标准PayPal页面,而不会询问项目详细信息,并且有一个付款借记卡或信用卡选项,显示正确的总数。

enter image description here

有谁知道为什么这不起作用?我没有很多PayPal结账经验所以任何帮助表示赞赏。我想知道它是否与PayPal帐户本身有关?是否需要启用快速结账的商家帐户?

2 个答案:

答案 0 :(得分:1)

参数 item_name 的值为空。请转到&#34;样品&#34;。它会将您重定向到登录页面。

干杯!

答案 1 :(得分:0)

在做了一些研究之后,看起来ngCart只是为了将汇总购物车金额发送给PayPal而不是逐项订单。

我更新了checkout.html模板,将购物车的内容添加为单独的商品。

<div ng-if="service=='paypal'">
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top" ng-show="ngCart.getTotalItems()">
    <input type="hidden" name="cmd" value="_cart" />
    <input type="hidden" name="upload" value="1">
    <input type="hidden" name="business" value="{{ settings.paypal.business }}" />
    <input type="hidden" name="lc" value="CA" /> 
    <ng-form name="cartItems" ng-repeat="item in ngCart.getCart().items track by $index">
        <input type="hidden" name="item_name_{{$index+1}}" value="{{item.getName()}}" />
        <input type="hidden" name="amount_{{$index+1}}" value="{{item.getPrice()}}" />
        <input type="hidden" name="quantity_{{$index+1}}" value="{{item.getQuantity()}}" />         
        <ng-form name="shipping" ng-if="$last">
            <input type="hidden" name="item_name_{{$index+2}}" value="Shipping" />
            <input type="hidden" name="amount_{{$index+2}}" value="{{ngCart.getShipping()}}" />
            <input type="hidden" name="quantity_{{$index+2}}" value="1" />  
        </ng-form>          
    </ng-form>
    <input type="hidden" name="currency_code" value="{{ settings.paypal.currency_code }}" />
    <input type="hidden" name="button_subtype" value="services" />
    <input type="hidden" name="no_note" value="{{ settings.paypal.no_note }}" />       
    <input type="hidden" name="bn" value="PP-BuyNowBF:btn_buynowCC_LG.gif:NonHostedGuest" />
    <input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_buynowCC_LG.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>

这似乎有效,因为我已发送测试订单并收到一封电子邮件,列出了各个项目和数量。