1

有很多方法可以在互联网上付款,其中一个是 PayPal。我正在开发 django 项目,我需要集成 paypal,所以我在我的观点中使用了这个代码:

from paypal.pro.views import PayPalPro

def buy_it_now(request):
    item = {
                "amt": "10.00",             
      "inv": "inventory",       
      "custom": "tracking",      
      "cancelurl": "http://...",  
      "returnurl": "http://..."}

    kw = {"item": item,                          
        "payment_template": "payment.html",     
        "confirm_template": "confirmation.html", 
        "success_url": "/success/"}           

    ppp = PayPalPro(**kw)
    return ppp(request)

但我在控制台中得到了这个:

PayPal Response:
{'ack': 'Failure',
 'build': '5715372',
 'correlationid': 'd328871dd352',
 'l_errorcode0': '10002',
 'l_longmessage0': 'Security header is not valid',
 'l_severitycode0': 'Error',
 'l_shortmessage0': 'Security error',
 'timestamp': '2013-05-03T13:10:14Z',
 'version': '54.0'}

我还在贝宝沙盒中检查了我的测试帐户,没有交易

4

1 回答 1

0

10002 错误通常意味着您没有正确设置端点,API 凭据不正确,或者您没有权限在您尝试的帐户上运行 API 调用。

  1. 检查您的端点以确保它们是正确的。如果尝试指向沙箱,请确保您的代码反映沙箱端点,如果尝试在实时站点上运行事务,请确保您的代码反映沙箱端点。

  2. 检查您的 API 凭据,将它们重新复制到您的代码中。确保您的凭据之前或之后没有任何类型的空白。还要确保您是否试图指向您正在传递您的实时凭据而不是您的沙盒凭据的实时站点,并且虎钳。实时凭据和沙盒凭据将不相同。

  3. 如果您尝试在另一个帐户上处理 API 调用,请确保他们已在其帐户中授予第三方访问您 API 的权限。确保他们已授予您 API 用户名的正确权限。

  4. 确保您没有传递变量“SUBJECT”并使用电子邮件地址填充它。仅当您尝试在该帐户上运行 API 时才这样做,而不是为您自己的帐户生成 API 凭据。这将是您在第 3 步中提到的用于第 3 方访问的内容。

于 2013-05-03T15:04:16.150 回答