自适应付款中项目明细,销售税和运费的PayPal参数

时间:2012-04-06 22:41:21

标签: ruby-on-rails-3 paypal activemerchant paypal-adaptive-payments

我有一个Rails(3.0,Ruby 1.9.2)应用程序我正在构建,访问者可以从我的用户那里购买东西(付款直接从买家到用户)。我正在尝试使用PayPal自适应支付来实现这一点,但是,我无法弄清楚我是怎么做的:

  1. 在我的应用中进行说明(PayPal的第一行)=产品名称。现在,我可以发送付款,但顶线,通常描述有人在PayPal购买的项目显示为收件人电子邮件,我不知道如何更改
  2. 显示与主要金额分开的运费和销售税
  3. 我试过了:

    1. reviewing PayPal's documentation on Adaptive Payments
    2. 发布到PayPal开发人员委员会
    3. 尝试Apigee,看看是否有什么东西对我来说
    4. 这是我目前的代码:

       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 - 我想分解金额,如果可以显示运费和税金。)

2 个答案:

答案 0 :(得分:0)

自适应付款在常规结帐页面中不支持此功能。

答案 1 :(得分:0)

这是我的代码(我正在使用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是您可以指定为应用的顶线

至于销售税,这里是论坛中的一个长线程...我不确定那个...也许你必须在paypal资料中设置你收取销售税,或者可能在获得之前计算您询问买方的总数,并在摘要屏幕上向他们显示。 forum thread

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