在结帐页面上,加载PayPal Javascript SDK,我提供了多个这样的商户ID(当然[my_client_id]
被我的ID代替了),出于隐私原因,显示的电子邮件地址已被修改:
<script src="https://www.paypal.com/sdk/js?client-id=[my_client_id]¤cy=EUR&locale=de_DE&merchant-id=*"
data-merchant-id="lobo***@gmail.com,suic***@squar***.de,einkauf@***-games.de,paypal@***.events,***@kst***.at"></script>
然后,我为每个商人创建一个单独的Paypal Smart按钮。但是,尽管我提供了多个商家ID,但单击付款按钮后,我会收到以下错误消息:
Error: Payee(s) passed in transaction does not match expected merchant
id. Please ensure you are passing merchant-id=****55TUNG or
merchant-id=lobo***@gmail.com to the sdk url.
但是如上所示,URL中提供了商家ID 。如果我按下另一个商人的付款按钮,则会收到相同的错误消息,但错误消息中列出了该商人的ID。
PHP脚本使用createOrder传递的收款人正确地是商家的相应电子邮件地址(100%)。
这是PayPal SDK中的错误,还是我在SDK-URL中以错误的方式列出了商家ID(尽管这是PayPal在github上对其进行描述的方式)?
重要提示::如果我完全省略了SDK-URL中的商家ID,则会收到有关缺少商家ID的Javascript警告,但付款按钮可以正常工作(这使我确定PHP后端脚本可以100%正确地工作),付款正在处理中。
也很有趣:如果我在SDK-URL中省略了商户编号,PayPal将呈现四个不同的付款选项,如果我在URL中包含商户编号,那么只会显示两个(两个都显示)会抛出错误)。
所有这些都是指生产模式。
答案 0 :(得分:0)
仅传递单个商家ID,并使其与您要使用的收款人相对应。
或者,对于不需要的商户类型,根本不传递任何商户ID。