ruby-on-rails - Paypal 让我的网站用户互相付款

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

我正在做一个项目,我希望我的用户能够为他们使用我的网站提供的服务相互付费。
我经历了https://github.com/paypal/adaptivepayments-sdk-ruby并执行了那里提到的每个步骤,但在执行该代码时我没有被重定向到 paypal,只是 status: 200 出现在 RAILS SERVER 日志中。

可能是我的理解不正确。请指导。


在那之后,现在我正在尝试使用这个 https://launchschool.com/blog/basic-paypal-checkout-processing-in-rails教程并能够在沙盒环境中成功进行支付。

但此方法的问题是,在成功付款后,它不会自动将我重定向回去,以便我也能够将该付款信息插入我的系统。
是的,我知道我必须在我的企业帐户设置中打开“自动返回”,但这只有在直接付款时才可行给我做的。

如果用户互相付款怎么办? 如何我将他们重定向回来,因为我显然无法访问他们的帐户设置。


简而言之,我只想让我的用户能够相互付款,并且我希望将该信息也插入到我的系统中。

任何建议,因为我可能不知道 paypal 是如何工作的?


代码如下:

Controller :

def create
   @transaction = Transaction.new(transaction_params)
   @transaction.user_id =  current_user.id

   redirect_to @transaction.paypal_url(root_path)
end

模型

def paypal_url(return_path)
raw_config = File.read("#{Rails.root}/config/paypal.yml")
paypal_CONFIG = YAML.load(raw_config)

values = {
    business: "business@mysite.com",
    cmd: "_xclick",
    upload: 1,
    returnurl: paypal_CONFIG[Rails.env]['app_host']+"#{return_path}",
    invoice: id,
    amount: self.total_amount,
    item_name: "Purchase Order",
    quantity: '1',
    notify_url: paypal_CONFIG[Rails.env]['app_host']+"/hook",
}

paypal_CONFIG[Rails.env]['paypal_host']+"/cgi-bin/webscr?" + values.to_query
end

paypal.yml

development:
   paypal_host: https://www.sandbox.paypal.com
   app_host: http://our_ngrok_url

production:
   paypal_host: https://www.paypal.com
   app_host: https://ourdomain.com/

最佳答案

我相信您没有直接使用最佳方法。如果您是网站所有者,并且您想让您的一部分用户(即买家)为另一部分用户(即卖家)支付所提供的服务/产品,您应该考虑充当中间人,将交易信息保存到您的帐户中,并且将其传递给您的后端(同时确保安全并帮助解决问题、退款等)。这是市场类型网站的经典方法,我相信您正在做的就是这种方法。

因此,不是买家直接向卖家付款,而是买家付款给您,然后您更新卖家的余额,然后买家从他的账户中提款。这一切都可以通过 PayPal 进行设置,并可以通过 Payouts 完成。和 Mass Pay .

一旦您设置了基本的东西、收费、更新余额等,设置重定向和将交易信息传递到您的后端就是简单的部分。

上面的文档是你的 friend 。

希望对您有所帮助。如果您需要进一步的帮助,请告诉我。

关于ruby-on-rails - Paypal 让我的网站用户互相付款,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42063842/

相关文章:

Paypal 沙箱 IPN 不发送请求

php - .htaccess 如果文件存在则重定向

php - "errorId": "560022", "message": "The X-PAYPAL-APPLICATION-ID header contains an invalid value", "parameter":[ "X-PAYPAL-APPLICATION-ID"]

ruby-on-rails - 提交时为空 file_field : param is missing or the value is empty

ruby-on-rails - 使用设计 token 身份验证的问题

redirect - nginx HTTPS 重定向

PHP 重定向阻止脚本

paypal - 如果第一次注册和支付 0 有 14 天的试用期,Paypal 的 subscr_payment 会被调用吗?

ruby-on-rails - rails :dependent and :delete

ruby-on-rails - 铁路应用程序有带有评论的博客