#php #paypal-sandbox #paypal-ipn
Вопрос:
Я работаю над тем, чтобы отказаться от приема платежей Paypal в первый раз. Я довольно новичок в PHP, поэтому я использую их самый простой метод, Уведомления о мгновенных платежах, когда ваша платежная форма перенаправляется на Paypal, пользователь вводит свои данные, а затем, в зависимости от того, был ли платеж успешным или нет, они перенаправляются обратно на одну из ваших страниц, указанную вами при вызове на их страницу. Отлично!
В фоновом режиме происходит процесс рукопожатия с вашей страницей php «уведомить», которую вы также указываете, которую они вызывают, чтобы сообщить вам о том, что произошло, чтобы вы могли выполнять работу с БД, независимо от страниц, показанных пользователю. Здорово.
Мой вопрос заключается в том, что в режиме песочницы, когда пользователь направляется на платежную страницу PayPal и ему необходимо войти в систему (т. Е. я, тестирование), где я могу найти учетные данные для входа? Поскольку это страница «песочницы», данные моей деловой/личной учетной записи не работают. Я ничего не могу найти на (довольно запутанном) сайте PayPal. Как мне войти в систему и имитировать успешный или отклоненный платеж?
Ответ №1:
Я использую их самый простой метод, Уведомления о мгновенных платежах, когда вы перенаправляете платежную форму на Paypal, пользователь вводит свои данные, а затем, в зависимости от того, был ли платеж успешным или нет, они перенаправляются обратно на одну из ваших страниц, указанную вами при вызове на их страницу. Отлично!
Это не самый простой метод, это самый старый метод (20 лет?), и это не то, что вы должны интегрировать в 2021 году.
Вместо этого следуйте текущему руководству по настройке стандартных платежей и создайте на своем сервере 2 маршрута: один для «Создания заказа» и один для «Заказа на захват», описанного здесь. Оба маршрута должны возвращать только данные JSON (без HTML или текста). В рамках второго маршрута, когда ответ API захвата будет успешным, сохраните полученные в результате платежные данные в своей базе данных (в частности purchase_units[0].payments.captures[0].id
, идентификатор транзакции PayPal) и выполните любую необходимую бизнес-логику (например, отправив электронное письмо с подтверждением или зарезервировав продукт) непосредственно перед отправкой возвращаемого JSON вызывающему интерфейсу.
Соедините свои 2 маршрута с потоком утверждения интерфейса JS: https://developer.paypal.com/demo/checkout/#/pattern/server
Комментарии:
1. О нет… еще один метод изучения и понимания. Спасибо вам за ваш ответ. Я сейчас почитаю.
2. Я работаю над процессом, который вы описали выше, но он отвечает на другой вопрос, чем тот, который я задал. Я нашел фактический ответ, поэтому я собираюсь добавить это ниже для полноты картины.
Ответ №2:
Нашел учетные данные, которые находятся на панели мониторинга PayPal (здесь: https://developer.paypal.com/developer/applications). Нажмите «ПЕСОЧНИЦА» > «Учетные записи». Здесь должны быть показаны тестовые бизнес-и личные учетные записи. Нажмите на многоточие рядом с учетной записью, а затем Введите/Измените учетную запись. Это покажет всплывающее окно с учетными данными.