我正在尝试动态更新PayPal托管按钮,但得到一个错误
The button type specified is invalid.
我使用了PPHttpPost函数(这可能很好),从这里取:https://www.x.com/paypal-apis-dodirectpayment-php-5.3/nvp,我只是删除了所有的nvp
变量,除了API签名,密码等。
这是我使用ButtonManager的代码:
// Set request-specific fields.
$nvpStr = "&HOSTEDBUTTONID=buynow&BUTTONCODE=HOSTED&AMT=330.66&BUTTONTYPE=BUYNOW";
// Execute the API operation; see the PPHttpPost function above.
$httpParsedResponseAr = PPHttpPost('BMUpdateButton', $nvpStr);
var_dump($httpParsedResponseAr);
?>
我做错了什么?
编辑
当我从请求字符串中删除HOSTEDBUTTONID并输出完整的NVP字符串时,我得到了这个(用下划线替换了一些字符):
METHOD=BMUpdateButton&VERSION=98.0&PWD=1362320204&USER=___._1362320167_biz_api1.gmail.com&SIGNATURE=________________&BUTTONCODE=HOSTED&AMT=330.66
遇到同样的问题后,我已经把问题解决了。
随着:"BUTTONTYPE" => "BUYNOW"
你需要:
"BUTTONSUBTYPE" => "PRODUCTS"
我知道它在API文档中说是可选的,但它确实是必需的。
子类型可以是PRODUCTS或SERVICES