2016-11-23 44 views
0

我使用Paypal .Net SDK(https://github.com/paypal/PayPal-NET-SDK)進行支付API調用。它需要一個APIContext對象在API調用中傳遞。代表第三方的PayPal .Net SDK支付API調用權限

通過使用我的貝寶應用程序的clientid和clientsecret,我可以獲取accesstoken來創建APIContext對象。但是,這將付款到我的商家帳戶。

我想代表其他商家付款和退款API調用。爲此,我使用Paypal權限SDK(https://github.com/paypal/permissions-sdk-dotnet)來取得第三方商家的許可。一旦商家授予許可,我可以獲得令牌和祕密。在這個階段,我找不到任何文檔如何使用該標記和祕密來調用paypal API?

任何人都可以指導我如何使用該令牌和祕密(從權限API中獲得)來生成有效的APIContext,可用於調用各種paypal.net sdk API調用?

回答

0

我的答案有點晚,但可能會幫助其他人,因爲我在搜索如何執行此操作時發現此問題。

這適用於使用PayPal .NET SDK的情況。

創建一個PayPal.Api.Payee對象,並將其添加到您用於付款的PayPal.Api.Transaction對象。

例1:

var payee = new PayPal.Api.Payee() 
{ 
    email = "[email protected]" 
} 

var transaction = new PayPal.Api.Transaction(); 
transaction.payee = payee; 

例2:

var paypal = new PayPal.Api.Transaction() 
{ 
    description = "Transaction description.", 
    invoice_number = "123", 
    amount = new Amount() 
    { 
     currency = "USD", 
     total = "100.00", 
     details = new Details() 
     { 
      tax = "0", 
      shipping = "25.00", 
      subtotal = "75.00" 
     } 
    }, 
    item_list = new ItemList() 
    { 
     items = new List<Item>() 
     { 
      new Item() 
      { 
       name = "title", 
       currency = "USD", 
       price = "75.00", 
       quantity = "1", 
       sku = "MySKU" 
      } 
     } 
    }, 
    payee = new Payee() 
    { 
     email = "[email protected]" 
    } 
}; 

相反的email你可以使用merchant_idphone識別第三方獲得的資金。

注意:第三方必須已經授予您的PayPal應用程序對您嘗試的交易類型的適當權限。