簡體   English   中英

貝寶沙盒退款交易未顯示

[英]paypal sandbox refund transaction not showing up

我正在嘗試將Paypal退款集成到我們的Web應用程序中。 我們使用的是經典API(v 2.3)的舊版本。 它正在為授權和捕獲付款而工作。 這是一些細節

  1. 貝寶經典API NPV
  2. 有一個沙盒帳戶進行測試
  3. 授權和捕獲付款通過使用用戶名,密碼和簽名的文件進行。

在沙盒帳戶上,付款狀態始終處於待處理狀態,並且永遠不會完成。 當我嘗試使用全部或部分退款時,我會執行ACK =成功並帶有相關編號。 但sanbox門戶上沒有任何顯示。 這是我用來退款的代碼。

 'build the request string to process one paypal refund
                        pp = "&METHOD=RefundTransaction"
                        pp = pp & "&TRANSACTIONID=" & transactionId
                        pp = pp & "&REFUNDTYPE=PARTIAL"
                        pp = pp & "&AMT=" & Math.Round(amount, 2)
                        pp = pp & "&CURRENCYCODE=USD"
                        pp = pp & "&NOTE=Refund " & refundRow("Store") & "Order " & refundRow("OrderNo").ToString

我得到了回應,就是這樣。

回應內容:

BUILD 13443xxx
VERSION 2.3
ACK Success
TIMESTAMP 2014-10-23T16:44:36Z
CORELATIONID exxxx7e2dxxxx

我總是獲得成功,但是登錄沙盒門戶時卻什么也沒有顯示。

我也在實時網站上測試了幾筆退款。 它有完全相同的問題。

有輸入嗎?

部分退款要求和回應

請求

<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>XXXXXXXXXXXXXXXXXXXXXXXXXXXX</ebl:Username>
        <ebl:Password>XXXXXXXXXXXXXXXXXXXXXXXXXXXX</ebl:Password>
        <ebl:Signature>XXXXXXXXXXXXXXXXXXXXXXXXXXXX</ebl:Signature>
      </ebl:Credentials>
    </ns:RequesterCredentials>
  </soapenv:Header>
  <soapenv:Body>
    <ns:RefundTransactionReq>
      <ns:RefundTransactionRequest>
        <ns:TransactionID>O-XXXXXXXXXXXXXXXXXXXXXXXXXXXX</ns:TransactionID>
        <ns:RefundType>Partial</ns:RefundType>
        <ns:Amount currencyID="USD">7</ns:Amount>
        <ebl:Version>94.0</ebl:Version>
      </ns:RefundTransactionRequest>
    </ns:RefundTransactionReq>
  </soapenv:Body>
</soapenv:Envelope>

響應

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:cc="urn:ebay:apis:CoreComponentTypes" xmlns:wsu="http://schemas.xmlsoap.org/ws/2002/07/utility" xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext" xmlns:ed="urn:ebay:apis:EnhancedDataTypes" xmlns:ebl="urn:ebay:apis:eBLBaseComponents" xmlns:ns="urn:ebay:api:PayPalAPI">
  <SOAP-ENV:Header>
    <Security xmlns="http://schemas.xmlsoap.org/ws/2002/12/secext" xsi:type="wsse:SecurityType">
    </Security>
    <RequesterCredentials xmlns="urn:ebay:api:PayPalAPI" xsi:type="ebl:CustomSecurityHeaderType">
      <Credentials xmlns="urn:ebay:apis:eBLBaseComponents" xsi:type="ebl:UserIdPasswordType">
        <Username xsi:type="xs:string">
        </Username>
        <Password xsi:type="xs:string">
        </Password>
        <Signature xsi:type="xs:string">
        </Signature>
        <Subject xsi:type="xs:string">
        </Subject>
      </Credentials>
    </RequesterCredentials>
  </SOAP-ENV:Header>
  <SOAP-ENV:Body id="_0">
    <RefundTransactionResponse xmlns="urn:ebay:api:PayPalAPI">
      <Timestamp xmlns="urn:ebay:apis:eBLBaseComponents">2014-10-25T06:07:08Z</Timestamp>
      <Ack xmlns="urn:ebay:apis:eBLBaseComponents">Success</Ack>
      <CorrelationID xmlns="urn:ebay:apis:eBLBaseComponents">45xxxxxxxxxxx</CorrelationID>
      <Version xmlns="urn:ebay:apis:eBLBaseComponents">94.0</Version>
      <Build xmlns="urn:ebay:apis:eBLBaseComponents">1xxxxx4</Build>
      <RefundTransactionID>
      </RefundTransactionID>
      <TotalRefundedAmount xsi:type="cc:BasicAmountType" currencyID="USD">-7.00</TotalRefundedAmount>
      <RefundInfo xmlns="urn:ebay:apis:eBLBaseComponents" xsi:type="ebl:RefundInfoType">
        <RefundStatus xsi:type="ebl:PaymentStatusCodeType">None</RefundStatus>
        <PendingReason xsi:type="ebl:PendingStatusCodeType">none</PendingReason>
      </RefundInfo>
    </RefundTransactionResponse>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

好的,我能夠在PayPal技術支持團隊的幫助下解決此問題。

基本上有兩種交易ID。 當我們調用DoAuthorize時得到一個,當我們調用DoCapture時得到一個。 使用后者(DoCapture)交易ID可以退款。

幫助鏈接: https : //developer.paypal.com/docs/classic/express-checkout/ht_ec-orderAuthPayment-curl-etc/

盡管我有答案,但我對通過DoAuthorize調用的事務ID調用RefundTransaction API時得到的響應並不滿意。 我返回成功????? 並帶有關聯ID。 但帳戶中沒有任何內容。

貝寶(PayPal)技術團隊,如果您偶然發現了這篇文章,請他們改正問題或解釋為什么這樣有意義。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM