【问题标题】:ngCart PayPal checkout page ask for purchase details for cartngCart PayPal 结帐页面询问购物车的购买详细信息
【发布时间】:2018-06-09 01:36:42
【问题描述】:

这个问题可能与Itemized PayPal Checkout using Angular (ngCart)有关

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

我有一个有效的结帐页面,其中包含产品的逐项列表。

当您加载购物车视图并将商品添加到购物车时检查结帐按钮的元素会得到以下结果:

<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">

<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top" ng-show="ngCart.getTotalItems()" class="ng-pristine ng-valid">
    <input type="hidden" name="cmd" value="_xclick" autocomplete="off">
    <input type="hidden" name="business" value="paypal_email" autocomplete="off">
    <input type="hidden" name="lc" value="CA" autocomplete="off">
    <input type="hidden" name="item_name" value="" autocomplete="off">
    <input type="hidden" name="item_number" value="123" autocomplete="off">
    <input type="hidden" name="amount" value="5.7" autocomplete="off">
    <input type="hidden" name="currency_code" value="GBP" autocomplete="off">
    <input type="hidden" name="button_subtype" value="services" autocomplete="off">
    <input type="hidden" name="no_note" value="" autocomplete="off">
    <input type="hidden" name="tax_rate" value="20" autocomplete="off">
    <input type="hidden" name="shipping" value="2.5" autocomplete="off">
    <input type="hidden" name="bn" value="PP-BuyNowBF:btn_buynowCC_LG.gif:NonHostedGuest" autocomplete="off">
    <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>

当我点击“立即购买”按钮时,我会被重定向到此页面,该页面会询问购买详细信息并列出添加税和运费之前的小计。

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

有谁知道为什么这不起作用?我在 PayPal 结账方面没有太多经验,因此不胜感激。我想知道这是否与PayPal帐户本身有关?是否需要启用快速结帐功能的企业帐户?

【问题讨论】:

    标签: paypal form-submit shopping-cart


    【解决方案1】:

    item_name 参数的值为空。请将其制作为“样品产品”。它会将您重定向到登录页面。

    干杯!

    【讨论】:

    【解决方案2】:

    在进行更多研究后,看起来 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>
    

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

    【讨论】:

      猜你喜欢
      • 2018-12-17
      • 2018-09-14
      • 1970-01-01
      • 1970-01-01
      • 2016-08-15
      • 1970-01-01
      • 2019-04-29
      • 2020-02-29
      • 1970-01-01
      相关资源
      最近更新 更多