一套基于 .NET Core 開發(fā)的支付SDK集 - paylink
前言
在我們的日常工作開發(fā)中對接一些第三方支付是比較常見的,如最常見的就是支付寶、微信支付的對接。今天給大家推薦一個基于.NET Core開發(fā)的支付SDK集:paylink,它極大簡化了API調(diào)用及通知的處理流程從而大大提供我們的工作生產(chǎn)效率。
運(yùn)行環(huán)境
.NET Core 3.1、.NET 6.0、.NET 7.0。
支持渠道
- 支付寶支付
- 微信支付
圖片
項(xiàng)目源碼
圖片
圖片
圖片
微信公眾號支付示例
/// <summary>
/// 公眾號支付
/// </summary>
/// <param name="viewModel"></param>
[HttpPost]
public async Task<IActionResult> PubPay(WeChatPayPubPayViewModel viewModel)
{
var request = new WeChatPayUnifiedOrderRequest
{
Body = viewModel.Body,
OutTradeNo = viewModel.OutTradeNo,
TotalFee = viewModel.TotalFee,
SpBillCreateIp = viewModel.SpBillCreateIp,
NotifyUrl = viewModel.NotifyUrl,
TradeType = viewModel.TradeType,
OpenId = viewModel.OpenId
};
var response = await _client.ExecuteAsync(request, _optionsAccessor.Value);
if (response.ReturnCode == WeChatPayCode.Success && response.ResultCode == WeChatPayCode.Success)
{
var req = new WeChatPayJsApiSdkRequest
{
Package = "prepay_id=" + response.PrepayId
};
var parameter = await _client.ExecuteAsync(req, _optionsAccessor.Value);
// 將參數(shù)(parameter)給 公眾號前端 讓他在微信內(nèi)H5調(diào)起支付(https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_7&index=6)
ViewData["parameter"] = JsonSerializer.Serialize(parameter);
ViewData["response"] = response.Body;
return View();
}
ViewData["response"] = response.Body;
return View();
}
詳細(xì)代碼請查閱示例項(xiàng)目:
圖片
項(xiàng)目源碼地址
更多實(shí)用功能特性歡迎前往開源地址查看??,別忘了給項(xiàng)目一個Star??。
https://github.com/essensoft/paylink
優(yōu)秀項(xiàng)目和框架精選
該項(xiàng)目已收錄到C#/.NET/.NET Core優(yōu)秀項(xiàng)目和框架精選中,關(guān)注優(yōu)秀項(xiàng)目和框架精選能讓你及時了解C#、.NET和.NET Core領(lǐng)域的最新動態(tài)和最佳實(shí)踐,提高開發(fā)效率和質(zhì)量??右淹冢瑲g迎大家踴躍提交PR,自薦(讓優(yōu)秀的項(xiàng)目和框架不被埋沒??)。
https://github.com/YSGStudyHards/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.md