是否可以使用PayPal API接受付款而无需“APIPassword”

时间:2013-08-29 05:08:55

标签: c# asp.net paypal paypal-nvp

我添加了PayPal Express Checkout&使用PayPal API在我的网站上进行PayPal定期付款。

我在web.config文件中添加了PayPal API详细信息,如下所示

<appSettings>
<add key="APIUsername" value="username_api1.sitename.com"/>
<add key="APIPassword" value="1234567890"/>
<add key="APISignature" value="AYNTWwVp7kXPvCitJdl4O9aXZuCpAekoTM41ULLqI6Pt0lCy0tNDh8--"/>
<add key="Host" value="www.sandbox.paypal.com"/>
<add key="CurrencyCode" value="USD"/>

C#代码

使用的命名空间 -

using com.paypal.sdk.services;
using com.paypal.sdk.profiles;
using com.paypal.sdk.util;

我正在使用名称值对方法

C#代码

NVPCallerServices caller = new NVPCallerServices();
IAPIProfile profile = ProfileFactory.createSignatureAPIProfile();
profile.APIUsername = System.Configuration.ConfigurationManager.AppSettings["APIUsername"];
profile.APIPassword = System.Configuration.ConfigurationManager.AppSettings["APIPassword"];
profile.APISignature = System.Configuration.ConfigurationManager.AppSettings["APISignature"];
caller.APIProfile = profile;

如您所见,我需要用户名,密码和签名接受付款。

我需要知道是否可以在不知道API密码字段的情况下接受付款。

我正在测试它,但知道是否有人已经知道这个问题答案会很有用。

请记住我只想接受付款。

感谢。

2 个答案:

答案 0 :(得分:1)

您所做的任何经典API调用都需要有效的用户名,密码和签名(或证书)。

答案 1 :(得分:0)

您无法真正将密码与用户名和签名分离 - 它们是一组,并且您通常必须在进行API调用时提供所有三个密码。

但是,您可以通过传递Subject字段而不是API用户名,密码和签名来执行有限的操作。在这种情况下,主题将是您的PayPal帐户的电子邮件地址。但是,如果没有API用户名/密码/签名,您将仅限于运行几个API调用 - SetExpressCheckout,GetExpressCheckoutDetails,DoExpressCheckoutPayment和GetTransactionDetails。您也将仅限于运行销售交易 - 您无法运行授权,也无法创建定期付款。