【问题标题】:PayPal Missing Credential - TransactionSearch(Classic API)PayPal 缺少凭据 - TransactionSearch(经典 API)
【发布时间】:2015-03-19 05:33:50
【问题描述】:

我正在尝试调用 TransactionSearch。但我得到了异常缺少凭据异常 这是我的代码

TransactionSearchResponseType responseTransactionSearchResponseType = new TransactionSearchResponseType();
TransactionSearchReq requestTransactionSearch = new TransactionSearchReq();
TransactionSearchRequestType transactionSearchRequest = new TransactionSearchRequestType("2012-12-25T00:00:00+0530");
requestTransactionSearch.TransactionSearchRequest = transactionSearchRequest;

Dictionary<string, string> paypalConfig = new Dictionary<string, string>();
paypalConfig.Add("apiUsername", "userName");
paypalConfig.Add("apiPassword", "passowrd");
paypalConfig.Add("apiSignature", "Signature");
paypalConfig.Add("appid", "appID");
paypalConfig.Add("ipn","https://www.paypal.com/cgi-bin/webscr");
paypalConfig.Add("url", "https://www.paypal.com/webscr&cmd=_express-checkout&token=");
paypalConfig.Add("endpoint", "https://api-3t.paypal.com/2.0/");
paypalConfig.Add("mode", "live");

PayPalAPIInterfaceServiceService service = new PayPalAPIInterfaceServiceService(paypalConfig);
responseTransactionSearchResponseType = service.TransactionSearch(requestTransactionSearch);
这会是什么原因? 我的凭证不是问题。那么我的根本原因是什么?

请帮帮我 谢谢

【问题讨论】:

  • 需要查看类生成的实际请求。
  • @AndrewAngell 感谢您的回复。

标签: c# paypal paypal-ipn paypal-sandbox


【解决方案1】:

PayPal Core SDK 中的CredentialManagerPayPal Merchant SDK 使用它并且是此异常的来源)需要 Classic 应用程序的帐户详细信息前面有 account#. 令牌的配置。因此,对于单个帐户,例如您的代码设置方式,配置详细信息应指定如下:

Dictionary<string, string> paypalConfig = new Dictionary<string, string>();
paypalConfig.Add("account1.apiUsername", "userName");
paypalConfig.Add("account1.apiPassword", "passowrd");
paypalConfig.Add("account1.apiSignature", "Signature");
paypalConfig.Add("account1.applicationId", "appID");
paypalConfig.Add("IPNEndpoint","https://www.paypal.com/cgi-bin/webscr");
paypalConfig.Add("url", "https://www.paypal.com/webscr&cmd=_express-checkout&token=");
paypalConfig.Add("endpoint", "https://api-3t.paypal.com/2.0/");
paypalConfig.Add("mode", "live");

可以通过增加account#. 令牌来添加配置中的后续帐户。

此外,上面的代码还纠正了以下两个配置属性名称:

  • appid 应该是 account#.applicationId
  • ipn 应该是 IPNEndpoint

更多关于配置键的信息可以在here找到。

【讨论】:

  • 感谢您的回复.. 工作!!!也感谢您提供参考链接...欣赏它
猜你喜欢
  • 2013-03-06
  • 2011-06-09
  • 2013-10-18
  • 1970-01-01
  • 2013-09-16
  • 2014-04-26
  • 2014-06-03
  • 2016-11-22
  • 1970-01-01
相关资源
最近更新 更多