ruby-on-rails - 使用 active_paypal_adaptive_payment gem 授权 preapproved_pa​​yment_key

标签 ruby-on-rails paypal paypal-adaptive-payments

伙计,我正在为这个而焦头烂额。 Paypal 的文档非常复杂和不完整,并且几乎没有原生 ruby​​ 支持自适应支付。

无论如何,我正在构建一个 Web 应用程序,我希望能够从中使用 PayPal Adaptive Payments 设置预批准付款。我得到了 active_paypal_adaptive_payment gem 可以工作,但没有关于从预批准到获取付款的过程的文档。

我可以使用 gem 的 preapprove_payment 方法从 PayPal 获取预批准 key :

response = ADAPTIVE_GATEWAY.preapprove_payment ({
  :return_url => admin_preapproved_payments_url,
  :cancel_url => admin_preapproved_payments_url,
  :senderEmail => @payment.sender_email,
  :start_date => @payment.start_date,
  :end_date => @payment.end_date,
  :currency_code =>"USD",
  :max_amount => @payment.max_amount.to_s,
  :maxNumberOfPayments => @payment.max_number_of_payments.to_s
  })
  puts response.preapproval_key

但发件人需要先授权预批准 key ,然后我才能使用它从他们的帐户中提取资金。

enter image description here

我在哪里重定向发件人以便他们可以授权预批准 key ?我不想立即获取资金——我只需要他们的批准,这样我就可以在未来这样做。

最佳答案

redirect_pre_approval_url_for(token) 方法是您所需要的,它返回一个 URL,您应该(很明显)将用户重定向到该 URL 以授权预批准的付款。

redirect_pre_approval_url_for(token)

因此,在 Rails 应用程序中,事情应该如下所示:

redirect_to ADAPTIVE_GATEWAY.redirect_pre_approval_url_for(response.preapproval_key)

关于ruby-on-rails - 使用 active_paypal_adaptive_payment gem 授权 preapproved_pa​​yment_key,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9788263/

相关文章:

Paypal 自适应支付 : ExecutePayment returns payKey AP-XXXX has already been used to make a payment

ruby-on-rails - 将Angularjs和Rails应用程序分离为独立组件

paypal - braintree 嵌入式 Paypal 结帐

php - 使用自适应支付时,有什么方法可以更改 PayPal 支付页面中的 "Cancel and return"标签?

php - 使用 PHP 自动执行 PayPal 付款

Magento PayPal Pro 错误 #10471 和 #10472

ruby-on-rails - 更新 Braintree 交易的订单 ID

ruby-on-rails - 为什么要测试:units and test:functionals insist on running in development environment?

ruby-on-rails - 帮助制定数据库策略,为特定模型实例中的用户赋予角色

jquery - 使用 jquery 的 paypal 快速结帐