簡體   English   中英

使用 REST 獲取 PayPal 帳戶歷史記錄

[英]Get PayPal account history using REST

我想使用 Java PayPal SDK 來獲取帳戶歷史記錄。 我試過這個簡單的代碼:

    public void randomDatabaseData() throws SQLException, FileNotFoundException, IOException, PayPalRESTException {
    String clientID = "test";
    String clientSecret = "test";

    String accessToken = null;
    try {
        Map<String, String> map = new HashMap<String, String>();
        map.put("mode", "live");
        try {
            accessToken = new OAuthTokenCredential(clientID, clientSecret, map).getAccessToken();
        } catch (Exception e) {
            e.printStackTrace();
        }
        System.out.println(accessToken);
        transactionSearch(accessToken);

    } catch (Exception e) {
        e.printStackTrace();
    }
}

public TransactionSearchResponseType transactionSearch(String accessToken) {

    TransactionSearchReq transactionSearchReq = new TransactionSearchReq();
    TransactionSearchRequestType transactionSearchRequest = new TransactionSearchRequestType(
            "2012-12-25T00:00:00+0530");
    transactionSearchReq.setTransactionSearchRequest(transactionSearchRequest);
    PayPalAPIInterfaceServiceService service = new PayPalAPIInterfaceServiceService();
    service.setTokenSecret(accessToken);

    TransactionSearchResponseType transactionSearchResponse = null;
    try {
        transactionSearchResponse = service.transactionSearch(transactionSearchReq);
    } catch (Exception e) {
        System.out.println("Error Message : " + e.getMessage());
    }
    if (transactionSearchResponse.getAck().getValue().equalsIgnoreCase("success")) {

        Iterator<PaymentTransactionSearchResultType> iterator = transactionSearchResponse
                .getPaymentTransactions().iterator();
        while (iterator.hasNext()) {
            PaymentTransactionSearchResultType searchResult = iterator.next();

            System.out.println("Transaction ID : " + searchResult.getTransactionID());
        }
    } else {
        List<ErrorType> errorList = transactionSearchResponse.getErrors();
        System.out.println("API Error Message : " + errorList.get(0).getLongMessage());
    }

    return transactionSearchResponse;
}

但是當我運行代碼時,我得到了他的錯誤堆棧:

    Error Message : configurationMap cannot be null
java.lang.NullPointerException
    at com.crm.web.tickets.GenearateTicketsTest.transactionSearch(GenearateTicketsTest.java:161)
    at com.crm.web.tickets.GenearateTicketsTest.randomDatabaseData(GenearateTicketsTest.java:139)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

我該如何修復此代碼? 我將客戶端 ID 和密鑰配置到 PayPal 網站,但仍然出現錯誤。

我建議您使用TransactionSearch API 根據您的搜索日期范圍獲取付款歷史記錄。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM