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

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

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

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

谢谢!

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

快速结账是作为“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,使用allow_guest_checkout调用paypal(此代码基于快速结账插播中的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 ) 

希望这可以帮助。

网站付款标准(WPS)和快速结账都将接受信用卡。 Express Checkout具有更多function(例如返回POST),现在两者都允许直接使用信用卡,因此差异较小。

您的paypal个人资料中有一个设置,可能位于Profile=>My selling preferences=>Selling Online部分,其中包含退货和自定义目标网页选项。

对于唯一的网关function,您需要使用Website Payments Pro和/或其他forms的解决方案,允许您进行直接POST,其中可能包括其他障碍,如PCI合规性等。

至于activemerchant,请查看paypal上的Railscast系列(特别是快速结账 )

这些video有点陈旧,但我在去年根据这些video使用activemerchant和paypal express设置了支付解决方案。 应该适合你