Paypal Express Checkout和网站支付标准之间的API差异

jne*_*son 9 paypal ruby-on-rails

我正在尝试了解Paypal的快速​​结账和网站付款标准之间的API差异.我知道面向用户的差异(Express Checkout强制您拥有Paypal帐户,而网站付款标准也处理信用卡),但我不知道如何以编程方式与它们进行交互,特别是来自Rails应用程序.Active Merchant表示它支持Express Checkout,但未提及网站付款标准.对于定期付款,我发现了这个宝石,但它只提到了Express Checkout.它如何运作(如果有的话)网站付款标准?

我意识到Paypal有多个API,而当Active Merchant通过Paypal的SOAP端点进行通信时,您也可以通过基于URL的API进行通信.我只是感到困惑,因为文档过多,很难理解什么是有用的.

编辑 - 澄清一下,我接受信用卡的意思并不是强迫用户拥有Paypal帐户 - 将Paypal功能仅用作信用卡网关(例如AuthNet).我知道信用卡可以绑定到您的Paypal帐户,这不是我所说的.

谢谢!

Mik*_*ald 9

而不是编辑我之前编辑的答案,我将再试一次.

快速结账是作为"Pay with Paypal"选项坐在您现有的支付解决方案旁边.它具有更完整的API,只需要您的客户离开您的网站即可输入付款信息.还有一个更详细的书面记录在这里

为了澄清,是的,Paypal的快速​​结账和网站付款标准允许您接受来自"访客帐户"(没有PayPal帐户的客户)的付款.

我同意文档有时令人困惑.由于您提到了Rails,以下是如何在Express Checkout中使用Active Merchant启用"访客帐户".

我相信快速结账仅适用于商业帐户(非个人).如果您有商业帐户,您将在paypal资料中找到一个设置 - Profile>My selling tools>Selling Online>Website preferences向下滚动PayPal Account Optional并选择On单选按钮.

编辑:显然可以在下面找到此选项Profile>Website Payment Preferences>Paypal Account Optional

然后使用Active Merchant,调用paypal allow_guest_checkout(此代码基于快速结账插播的railscast)

response = EXPRESS_GATEWAY.setup_purchase(current_cart.build_order.price_in_cents,
  :ip                => request.remote_ip,
  :return_url        => new_order_url,
  :cancel_return_url => products_url,
  :allow_guest_checkout => true

)
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助.