Paypal DoReferenceTransaction内部错误

Paypal DoReferenceTransaction内部错误,paypal,Paypal,我想创建一个与贝宝API和一切工作良好,直到我想结算协议 使用DoReferenceTransaction执行事务 然后我得到结果: DoReferenceTransactionResponseType Object ( [DoReferenceTransactionResponseDetails] => [FMFDetails] => [Timestamp] => 2014-08-18T10:58:51Z [Ack] => Failu

我想创建一个与贝宝API和一切工作良好,直到我想结算协议 使用DoReferenceTransaction执行事务

然后我得到结果:

DoReferenceTransactionResponseType Object
(
    [DoReferenceTransactionResponseDetails] => 
    [FMFDetails] => 
    [Timestamp] => 2014-08-18T10:58:51Z
    [Ack] => Failure
    [CorrelationID] => 9de181ec5132e
    [Errors] => Array
        (
            [0] => ErrorType Object
                (
                    [ShortMessage] => Internal Error
                    [LongMessage] => Internal Error
                    [ErrorCode] => 10001
                    [SeverityCode] => Error
                    [ErrorParameters] => 
                )

            [1] => ErrorType Object
                (
                    [ShortMessage] => Invalid Data
                    [LongMessage] => This transaction cannot be processed.
                    [ErrorCode] => 10004
                    [SeverityCode] => Error
                    [ErrorParameters] => 
                )

        )

    [Version] => 116.0
    [Build] => 12303548
)
如果你需要更多的信息,请告诉我

问候丹尼斯

编辑:这是请求:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="urn:ebay:api:PayPalAPI" xmlns:ebl="urn:ebay:apis:eBLBaseComponents" xmlns:cc="urn:ebay:apis:CoreComponentTypes" xmlns:ed="urn:ebay:apis:EnhancedDataTypes" ><soapenv:Header><ns:RequesterCredentials><ebl:Credentials><ebl:Username>XXX</ebl:Username><ebl:Password>XXX</ebl:Password><ebl:Signature>XXX</ebl:Signature></ebl:Credentials></ns:RequesterCredentials></soapenv:Header><soapenv:Body><ns:DoReferenceTransactionReq><ns:DoReferenceTransactionRequest><ebl:DoReferenceTransactionRequestDetails><ebl:ReferenceID>EC-0W695537H15619824</ebl:ReferenceID><ebl:PaymentAction>Authorization</ebl:PaymentAction><ebl:PaymentType>Any</ebl:PaymentType><ebl:PaymentDetails><ebl:OrderTotal currencyID="USD">1.00</ebl:OrderTotal><ebl:ButtonSource>PayPal_SDK</ebl:ButtonSource><ebl:NotifyURL>http://123plakat.de</ebl:NotifyURL><ebl:ShipToAddress><ebl:Name>John Doe</ebl:Name><ebl:Street1>1 Main St</ebl:Street1><ebl:CityName>San Jose</ebl:CityName><ebl:StateOrProvince>CA</ebl:StateOrProvince><ebl:Country>USA</ebl:Country><ebl:PostalCode>95131</ebl:PostalCode></ebl:ShipToAddress></ebl:PaymentDetails></ebl:DoReferenceTransactionRequestDetails><ebl:Version>116.0</ebl:Version></ns:DoReferenceTransactionRequest></ns:DoReferenceTransactionReq></soapenv:Body></soapenv:Envelope>
xxxxxxxec-0W695537H15619824授权任意1.00PayPal_SDKhttp://123plakat.deJohn Doe1主街圣约瑟科阿萨95131116.0
实际上,在使用Doreference事务API时,您需要使用:
创建账单协议时收到的账单协议id(BAID)
与买方使用“CreateBillingAgreement”或“DoExpressCheckoutPayment”
应用程序编程接口。
或者您从与买家的上次购买中收到的交易ID。
在上面发布的请求中,您需要的不是传递BAID或事务ID
传递快速签出令牌(EC-0W695537H15619824)时不正确。
您需要使用正确的BAID或事务id替换令牌。有关详细信息,请参阅以下url:

您能提供您发送的DoReferenceTransaction请求的示例吗?
 Actually while using the Doreference transaction API , you need to use :

 Either billing agreement id (BAID) that you received while creating the billing agreement 
 with the buyer either using the "CreateBillingAgreement" or "DoExpressCheckoutPayment" 
 API .

 Or the transaction ID that you received from the previous purchase with the buyer . 

 In the request posted above , instead of passing the BAID or Transaction ID you are   
 passing the Express checkout Token (<ebl:ReferenceID>EC-0W695537H15619824</ebl:ReferenceID>) while is incorrect .
  You need to replace the token with the correct BAID or transaction id .You can refer below url for more info :