1

我正在尝试找到一种方法来使用 NVP 通过贝宝的快速结帐传递自定义参数。我尝试过使用已弃用的 PAYMENTREQUEST_n_CUSTOM、据称未弃用的 PAYMENTREQUEST_0_CUSTOM 和 CUSTOM 参数,但它们都不起作用。

我现在可以看到的唯一方法(我宁愿不使用)是:1.使用我不使用的其他参数之一(如运输)2.使用返回 url 并将参数添加到它一个 GET 参数 3. 使用会话。

根据错误页面,我的版本是 92.0。其余参数为:

$nvpstr="&SHIPPINGAMT=0&L_SHIPPINGOPTIONNAME0=test&L_SHIPPINGOPTIONAMOUNT0=0&REQCONFIRMSHIPPING=0&NOSHIPPING=1&L_SHIPPINGOPTIONISDEFAULT0=true&ADDRESSOVERRIDE=1$shiptoAddress&".
               "&ALLOWNOTE=0&CUSTOM=".$CUSTOM.
               "&L_NAME0=".$L_NAME0."&L_AMT0=".$L_AMT0."&L_QTY0=".$L_QTY0.
               "&MAXAMT=".(string)$maxamt."&AMT=".(string)$amt."&ITEMAMT=".(string)$itemamt.
               "&CALLBACKTIMEOUT=4&CALLBACK=https://www.ppcallback.com/callback.pl&ReturnUrl=".$returnURL."&CANCELURL=".$cancelURL .
               "&CURRENCYCODE=".$currencyCodeType."&PAYMENTREQUEST_0_PAYMENTACTION=".$paymentType;
4

1 回答 1

0
  1. 不要混合PAYMENTREQUEST_0_*变量和它们已弃用的对应物——使用其中一个。(例如,不要在同一个 API 调用中使用 and ——要么使用PAYMENTREQUEST_0_PAYMENTACTIONand ,要么使用and 。)AMTPAYMENTREQUEST_0_PAYMENTACTIONPAYMENTREQUEST_0_AMTPAYMENTACTIONAMT
  2. 这似乎是 SetExpressCheckout 调用。您可以在此处传递一个CUSTOM值,但如果您这样做,它将显示的唯一位置是对您的 GetExpressCheckoutDetails 调用的响应。您需要CUSTOM在 DoExpressCheckoutPayment 调用中提供该值,以便将其记录到您的帐户中。
于 2013-09-13T18:17:54.407 回答