Как протестировать кнопки подписки Paypal в песочнице?

после 5 часов исследований и чтения устаревшей документации PayPal я наконец сдаюсь!

Мне нужно протестировать простую кнопку подписки PayPal с песочницей PayPal.

Код кнопки:

<form action="https://www.sandbox.paypal.com/us/cgi-bin/webscr" method="post">
     <input type="hidden" name="cmd" value="_s-xclick">
     <input type="hidden" name="hosted_button_id" value="34CXHXVU2J8BY">
     <input type="image" 
            src="https://www.paypalobjects.com/en_US/GB/i/btn/btn_subscribeCC_LG.gif" 
            border="0" name="submit" 
            alt="PayPal — The safer, easier way to pay online." 
            style="border:none;padding:0;height:auto;width:auto">
     <img alt="" border="0" 
          src="https://www.paypalobjects.com/de_DE/i/scr/pixel.gif" 
          width="1" height="1">
</form>

Но когда я пытаюсь отправить форму, я получаю эту ошибку на веб-сайте PayPal:

http://i.stack.imgur.com/AVuTz.png

Заранее спасибо, Филипп


person stdclass    schedule 30.12.2011    source источник
comment
Вы генерировать код, используя кнопки генератор на PayPal .com/uk/cgi-bin/ ?   -  person Dmitry Negoda    schedule 31.12.2011


Ответы (5)


Проблема заключается в том, что вы создали «размещенную» кнопку PayPal на действующем веб-сайте PayPal, но отправляете эти данные в песочницу.
Поскольку hosted_button_id не распознается в песочнице, она возвращает ошибку.

Вам нужно либо:

  • Создайте неразмещенную кнопку и измените параметры «действие» и «бизнес» в соответствии с данными песочницы.
  • Создайте новую "размещенную" кнопку в тестовой среде с помощью www.sandbox.paypal.com > Profile > PayPal Buttons..

Вкратце: песочница на 100% отделена от веб-сайта Live PayPal. Размещенная кнопка, созданная в Live, не работает в Sandbox.

person Robert    schedule 31.12.2011
comment
То есть невозможно протестировать размещенную кнопку? Мне остается только надеяться, что все работает, или провести реальную оплату? - person Bobby Jack; 08.11.2012
comment
В моем случае мне пришлось удалить всю историю (куки, сеансы и т. д.), иначе сайт sandbox.paypal.com перенаправлял меня в другое место. - person Berry Tsakala; 03.10.2013
comment
Кто-нибудь знает, как я могу сгенерировать hosted_button_id в своем серверном приложении? - person bob_saginowski; 10.10.2014
comment
Для этого вам нужно будет вызвать BMCreatebutton API. - person Robert; 30.10.2014
comment
Существует ошибка в поддомене песочницы, когда вы нажимаете ссылку «Создать кнопку», вы возвращаетесь к действующему домену www.paypal.com, а не к поддомену www.sandbox.paypal.com. Вот правильная ссылка для генератора кнопок песочницы: sandbox.paypal.com/webapps /mpp/стандартная интеграция - person TARKUS; 25.11.2014
comment
Та же проблема со ссылкой «Управление моими сохраненными кнопками», которая ведет к обычному домену PayPal.com. Вот рабочая ссылка для управления сохраненными кнопками: песочница. paypal.com/us/cgi-bin/webscr?cmd=_button-management - person TARKUS; 25.11.2014
comment
@Robert Привет, я получаю сообщение Извините, эта функция в настоящее время недоступна При попытке подписаться на регулярный платеж с использованием автоматического выставления счетов. Как я могу это решить? Также кнопка автоматического выставления счетов не отображается в раскрывающемся списке при попытке создать новую кнопку PayPal в песочнице. - person youv; 21.04.2016
comment
@ Роберт, ты молодец! Ваш ответ это! - person user770119; 25.10.2020

Небольшое дополнение, как сделать размещенную кнопку в песочнице:

  1. Создайте учетную запись песочницы и войдите в нее на https://developer.paypal.com/.
  2. Выберите «Тестовые аккаунты».
  3. Создайте «Преднастроенную» тестовую учетную запись для продавца, убедитесь, что вы помните пароль и убедитесь, что пароль содержит цифры, иначе вы не сможете войти с ним.
  4. Нажмите желтую кнопку «Войти на тестовую площадку песочницы».
  5. Моя учетная запись >> Профиль >> Настройки продаж >> Мои сохраненные кнопки
  6. Отредактируйте свою кнопку. (Там есть 3 «сохраненные» предварительно сделанные кнопки.) Убедитесь, что вы не задерживаетесь слишком долго, он вышел из системы, не сказав мне об этом, и я получил пустое поле кода в первый раз, когда я возился со своей кнопкой.

Надеюсь, это сэкономило вам время :)

person Paul    schedule 29.06.2012
comment
Спасибо, меня продолжали перенаправлять обычным способом. - person user363349; 18.01.2013
comment
Где тестовые аккаунты на вашем шаге 2, @Paul? - person H. Ferrence; 05.09.2013
comment
желтой кнопки нет, а ссылка для входа в окно отправки перенаправляется на merchant.paypal.com. Смотрите скриншот: tinypic.com/r/11v6651/5 - person Berry Tsakala; 03.10.2013
comment
Для тех, кто сталкивается с этим сейчас, я попытался щелкнуть изображение кнопки создания в песочнице, и оно перенаправилось на обычный сайт. Я добавил песочницу обратно в URL-адрес в качестве поддомена, и он загрузил версию песочницы. - person Gaʀʀʏ; 15.07.2014
comment
Я не могу найти тестовые аккаунты. - person Hobbyist; 22.12.2014

Возможно, это поможет: https://cms.paypal.com/uk/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_api_ButtonMgrAPIIntro

Не все продавцы в каждой стране могут использовать все кнопки, которые можно создать. Например, немецкие продавцы не могут использовать кнопки «Подписаться», даже если их можно создать через API.

person Dmitry Negoda    schedule 30.12.2011

Да, это правда, PayPal на самом деле думает создание другой кнопки в отдельной песочнице эквивалентно "тестированию". Эээ, нет, PayPal, суть тестирования заключается в том, чтобы протестировать реальную вещь, а не копию того, что вы делаете с нуля в другой системе. Что, если что-то сделано по-другому (по ошибке, в чем смысл тестирования) или пойдет не так при настройке в другой системе? Это не тестирование. Это делает испытание.

Итак, отвечая на вопрос, вы не можете протестировать кнопку PayPal с помощью песочницы, вы можете проводить только пробные версии. Единственный способ на самом деле протестировать кнопку PayPal — это снизить цену до чего-то небольшого во время тестирования, например до цента, или просто заплатить за нее, а затем вернуть деньги.

person Community    schedule 29.12.2016

Да, вы также можете протестировать в песочнице, выполнив следующие действия:

  1. Создайте новый бизнес-аккаунт песочницы.
  2. Войдите в бизнес-аккаунт.
  3. Перейти с профилем> Мои инструменты настройки.
  4. Нажмите на кнопки Paypal > Обновить.
  5. Нажмите «Создать новую кнопку».
  6. Заполните все необходимые данные.
  7. Наконец, вы можете получить код формы с «hosted_id».
  8. Вы можете вставить код на свой сайт и протестировать его.

Надеюсь, эти шаги будут вам полезны.

person kishan Radadiya    schedule 09.08.2017
comment
Это должно быть реальным решением на 2020 год. - person Harrison; 10.03.2020