2015-10-02 2 views
0

Я использую API paypal rest для обработки платежей с использованием метода экспресс-оплаты PayPal в веб-приложении java, и в настоящее время приложение указывает на песочницу paypal. Мы не испытывали сделки без проблем до недавнего времени, но вдруг он не работает сейчас, не делать какие-либо изменения кодирования также,Срок действия транзакции PayPal истек

теперь, когда перенаправлять на Paypal сайта для подтверждения пользователя, всегда получает страницу изречения,

This transaction has expired. Please return to the recipient's website to complete your transaction using their regular checkout flow 

We're sorry, but your session has ended. Your account hasn't been charged. Please go back to the merchant's site and check out again with PayPal. 

Я получаю перенаправлять URL (URL) утверждение в Java как ниже

private String getApprovalURL(Payment payment) 
     throws UnsupportedEncodingException { 
    String redirectUrl = null; 
    List<Links> links = payment.getLinks();  
    for (Links l : links) { 
     if (l.getRel().equalsIgnoreCase("approval_url")) { 
      redirectUrl = URLDecoder.decode(l.getHref(), "UTF-8"); 
      break; 
     } 
    } 
    return redirectUrl; 
} 

и я получаю перенаправление URL, похожий на следующий,

https://www.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=EC-6U3345417C9052027 

что может быть причиной такого поведения? какие-либо предложения?

Спасибо.

ответ

2

Мы столкнулись с этой проблемой. Мы разрешили его, изменив возвращаемый URL-адрес, полученный нами от обратного вызова paypal, и явно добавим sandbox к URL-адресу перед его перенаправлением.

Actual Url получил: https://www.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=EC-6U3345417C9052027

Модифицированный Адрес: https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=EC-6U3345417C9052027

+0

Это работает спасибо, но я хотел бы знать, что является причиной этой проблемы, потому что он работает нормально – Lakmal

Смежные вопросы