一套基于 .NET Core 開發的支付SDK集 - paylink
前言
在我們的日常工作開發中對接一些第三方支付是比較常見的,如最常見的就是支付寶、微信支付的對接。今天給大家推薦一個基于.NET Core開發的支付SDK集:paylink,它極大簡化了API調用及通知的處理流程從而大大提供我們的工作生產效率。
運行環境
.NET Core 3.1、.NET 6.0、.NET 7.0。
支持渠道
- 支付寶支付
- 微信支付
圖片
項目源碼
圖片
圖片
圖片
微信公眾號支付示例
/// <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);
// 將參數(parameter)給 公眾號前端 讓他在微信內H5調起支付(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();
}
詳細代碼請查閱示例項目:
圖片
項目源碼地址
更多實用功能特性歡迎前往開源地址查看??,別忘了給項目一個Star??。
https://github.com/essensoft/paylink
優秀項目和框架精選
該項目已收錄到C#/.NET/.NET Core優秀項目和框架精選中,關注優秀項目和框架精選能讓你及時了解C#、.NET和.NET Core領域的最新動態和最佳實踐,提高開發效率和質量。坑已挖,歡迎大家踴躍提交PR,自薦(讓優秀的項目和框架不被埋沒??)。
https://github.com/YSGStudyHards/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.md