为什么 setLandingPageType("billing") 在 Sandbox 中工作但在 PAYPAL PHP REST API SDK WebProfile 的实时版本中不工作

Why is setLandingPageType("billing") working in Sandbox but not in Live-Version in PAYPAL PHP REST API SDK WebProfile

我一直在使用 Paypal 付款处理以下工作流程。 我的目的是将客户发送到访客支付网站。他一开始不应该看到贝宝登录页面。 这是因为很多人不知道他们可以在不注册账户的情况下使用信用卡或银行转账支付。 我在沙箱中测试了我的整个过程并且它有效。然后我切换到实时版本并且 $flowConfig->setLandingPageType("billing"); 它不再影响着陆页了。

工作流程:

为了预设视觉选项,我预定义了一些 Webprofile。

$flowConfig = new \PayPal\Api\FlowConfig();
$flowConfig->setLandingPageType("billing");

$presentation= new \PayPal\Api\Presentation();
...
$inputFields= new \PayPal\Api\InputFields();
...

$webProfile = new \PayPal\Api\WebProfile();
$webProfile->setName("GuestPaymentProfileNameasdf")
->setFlowConfig($flowConfig)
->setPresentation($presentation)
->setInputFields($inputFields);


$webProfile->create($APIauth)

此创建命令返回一些字符串 (XX-XXXX-XXXX-XXXX-XXX),该字符串保存在 paypal 中以识别我放入系统中的这组选项。

...
$payment->setExperienceProfileId('XX-XXXX-XXXX-XXXX-XXX'); //profile ID 
...

有谁知道我在这里可能做错了什么?正如所写,这完全在沙盒中工作,但是当我切换到 LIVE 时,客户总是被发送到正常的登录页面。

还有其他方法吗? 我是否错过了一些提示或贬低的迹象?

我一直在努力解决这个问题,这种行为的原因似乎是我在德国的 Paypal 帐户的限制。

一开始我能买到as a guest。然后这个选项消失了——可能是我的沙盒注入的 cookie 过期了。 所以我今天打电话给Paypal的支持并询问了一些具体问题。

我对这个客人购买功能有其他期望,因为我已经习惯了无限制的美国沙盒帐户。当您从无限制的沙箱更改为受限的真实账户时,我个人的混淆可能是由于选项/限制/限制的可能内部混淆造成的。 事情是,我 should not 在德国看到了这个 guest-billing-page - 但它有效......在上线后一次。