PayPal Express Checkout Classic API 入门

Posted

技术标签:

【中文标题】PayPal Express Checkout Classic API 入门【英文标题】:Getting started with PayPal Express Checkout Classic API 【发布时间】:2015-06-08 04:50:07 【问题描述】:

请注意,我使用的是 Classic API,因为我所在的国家/地区无法使用 REST API 进行信用卡支付。

我刚刚开始设置应用程序以使用 Express Checkout 而不是 Payment Standard,我完全迷失了 PayPal 的 API 设置。他们让阅读文档变得异常困难。

我已经做了以下事情:

为我的“应用程序”设置一个经典 API 帐户并获得:

Sandbox ID: APP-XXXXXXXXXXXXX Live App ID: APP-XXXXXXXXXXXXX

在我的 Premier 帐户中生成 API 签名并获得:

Credential: API Signature API Username : name_api1.domain.com API Password: XXXXXXXXXXXX Signature: (Really long string)

现在,我发现我可以调用它来创建一个测试令牌,如下所示:

curl -s --insecure  https://api-3t.sandbox.paypal.com/nvp
-d  "USER=platfo_1255077030_biz_api1.gmail.com&
PWD=1255077037&
SIGNATURE=Abg0gYcQyxQvnf2HDJkKtA-p6pqhA1k-KTYE0Gcy1diujFio4io5Vqjf&
METHOD=SetExpressCheckout&
VERSION=78&
PAYMENTREQUEST_0_PAYMENTACTION=SALE&
PAYMENTREQUEST_0_AMT=19&
PAYMENTREQUEST_0_CURRENCYCODE=USD&
cancelUrl=http://www.example.com/cancel.html&
returnUrl=http://www.example.com/success.html

但是如何使用我自己的 API 用户名和密码调用它?我尝试用PWDUSER 替换我的信息,但它不起作用。

我是否总是在沙盒中使用上述 cURL 请求进行测试?还是我应该使用自己的?如果是这样,怎么做?沙盒 ID 有什么用?我似乎无法在 cURL 的任何地方指定它。

我查看了https://developer.paypal.com/docs/classic/products/#ec 的文档,但没有任何意义。

【问题讨论】:

【参考方案1】:

他们有很多文档,是的,但究竟有什么没有意义呢?您是从入门材料开始,通读一遍,然后继续阅读有关 API 调用的更详细的文档,还是跳过其中的一部分?

Express Checkout 不需要 App ID,因此您无需担心。如果您将来需要使用 Adaptive Payments API,那将是这样。

您说他们提供的示例可以正常工作,但随后您尝试了自己的凭据并且“它不工作”。对于任何人来说,这些信息都不足以帮助您。您收到错误代码吗?是偶然的安全标头无效错误,还是它是什么?

您是否偶然使用 php?如果是这样,请查看this library。它会让你的一切变得更容易。

给我一​​些细节,然后我会更新这个答案(用一个实际的答案)。评论太长了。

【讨论】:

非常感谢您的回复! :) 那个图书馆确实很有帮助。我想我会同意的。是的,错误是LONGMESSAGE0=Security%20header%20is%20not%20valid。是什么原因造成的?我确保用户名、密码和签名正确。 或者可能是因为我在沙盒帐户上使用了 LIVE 凭据? ***.com/questions/23261766/… 我会被诅咒的。我的凭据在 LIVE 上有效,但在 SANDBOX 上无效。我是否必须为沙盒生成一组不同的凭据? 是的,您需要为沙盒帐户创建单独的凭据,并确保使用正确的凭据和正确的端点(沙盒与实时)

以上是关于PayPal Express Checkout Classic API 入门的主要内容,如果未能解决你的问题,请参考以下文章

PayPal Express Checkout Instant Update 不更新运费

Paypal Sandbox (express-checkout) 返回内部错误

php 更改YITH PayPal Express Checkout for WooCommerce的Set Express Checkout Request参数

PayPal Express Checkout 通行证 transactionID

如何访问 Paypal Express Checkout 的响应?

如何为 PayPal Express Checkout 配置 IPN?