代表第三方的PayPal .Net SDK支付API调用权限
问题描述:
我使用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调用?
答
我的答案有点晚,但可能会帮助其他人,因为我在搜索如何执行此操作时发现此问题。
这适用于使用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_id
或phone
识别第三方获得的资金。
注意:第三方必须已经授予您的PayPal应用程序对您尝试的交易类型的适当权限。