2016-11-23 45 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应用程序对您尝试的交易类型的适当权限。