2013-10-11 90 views
1

我們使用PayPal的網站付款PayFlow Pro處理我們網站上的信用卡,並且我們最近加入了PayPal合作伙伴計劃,該計劃允許您指定一個「BN代碼」,並對每筆交易進行處理以獲得信用額度。唯一的麻煩是......所有關於如何使用BN代碼的文檔都是針對陳舊處理事務的Express Checkout風格(基本上只是通過表單數據作爲長查詢字符串發送),而不是使用XMLPay的當前模型。如何將BN代碼與XML Pay集成? (PayPal Payflow Pro)

在舊模型中,此「BN代碼」被指定爲BUTTONSOURCE參數,因此我知道在XMLPay中使用<ButtonSource>標記。但是,我不知道該把它放在哪裏。

XMLPay Developer's Guide也沒有Website Payments Pro Payflow Edition - XMLPay Developer's Guide似乎在回答這個問題很有幫助。他們舉例說明如何將<ButtonSource>標籤立即放入<PayPal>標籤內,該標籤用作<Tender>。問題在於,我們的大多數客戶不會使用PayPal作爲他們的投標;他們會使用他們的信用卡。

我嘗試了很多交易,將<ButtonSource>標籤移動到各個位置,這兩個位置都在<PayPal>標籤內,並且沒有標籤。隨着我做出的每一個不同的嘗試,無論是交易被拒絕,還是代碼根本沒有通過。

下面是我們發送給PayPal的XMLPay請求示例。我知道這是不正確的<ButtonSource>標籤的位置,但可能有人在這裏告訴我我需要放置該標籤的位置?或者你可以只發布這個XML的修訂副本,是否正確?


<?xml version="1.0" encoding="UTF-8"?> 
<XMLPayRequest xmlns="http://www.paypal.com/XMLPay" Timeout="30" Version="2.0"> 
    <RequestData> 
    <Vendor>************</Vendor> 
    <Partner>PayPal</Partner> 
    <Transactions> 
     <Transaction> 
     <Sale> 
      <PayData> 
      <Invoice> 
       <NationalTaxIncl>false</NationalTaxIncl> 
       <TotalAmt>10.00</TotalAmt> 
       <BillTo> 
       <Address> 
        <Street>1234 Fake Street</Street> 
        <Zip>90210</Zip> 
       </Address> 
       </BillTo> 
      </Invoice> 
      <Tender> 
       <Card> 
       <CardType>VISA</CardType> 
       <CardNum>****************</CardNum> 
       <ExpDate>******</ExpDate> 
       <NameOnCard>John Smith</NameOnCard> 
       <CVNum>***</CVNum> 
       </Card> 
      </Tender> 
      <ButtonSource>MyCompanyBNCode</ButtonSource> 
      </PayData> 
     </Sale> 
     </Transaction> 
    </Transactions> 
    </RequestData> 
    <RequestAuth> 
    <UserPass> 
     <User>************</User> 
     <Password>************</Password> 
    </UserPass> 
    </RequestAuth> 
</XMLPayRequest> 

非常感謝!

回答

1

您可以將它放在extdata標記中,在第16頁開始的the guide中進行了介紹。對於沒有XML值的任何其他參數也是如此。從導向

通用示例:

<Sale> 
    <PayData> 
      (Invoice) 
      (Tender) 
    </PayData> 
    (ExtData)* 
</Sale> 
+1

我發現值的資本以及作爲擴展數據的資本** **的屬性有差別。它必須是確切的。 「名稱」和「值」屬性*必須*具有大寫字母N和大寫字母V.因此,下面是ExtData標籤的示例,因爲它應該顯示爲:'' – SoaperGEM