Ошибка setExpressCheckout, когда я добавляю параметры в returnURL

У меня есть работающий (в песочнице) процесс оплаты ExpressCheckout. Я пытаюсь добавить параметр к аргументу ReturnURL в вызове SetExpressCheckout. Как только я добавляю параметр, вызов завершается с ошибкой недопустимого ReturnURL.

Я пробовал разные имена параметров и всегда получаю одну и ту же ошибку. Если я удалю все параметры, все работает нормально.

Работающий код: RETURNURL = 'http://mywebaddress.com'

Код, вызывающий ошибку: RETURNURL = 'http://mywebaddress.com?transid=123'

Чтобы добавить немного больше деталей, вот ошибка, возвращаемая PayPal:

«TIMESTAMP»: «2014-05-29T23:58:20Z», «CORRELATIONID»: «3313de9c9e0cc», «ACK»: «Ошибка», «ВЕРСИЯ»: «111.0», «СБОРКА»: «11196751», «L_ERRORCODE0 ":"10471", "L_SHORTMESSAGE0":"Транзакция отклонена из-за недопустимого аргумента. Подробнее см. в дополнительных сообщениях об ошибках.", "L_LONGMESSAGE0":"URL-адрес возврата недействителен.", "L_SEVERITYCODE0":"Ошибка"


person user3687999    schedule 29.05.2014    source источник
comment
Можете ли вы предоставить дополнительную информацию об ошибке (например, полную трассировку и/или сообщение об ошибке)?   -  person eebbesen    schedule 29.05.2014


Ответы (1)


проверьте кодировку URL-адреса в ошибочном URL-адресе. Я думаю, это могло бы работать так: 'http://mywebaddress.com%2ftransid=123' (удален ? и добавлена ​​правильная кодировка URL для косой черты '%2f')

person PP_GOPSMTS_KevinG    schedule 30.05.2014
comment
Добавление / между именем хоста и ? кажется, сделал свое дело. Спасибо. - person user3687999; 03.06.2014