我正在尝试使用自适应支付的预批准。具体来说,从预先批准的文档开始,经历四个步骤。
我被困在Step 1: Set Up the Preapproval
与curl命令:
$ curl -s --insecure
-H "X-PAYPAL-SECURITY-USERID: myuserid.gmail.com"
-H "X-PAYPAL-SECURITY-PASSWORD: mypass"
-H "X-PAYPAL-SECURITY-SIGNATURE: mysignaturestring"
-H "X-PAYPAL-REQUEST-DATA-FORMAT: NV"
-H "X-PAYPAL-RESPONSE-DATA-FORMAT: NV"
-H "X-PAYPAL-APPLICATION-ID: APP-80W284485P519543T"
https://svcs.sandbox.paypal.com/AdaptivePayments/Preapproval -d
"cancelUrl=http://www.yourdomain.com/cancel.html
¤cyCode=USD
&endingDate=2014-09-10T22:00:00Z
&maxAmountPerPayment=200.00
&maxNumberOfPayments=30
&maxTotalAmountOfAllPayments=1500.00
&pinType=NOT_REQUIRED
&requestEnvelope.errorLanguage=en_US
&returnUrl=http://www.yourdomain.com/success.html
&startingDate=2014-08-10T22:00:00Z"
我收到一个错误,而不是preapprovalKey
。我知道我发送的数据有问题,但我不知道是什么:
esponseEnvelope.timestamp=2014-08-05T01:24:55.289-07:00
&responseEnvelope.ack=Failure
&responseEnvelope.correlationId=7c6db7beda57a
&responseEnvelope.build=11853342
&error(0).errorId=580001
&error(0).domain=PLATFORM
&error(0).subdomain=Application
&error(0).severity=Error
&error(0).category=Application
&error(0).message=Invalid request: Data validation warning(line -1, col 0): 2014-09-10T22:00:00Z
&error(0).parameter(0)=Data validation warning(line -1, col 0): 2014-09-10T22:00:00Z
请注意:
- 我的API凭证是OK的,我已经成功地从文档 在
- 一些字段是根据文档,而其他的完全像在文档复制粘贴:
-
startingDate
是在未来,医生说不是今天的日期(发布的日期)或以后的结束日期。 -
endingDate - startingDate
是一个月,不到一年,因为他们在文件中说。 - 我也尝试使用https://apigee.com/console/paypal,以防我做错了curl
-
Express Checkout
上测试了它们。该死,我想出来了,因为我在SO上缩进了,让它看起来更漂亮。这是因为-d "cancelUrl=... ¤cyCode=USD & ..."
中的空格输入(n
's)。
谢谢,所以这里正确的参考是:
$ curl -s --insecure
-H "X-PAYPAL-SECURITY-USERID: myuserid.gmail.com"
-H "X-PAYPAL-SECURITY-PASSWORD: mypass"
-H "X-PAYPAL-SECURITY-SIGNATURE: mysignaturestring"
-H "X-PAYPAL-REQUEST-DATA-FORMAT: NV"
-H "X-PAYPAL-RESPONSE-DATA-FORMAT: NV"
-H "X-PAYPAL-APPLICATION-ID: APP-80W284485P519543T"
https://svcs.sandbox.paypal.com/AdaptivePayments/Preapproval -d
"cancelUrl=http://www.yourdomain.com/cancel.html¤cyCode=USD&endingDate=2014-09-10T22:00:00Z&maxAmountPerPayment=200.00&maxNumberOfPayments=30&maxTotalAmountOfAllPayments=1500.00&pinType=NOT_REQUIRED&requestEnvelope.errorLanguage=en_US&returnUrl=http://www.yourdomain.com/success.html&startingDate=2014-08-10T22:00:00Z"