PayPal 快速结帐:着陆页 = 计费

PayPal Express Checkout: Landing Page = Billing

我正在尝试让 PayPal Express Checkout 始终只使用 "Billing" 可以直接输入卡号的登陆页面。

我已经尝试了在 Google 上可以找到的所有内容,但最终得到了一些非常奇怪的结果。当我重定向到 PayPal 时,我有 50% 的时间获得 "Billing" 页面,而另外 50% 的时间获得 "Log in to PayPal / Check Out as Guest" 页面(实际上只需按下后退按钮然后再次单击 "checkout" 即可不同的结果)。我真的需要始终如一地访问“计费”页面。

        SetExpressCheckoutRequestType pp_Request = new SetExpressCheckoutRequestType();
        pp_Request.Version = "117.0";

        pp_Request.SetExpressCheckoutRequestDetails = new SetExpressCheckoutRequestDetailsType();
        pp_Request.SetExpressCheckoutRequestDetails.SolutionType = SolutionTypeType.SOLE;
        pp_Request.SetExpressCheckoutRequestDetails.PaymentAction = PaymentActionCodeType.SALE;
        pp_Request.SetExpressCheckoutRequestDetails.LandingPage = LandingPageType.BILLING;
        pp_Request.SetExpressCheckoutRequestDetails.FundingSourceDetails = new FundingSourceDetailsType();
        pp_Request.SetExpressCheckoutRequestDetails.FundingSourceDetails.UserSelectedFundingSource = UserSelectedFundingSourceType.CREDITCARD;            
        pp_Request.SetExpressCheckoutRequestDetails.ReturnURL = serverName + returnUrl;
        pp_Request.SetExpressCheckoutRequestDetails.CancelURL = serverName + cancelUrl;
        pp_Request.SetExpressCheckoutRequestDetails.OrderTotal = new BasicAmountType();
        pp_Request.SetExpressCheckoutRequestDetails.OrderTotal.currencyID = CurrencyCodeType.GBP;
        pp_Request.SetExpressCheckoutRequestDetails.OrderTotal.value = String.Format("{0:F2}", amount);
        pp_Request.SetExpressCheckoutRequestDetails.NoShipping = "1";            

如您所见,我正在设置版本、解决方案类型、付款操作、着陆页和资金来源,但它仍然不能可靠地工作。

它的随机性感觉就像他们在做一些 A/B 测试。有时,在错误的页面上,按钮会显示 "Check Out as Guest",有时会显示 "Try PayPal as Guest"。虽然我不介意 A/B 测试文本,但在我要求不太高的情况下完全更改登录页面似乎有点过分。

还能是什么?

首先:是的,PayPal 不断测试以改进他们的流程,因此他们将进行 A|B 测试。尤其是这两个按钮的文字,听起来像是经典的A|B测试,想必以后只要测试出来的转化率最高(对商户的销量最大)就会被采纳为100%的解决方案。 PayPal 还会检查 cookie 以尝试为每个买家提供最佳的、最有可能转换的页面(例如,如果有一个活动的 PayPal cookie 使 PayPal 登录突出显示;没有 PayPal cookie 使直接卡输入更加突出)。同样,这样做是为了提高总转化率。您可以选择 defeat/override 这些选择,但我不推荐这样做;如果将您的期望强加给客户,您可能会失去销售额。

除此之外,您看到的某些内容可能不是 A|B 测试或 PayPal 的转换优化,而是产品和使用之间的不匹配。 ExpressCheckout 本质上是一个 PayPal-branded/PayPal 以账户持有人为中心的支付产品。它的构建完全没有客人结账,旨在与直接信用卡结算(PayPal 的 DirectCreditCard API 或其他一些支付方式 gateway/processor)一起使用。后来 "guest checkout" 被添加到 Express Checkout 中,因此它可以用作唯一的解决方案,但要求 Express Checkout 成为网关就像要求 F150 成为跑车(或让跑车成为 F150)。不同的产品。是的,有时您可以将手提箱放在乘客座位上,但如果您的主要目的是运载货物,那么您可能采用了错误的方式:)。

如果您的预期用途是托管的,但以 PayPal 账户持有人为中心的直接卡被视为 "add on",那么请考虑 PayPal 的托管独家解决方案。这是 PayPal 的产品,旨在集中显示卡支付,但有 "escape" 向 PayPal 账户持有人支付,而不是相反。或者考虑通过 Braintree(现在是 PayPal)集成,Braintree 有一个很好的 SDK,可以结合 Braintree 信用卡支付和 PayPal 账户持有人支付。

我还要补充一点,您可能会发现 PayPal 品牌对您的业务来说并不是那么糟糕。对于大多数中小型商家而言,它可以提高信任度并显着提升销量。

收到 PayPal 支持的回复:这是一个错误。他们似乎并不急于修复。

更新 - PayPal 刚刚通知我此问题已修复。

我问:

"I have a customer who is using Express Checkout and wants the landing page to be the "进入银行卡详细信息”页面。

它们是 B2B 操作,在进行购买的秘书的计算机上存在 PayPal cookie 绝不表示 PayPal 结账是合适的。他们几乎总是希望使用未关联任何 PayPal 帐户的公司信用卡。

我正在设置请求中的所有相关属性,我可以在您的文档或 google 上找到它们,但它们被忽略了。

是否仍然可以强制快速结账始终使用着陆页计费? “

他们回答:

“LandingPage 变量在这个时间点被新的结帐流程忽略了 - 这已经引起开发人员的注意以修复它。

很遗憾,我们目前没有该修复的预计到达时间。

一旦推出修复程序,您将收到通知。"