Завершите процесс оплаты с помощью PayPal Java и получите статус независимо от того, успешно он завершен или нет

#java #paypal #paypal-sandbox

#java #paypal #paypal-песочница

Вопрос:

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

Комментарии:

1. Следует отметить, что руководство, на которое вы ссылались на CodeJava.net является старым и использует устаревший v1 / payments REST SDK. Вы должны интегрироваться с использованием новейшего SDK версии v2, доступного здесь: github.com/paypal/Checkout-Java-SDK . Вам понадобятся два маршрута, один для «Настройки транзакции» и один для «Захвата транзакции», описанный здесь: developer.paypal.com/docs/checkout/reference/server-integration , и лучшим потоком веб-одобрения для сопряжения этих двух маршрутов является следующий: developer.paypal.com/demo/checkout/#/pattern/server

Ответ №1:

Я обнаружил, что транзакция будет добавлена, но она имеет статус «ожидающий»

Для этого есть несколько возможных причин, одна из которых — просто ожидаемое поведение requestPayment.setIntent("authorize"); . Возможно, вы просто захотите изменить это на «продажа», если оно не фиксируется автоматически в руководстве, которому вы следовали.

Другой возможной причиной является валюта, если она новая для этой учетной записи получателя в изолированной среде. Войдите в учетную запись получателя через https://www.sandbox.paypal.com , и посмотрите, можете ли вы принять один из платежей в новой валюте, который откроет валютный баланс. Будущие платежи не будут ожидаться.

Также убедитесь, что бизнес-учетная запись sandbox, получающая платеж, имеет подтвержденный адрес электронной почты в среде sandbox…

  1. Войдите в него по адресу https://www.sandbox.paypal.com/businessprofile/settings/email
  2. При необходимости отправьте подтверждение оттуда
  3. Прочитайте и перейдите к подтверждению через https://www.paypal.com/signin?intent=developeramp;returnUri=https://developer.paypal.com/developer/notifications/

Комментарии:

1. Спасибо за ваш ответ, но деньги увеличиваются для продавца, но не уменьшаются для покупателя.

2. Итак? Покупатель, по сути, имеет бесконечное финансирование в песочнице, это не имеет никакого значения

3. состояние транзакции не работает Платеж payment = paymentServices.ExecutePayment(PaymentID, PayerID); String status=payment1.getState(); статус — null

4. Когда вы выполняете вызов API v1 / payments execute, вы возвращаете статус транзакции в REST JSON, но я не знаю и не хочу ничего знать об этих оболочках функций в этом устаревшем PayPal-Java-SDK. Смотрите Мой комментарий выше для получения информации о текущем оформлении заказа v2-Java-SDK

5. я хочу спросить вас, могу ли я отправить некоторые дополнительные данные в paypal, чтобы получить их обратно после оплаты, потому что пользователь должен заполнить форму перед оплатой.