自适应付款中的项目详细信息、销售税和运费的 PayPal 参数

Posted

技术标签:

【中文标题】自适应付款中的项目详细信息、销售税和运费的 PayPal 参数【英文标题】:PayPal Parameters for Item Detail, Sales Tax and Shipping in Adaptive Payments 【发布时间】:2012-04-20 11:02:50 【问题描述】:

我正在构建一个 Rails(3.0,Ruby 1.9.2)应用程序,访问者可以从我的用户那里购买东西(付款直接从买家到用户)。我正在尝试使用 PayPal Adaptive Payments 来实现这一点,但是,我不知道该怎么做:

    在我的应用程序中创建描述(PayPal 中的第一行)= 产品名称。现在,我可以发送付款,但通常描述某人在 PayPal 中购买的商品的最上面一行显示为收件人的电子邮件,我不知道如何更改它 将运费和销售税与主要金额分开显示

我试过了:

    reviewing PayPal's documentation on Adaptive Payments 在 PayPal 开发者板上发帖 尝试 Apigee 看看这是否向我透露了任何信息

这是我当前的代码:

 gateway = ActiveMerchant::Billing::PaypalAdaptivePaymentGateway.new( :login => "foo",:password => "bar", :signature => "foobar",:appl_id => "foobar1" )

  ss= gateway.pay amount.to_i, @user.paypal_account,
    :ip => request.remote_ip,
    :sender_email => params[:paypal_email],
    :return_url =>"http://#current_subdomain.foobar.com/product/#params[:product_id]",
    :cancel_url => request.referer,
    :client_details =>
    
    :application_id => '60',
    :customer_type => 'user',
    :customer_id => '12',
    :tracking_id => tracking_id,
    :pay_key => '24',
    :ipn_notification_url => "http://foobar.com/paypal_ipn"
    

代码用于获取付款信息​​,它主要不会像我想要的那样显示(项目名称/描述显示为收件人,@user.paypal_account - 我想分解金额,如果可以显示运费和税金)。

【问题讨论】:

【参考方案1】:

这是我的代码(我正在使用 paypal_adaptive gem)

我指定了更多参数,由于您使用的是 ActiveMerchant 的 paypal 类,因此可能会有所不同:

pay_request = PaypalAdaptive::Request.new

server="http://mybaseurl.com"
data = 
  "returnUrl" => "#server/sales/summary?sale_id=#sale_id", 
  "requestEnvelope" => "errorLanguage" => "en_US",
  "currencyCode"=>"USD",  
  "receiverList"=>"receiver"=>["email"=>"#@sale.seller.email","amount"=>"item amount"],
  "cancelUrl"=>"#server/payments/canceled_payment_request?sale_id=#sale_id",
  "actionType"=>"PAY",
  "ipnNotificationUrl"=>"#server/payments/ipn_notification",
  "feesPayer"=>"EACHRECEIVER",
  "memo"=>"Purchase for item from my company",
  "reverseAllParallelPaymentsOnError"=>"true",
  "trackingID"=>"#sale_id",
  "partnerName"=>"Pretty sure this is the top line in paypal"
      

@pay_response = pay_request.pay(data)

因此,上面的 partnerName 是您可以指定为您的应用的第一行

关于销售税,论坛中有一个很长的帖子...我不确定那个...也许您必须在您的贝宝个人资料中设置它来收取销售税,或者在获得之前进行计算您向买家索要的总金额,并在摘要屏幕上让他们一目了然。 forum thread

此外,这里还有更多您可能没有看到的文档,因为他们在 x.com 上整理了一半的文档,然后在 cms.paypal.com 上整理了更多文档...https://www.x.com/developers/paypal/documentation-tools/api/pay-api-operation

【讨论】:

【参考方案2】:

Adaptive Payments 在常规结帐页面中不支持此功能。

【讨论】:

我可以使用另一个贝宝 api 来指示接收者(作为第三方),但接收 ipn? 视情况而定。通常有多少个接收器?您需要链式付款,还是并行付款也可以? 接收者永远是一个。我只是想让访客向第三方付款,但我需要收到一个 ipn 在这种情况下,您可以使用 PayPal Express Checkout 并在 SUBJECT 变量中发送收件人的电子邮件地址。不过,接收者需要授予您代表他们调用 API 的权限。如果您希望我引导您完成,请通过邮件联系我; ppmtsrob@gmail.com

以上是关于自适应付款中的项目详细信息、销售税和运费的 PayPal 参数的主要内容,如果未能解决你的问题,请参考以下文章

自适应付款支付 API 错误 580001

为啥我不能再使用 Paypal 自适应付款?

PayPal 自适应付款退款问题

PayKey 使用 Paypal 自适应付款的工作流程

自定义购物车,我有客户的详细信息 - 我只需要付款

贝宝自适应支付销售税