开始使用 PayPal Express Checkout Classic API
Getting started with PayPal Express Checkout Classic API
请注意,我使用的是 Classic API,因为我所在的国家/地区无法使用 REST API 进行信用卡付款。
我刚刚开始设置一个应用程序以使用 Express Checkout 而不是 Payment Standard,我完全迷失了 PayPal 的 API 设置。他们甚至让阅读文档变得异常困难。
我已经做了以下事情:
为我的 "App" 设置经典 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 用户名和密码调用它?我尝试用 PWD
和 USER
替换我的信息,但它不起作用。
我是否总是在沙盒中使用上述 cURL 请求进行测试?还是我应该使用自己的?如果是这样,如何? Sandbox ID 有什么用?我似乎无法在 cURL 的任何地方指定它。
我查看了 https://developer.paypal.com/docs/classic/products/#ec 的文档,但没有任何意义。
他们有很多文档,是的,但到底有什么地方没有意义呢?您是从入门 material 开始,通读一遍,然后继续阅读有关 API 调用的更详细的文档,还是跳过其中的一些内容?
Express Checkout 不需要 App ID,因此您无需担心。如果您将来需要使用自适应支付 API,那将适用。
您说他们提供的样本有效,但随后您尝试了自己的凭据,"it's not working."这些信息不足以让任何人帮助您。您收到错误代码了吗?安全 header 无效错误是偶然发生的,还是什么?
您是否偶然与 PHP 合作?如果是这样,请查看 this library。它会让你的一切变得更容易。
给我一些详细信息,然后我将更新此答案(使用实际答案)。评论太长了。
请注意,我使用的是 Classic API,因为我所在的国家/地区无法使用 REST API 进行信用卡付款。
我刚刚开始设置一个应用程序以使用 Express Checkout 而不是 Payment Standard,我完全迷失了 PayPal 的 API 设置。他们甚至让阅读文档变得异常困难。
我已经做了以下事情:
为我的 "App" 设置经典 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 用户名和密码调用它?我尝试用 PWD
和 USER
替换我的信息,但它不起作用。
我是否总是在沙盒中使用上述 cURL 请求进行测试?还是我应该使用自己的?如果是这样,如何? Sandbox ID 有什么用?我似乎无法在 cURL 的任何地方指定它。
我查看了 https://developer.paypal.com/docs/classic/products/#ec 的文档,但没有任何意义。
他们有很多文档,是的,但到底有什么地方没有意义呢?您是从入门 material 开始,通读一遍,然后继续阅读有关 API 调用的更详细的文档,还是跳过其中的一些内容?
Express Checkout 不需要 App ID,因此您无需担心。如果您将来需要使用自适应支付 API,那将适用。
您说他们提供的样本有效,但随后您尝试了自己的凭据,"it's not working."这些信息不足以让任何人帮助您。您收到错误代码了吗?安全 header 无效错误是偶然发生的,还是什么?
您是否偶然与 PHP 合作?如果是这样,请查看 this library。它会让你的一切变得更容易。
给我一些详细信息,然后我将更新此答案(使用实际答案)。评论太长了。