如何获得PayPal自适应付款响应



我想为我的Spring Web应用程序实现PayPal自适应支付。 我参考以下链接并实现流 https://developer.paypal.com/webapps/developer/docs/classic/adaptive-payments/gs_AdaptivePayments/

我遵循了以下步骤,第 1 步:使用沙盒 API 凭据获取支付密钥

公共类自适应即时支付 {

/**
 * @param args
 * @throws IOException 
 */
public static void main(String[] args) throws IOException {
    Document doc = Jsoup.connect("https://svcs.sandbox.paypal.com/AdaptivePayments/Pay")
              .header("X-PAYPAL-SECURITY-USERID", "xxxxxx_api1.comforters-it.com")
              .header("X-PAYPAL-SECURITY-PASSWORD", "xxxxxxxxxx")
               .header("X-PAYPAL-SECURITY-SIGNATURE", "AiPC9BjkCyDFQXbSkoZcgqH3hpacATgu-TD5fG94GO04KCRlPl1d4hW4")
                  .header("X-PAYPAL-REQUEST-DATA-FORMAT", "NV")
                    .header("X-PAYPAL-RESPONSE-DATA-FORMAT", "NV")
                     .header("X-PAYPAL-APPLICATION-ID", "APP-80W284485P519543T")                        
                       .data("actionType", "PAY")
                         .data("currencyCode", "EUR")
                             .data("receiverList.receiver(0).amount", "55")
                               .data("receiverList.receiver(0).email", "xxxxxx@comforters-it.com")
                              .data("returnUrl", "http://www.mytestapp.com/getPaypalResponse")                              
                              .data("cancelUrl", "http://www.mytestapp.com/cancelPaypalPayment")
                              .data("requestEnvelope", "{errorLanguage:en_US, detailLevel:ReturnAll }")
             .timeout(10 * 1000).post();
    System.out.println(doc);
}

第 2 步:我已经解析了 Jsoup 响应并获得了支付密钥,在我发送 https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_ap-payment&paykey=My-payKey

付款成功后PayPal将控制权重定向到 http://www.mytestapp.com/getPaypalResponse。但问题是我无法获得响应参数。我无法获得响应参数,例如支付密钥、接收电子邮件、确认等......我不知道我的错误是什么。如果我错了,请纠正我

谢谢森蒂尔·

您可以使用

PayPal提供的自适应支付服务类。它被称为自适应支付 SDK。

  • 下载: http://paypal.github.io/#adaptive-payments
  • 文档:https://developer.paypal.com/docs/classic/products/adaptive-payments/

最后你做这样的事情:

Properties properties = getProperties(); // see below
PayRequest payRequest = new PayRequest();
// <initialize payRequest> - see below
AdaptivePaymentsService adaptivePaymentsService = new AdaptivePaymentsService(properties);
PayResponse payResponse = adaptivePaymentsService.pay(payRequest);
String payKey = payResponse.getPayKey();

要设置的属性包括:

  • 帐户1.用户名
  • 帐户1.密码
  • 服务。重定向网址
  • 主要贝宝账户

PayRequest 具有请求信封、操作类型(例如 PAY)、取消 URL、返回 URL、货币代码、ReceiverList和预批准密钥。

此PayPal链接列出了获取付款详细信息所需的参数。一旦客户在付款后返回现场,您就可以发送请求。交易ID,支付密钥或跟踪ID中的任何一个就足够了。由于您已经可以使用支付密钥,因此您可以使用它。这方面的示例代码可在 github 中找到。servlet 的确切链接是这个,而 sdk 的链接是这个。

相关内容

  • 没有找到相关文章

最新更新