【发布时间】:2012-11-23 12:56:27
【问题描述】:
我做错了什么? 我使用 PayPal Payments Pro 沙盒测试帐户。
- 我执行
DoDirectPayment() where PaymentAction=PaymentActionCodeType.Authorization - 我收到“成功”和
TransactionID - 我从第 2 步开始执行
DoVoid() where AuthorizationID = TransactionID - 我收到
"10609 Transaction id is invalid."
与DoAuthorization() 相同。
- 我执行
DoDirectPayment() where PaymentAction=PaymentActionCodeType.Order - 我收到“成功”和
TransactionID - 我从第 2 步开始执行
DoAuthorization() where TransactionID = TransactionID - 我收到“
10609 Transaction id is invalid."
UPD:<DoDirectPaymentRequest><Version xmlns="urn:ebay:apis:eBLBaseComponents">95.0</Version><DoDirectPaymentRequestDetails xmlns="urn:ebay:apis:eBLBaseComponents"><PaymentAction>Sale</PaymentAction><PaymentDetails><OrderTotal currencyID="USD">951</OrderTotal></PaymentDetails><CreditCard><CreditCardNumber>4998275181667886</CreditCardNumber><ExpMonth>12</ExpMonth><ExpYear>2017</ExpYear><CardOwner><PayerName><FirstName>Nazar</FirstName><LastName>Nazar</LastName></PayerName><Address><Street1>dfgdfgdfg</Street1><CityName>Manhattan</CityName><StateOrProvince>NY</StateOrProvince><Country>US</Country><PostalCode>10005</PostalCode></Address></CardOwner><CVV2>030</CVV2></CreditCard></DoDirectPaymentRequestDetails></DoDirectPaymentRequest></DoDirectPaymentReq>
<DoDirectPaymentResponse xmlns="urn:ebay:api:PayPalAPI"><Timestamp xmlns="urn:ebay:apis:eBLBaseComponents">2012-12-06T15:23:13Z</Timestamp><Ack xmlns="urn:ebay:apis:eBLBaseComponents">Success</Ack><CorrelationID xmlns="urn:ebay:apis:eBLBaseComponents">32db76f5d7828</CorrelationID><Version xmlns="urn:ebay:apis:eBLBaseComponents">95.0</Version><Build xmlns="urn:ebay:apis:eBLBaseComponents">4137385</Build><Amount xsi:type="cc:BasicAmountType" currencyID="USD">951.00</Amount><AVSCode xsi:type="xs:string">X</AVSCode><CVV2Code xsi:type="xs:string">M</CVV2Code><TransactionID>1R649887J67078538</TransactionID></DoDirectPaymentResponse>
抱歉,没有全部复制
UPD2:
<DoVoidReq xmlns="urn:ebay:api:PayPalAPI"><DoVoidRequest><Version xmlns="urn:ebay:apis:eBLBaseComponents">95.0</Version><AuthorizationID>1R649887J67078538</AuthorizationID></DoVoidRequest></DoVoidReq>
<DoVoidResponse xmlns="urn:ebay:api:PayPalAPI"><Timestamp xmlns="urn:ebay:apis:eBLBaseComponents">2012-12-06T15:23:15Z</Timestamp><Ack xmlns="urn:ebay:apis:eBLBaseComponents">Failure</Ack><CorrelationID xmlns="urn:ebay:apis:eBLBaseComponents">f8795daa4b104</CorrelationID><Errors xmlns="urn:ebay:apis:eBLBaseComponents" xsi:type="ebl:ErrorType"><ShortMessage xsi:type="xs:string">Invalid transactionID.</ShortMessage><LongMessage xsi:type="xs:string">Transaction id is invalid.</LongMessage><ErrorCode xsi:type="xs:token">10609</ErrorCode><SeverityCode xmlns="urn:ebay:apis:eBLBaseComponents">Error</SeverityCode></Errors><Version xmlns="urn:ebay:apis:eBLBaseComponents">95.0</Version><Build xmlns="urn:ebay:apis:eBLBaseComponents">4181146</Build><AuthorizationID xsi:type="xs:string"></AuthorizationID></DoVoidResponse>
【问题讨论】:
-
您能否提供正在生成的实际 API 请求的示例?只有这样才能确切地看到正在发生的事情。无效的事务 ID 非常简单,因此我们只需要查看传递到实际请求中的确切内容。
-
您概述的第一个方法应该可以正常工作,但同样,只需要查看实际的 DoVoid 请求。您概述的第二种方法不正确。在 DoDirectPayment 之后,你不会使用 DoAuthorization。您可以使用 DoVoid 或 DoCapture。
-
DoCapture()犯了同样的错误。 -
好的,所以再次需要查看正在生成的实际请求,而不仅仅是 SDK 代码。类库将使 RAW API 请求和响应以一种或另一种方式可用。它可以是 XML 或 NVP 字符串。
-
帐户设置可能有些问题,但
sale工作正常。
标签: paypal paypal-sandbox