Methods 81002-链式支付的未指定方法

Methods 81002-链式支付的未指定方法,methods,paypal,unspecified,Methods,Paypal,Unspecified,我在一个链式自适应支付呼叫(通过PHP)上收到以下消息。有人知道为什么吗 array(5) { ["ACK"]=> string(7) "Failure" ["L_ERRORCODE0"]=> string(5) "81002" ["L_SHORTMESSAGE0"]=> string(18) "Unspecified Method" ["L_LONGMESSAGE0"]=> string(33) "Method Specified is

我在一个链式自适应支付呼叫(通过PHP)上收到以下消息。有人知道为什么吗

array(5) {
  ["ACK"]=>
  string(7) "Failure"
  ["L_ERRORCODE0"]=>
  string(5) "81002"
  ["L_SHORTMESSAGE0"]=>
  string(18) "Unspecified Method"
  ["L_LONGMESSAGE0"]=>
  string(33) "Method Specified is not Supported"
  ["L_SEVERITYCODE0"]=>
  string(5) "Error"
}
正在使用PHP进行调用,数据如下:

METHOD=PAY&VERSION=84&PWD=xxxxxxxx&USER=support_api1.handmade.com&SIGNATURE=Ai1PaghZh5FmBLCxDCTQpwGx8jB26x4ALMef45mrA1XxMjpRjp20Iz6z.OBactionType=CREATE
¤cyCode=GBP
&returnUrl=http%3A%2F%2Fwww.handmadeandunique.com%2Fsuccess.php
&cancelUrl=http%3A%2F%2Fwww.handmadeandunique.com%2Ffail.html
&feesPayer=PRIMARYRECEIVER
&memo=Test+transaction
&trackingId=ZGP-32322323s
&ipnNotificationUrl=http%3A%2F%2Fwww.handmade.com%2FIPN.php
&receiverList.receiver(0).email=jennie%40xxxxx.me.uk
&receiverList.receiver(0).amount=100
&receiverList.receiver(0).invoiceId=ZGP-32322323s
&receiverList.receiver(0).primary=true
&receiverList.receiver(0).paymentType=GOODS
&receiverList.receiver(1).email=billy-browse%40hotmail.co.uk
&receiverList.receiver(1).amount=4
&receiverList.receiver(1).invoiceId=ZGP-32322323s
&receiverList.receiver(1).primary=false
&receiverList.receiver(1).paymentType=GOODS
&BUTTONSOURCE=PP-ECWizard

在自适应支付API调用中不定义
方法
值或变量

以下是支付API调用的示例请求:

actionType=PAY
receiverList.receiver(0).email=x@y.com
receiverList.receiver(0).amount=100.00
currencyCode=USD
feesPayer=EACHRECEIVER
memo=Simple payment example.
cancelUrl=http://return.com/cancel.php
returnUrl=http://cancel.com/return.php
ipnNotificationUrl=http://www.notify.com//ipn-listener.php
requestEnvelope.errorLanguage=en_US

您是否检查过没有对参数进行两次编码?我的例子是通过http_build_query()和一些默认设置发生的,这些默认设置由于运行时的某个地方被更改而不稳定

确保您没有对twize进行编码,如果使用http\u build\u query()更新您的函数,使其在编码部分显式显示:

from: http_build_query($requestParameters)

to: http_build_query($requestParameters,'','&')

不同之处在于,最后一个版本将显式使用&作为分隔符,而第一个版本将使用默认值,因此请确保。

欢迎使用堆栈溢出!我认为,唯一可以改进您的问题(在其他方面很容易阅读和理解)的方法是粘贴PHP代码。