Что не так с этим кодом для обновления кнопки PayPal? Я получаю "buttontype invalid error"
Я пытаюсь динамически обновить размещенную кнопку 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
1 ответ
После столкновения с той же проблемой, я понял проблему.
Вместе с:
"BUTTONTYPE" => "BUYNOW"
Тебе нужно:
"BUTTONSUBTYPE" => "PRODUCTS"
Я знаю, что в документах по API написано необязательно, но это действительно необходимо.
Подтип будет либо ПРОДУКТЫ, либо УСЛУГИ.