Pay.Core
1.0.1
dotnet add package Pay.Core --version 1.0.1
NuGet\Install-Package Pay.Core -Version 1.0.1
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Pay.Core" Version="1.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Pay.Core --version 1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Pay.Core, 1.0.1"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Pay.Core as a Cake Addin
#addin nuget:?package=Pay.Core&version=1.0.1
// Install Pay.Core as a Cake Tool
#tool nuget:?package=Pay.Core&version=1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Pay.Core
A tiny library based on pay.ir RESTApi.
How to install
Install Nuget package nuget:
Install-Package Pay.Core -Version 1.0.0
How to use
- Add
PayConfig
section in yourappsettings.json
:
//appsettings.json
"PayConfig": {
"api": "your api access token goes here, or use test"
}
- Add
PayService
in yourstartup.cs
file:
//startup.cs
...
services.Configure<PayConfiguration>(option => Configuration.GetSection("PayConfig").Bind(option));
services.AddPay();
...
- In your controller:
public class HomeController : Controller
{
private readonly IPayProvider _payProvider;
public HomeController(IPayProvider payProvider)
{
_payProvider = payProvider;
}
public async Task<IActionResult> Pay()
{
var t = await _payProvider.AuthorizeAsync(
new PayRequestModel(
1000,
Url.Action("PayResult", "Home", null, Request.Scheme))
{
Description = "Description goes here...",
InvoiceNumber = Guid.NewGuid().ToString("D"),// use your own...
Mobile = "mobile number goes here"
});
if (t.Succeeded)
{
return Redirect(t.Result.PaymentUrl);
}
return Content(JsonConvert.SerializeObject(t.Errors, Formatting.Indented));
}
public async Task<IActionResult> PayResult(string status, string token)
{
//todo: validate status and token here ...
var t = await _payProvider.VerifyAsync(new VerifyRequestModel(token) { Status = status });
if (t.Succeeded)
return Content(JsonConvert.SerializeObject(t.Result, Formatting.Indented));
return Content(JsonConvert.SerializeObject(t.Errors, Formatting.Indented));
}
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.0 is compatible. netcoreapp3.1 was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETCoreApp 3.0
- Microsoft.AspNet.WebApi.Client (>= 5.2.7)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 3.0.0)
- Microsoft.Extensions.Http (>= 3.0.0)
- Microsoft.Extensions.Options (>= 3.0.0)
- Newtonsoft.Json (>= 12.0.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.