Parbad 4.0.0
Prefix Reserveddotnet add package Parbad --version 4.0.0
NuGet\Install-Package Parbad -Version 4.0.0
<PackageReference Include="Parbad" Version="4.0.0" />
<PackageVersion Include="Parbad" Version="4.0.0" />
<PackageReference Include="Parbad" />
paket add Parbad --version 4.0.0
#r "nuget: Parbad, 4.0.0"
#:package Parbad@4.0.0
#addin nuget:?package=Parbad&version=4.0.0
#tool nuget:?package=Parbad&version=4.0.0
Parbad
Parbad is a free and open-source online payment library for .NET. It connects web applications to Iranian online payment gateways: it requests a payment, sends the customer to the bank, verifies the payment when the customer comes back, and can refund it. The Virtual Gateway simulates a bank, so an application can be developed and tested without a real gateway account.
Gateways
This package contains these gateways:
- Mellat
- Melli
- Saman
- Pasargad
- Parsian
- Asan Pardakht
- Parbad Virtual Gateway (for development and testing)
Other gateways have their own packages: IranKish, Sepehr, ZarinPal, Pay.ir, IDPay, YekPay, PayPing, Zibal and FanAva.
Other packages
- Web frameworks: Parbad.AspNetCore for ASP.NET Core; Parbad.Mvc5 and Parbad.Owin for ASP.NET MVC 5 and WebForms.
- Storage of payments: Parbad.Storage.EntityFrameworkCore and Parbad.Storage.Cache, or your own implementation of Parbad.Storage.Abstractions.
Configuration (ASP.NET Core)
With Parbad.AspNetCore and Parbad.Storage.EntityFrameworkCore:
builder.Services.AddParbad()
.ConfigureGateways(gateways =>
{
gateways
.AddMellat()
.WithAccounts(accounts =>
{
accounts.AddInMemory(account =>
{
account.TerminalId = 123;
account.UserName = "<Your username>";
account.UserPassword = "<Your password>";
});
});
gateways
.AddParbadVirtual()
.WithOptions(options => options.GatewayPath = "/MyVirtualGateway");
})
.ConfigureHttpContext(httpContext => httpContext.UseDefaultAspNetCore())
.ConfigureStorage(storage => storage.UseEfCore<ShopDbContext>());
Payment
Inject IOnlinePayment. Request a payment and send the customer to the bank:
var result = await onlinePayment.RequestAsync(invoice =>
{
invoice
.SetAmount(250_000)
.SetCallbackUrl("https://shop.example/payment/verify")
.UseAutoIncrementTrackingNumber()
.UseMellat();
});
if (result.IsSucceed)
{
// Store result.TrackingNumber with the order.
return result.GatewayTransporter.TransportToGateway(); // using Parbad.AspNetCore;
}
Parbad never converts amounts: set the amount in the unit (Rial or Toman) that the gateway expects.
When the bank sends the customer back to the callback URL, fetch the invoice, check the order, and verify the payment:
var invoice = await onlinePayment.FetchAsync();
if (invoice.Status == PaymentFetchResultStatus.ReadyForVerifying)
{
// Check the order (stock, price, ...) before the money is taken, then:
var verifyResult = await onlinePayment.VerifyAsync(invoice);
if (verifyResult.IsSucceed)
{
// The payment is complete. verifyResult.TransactionCode is the bank's code of the transaction.
}
}
More information
| 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 is compatible. 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. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 is compatible. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Microsoft.AspNetCore.Http.Abstractions (>= 2.3.13)
- Microsoft.Extensions.DependencyInjection (>= 2.2.0)
- Microsoft.Extensions.Http (>= 2.2.0)
- Newtonsoft.Json (>= 13.0.1)
- Parbad.Storage.Abstractions (>= 4.0.0)
-
.NETStandard 2.1
- Microsoft.AspNetCore.Http.Abstractions (>= 2.3.13)
- Microsoft.Extensions.DependencyInjection (>= 2.2.0)
- Microsoft.Extensions.Http (>= 2.2.0)
- Newtonsoft.Json (>= 13.0.1)
- Parbad.Storage.Abstractions (>= 4.0.0)
-
net10.0
- Newtonsoft.Json (>= 13.0.1)
- Parbad.Storage.Abstractions (>= 4.0.0)
-
net8.0
- Newtonsoft.Json (>= 13.0.1)
- Parbad.Storage.Abstractions (>= 4.0.0)
-
net9.0
- Newtonsoft.Json (>= 13.0.1)
- Parbad.Storage.Abstractions (>= 4.0.0)
NuGet packages (23)
Showing the top 5 NuGet packages that depend on Parbad:
| Package | Downloads |
|---|---|
|
Parbad.AspNetCore
ASP.NET CORE integration for Parbad project. For more information see: https://www.nuget.org/packages/Parbad/ |
|
|
Parbad.Gateway.ZarinPal
ZarinPal Gateway for Parbad project. For more information see: https://github.com/Sina-Soltani/Parbad |
|
|
Parbad.Mvc5
ASP.NET MVC 5 integration for Parbad project. For more information see: https://www.nuget.org/packages/Parbad/ |
|
|
Parbad.Gateway.IdPay
IDPay.ir Gateway for Parbad project. For more information see: https://www.nuget.org/packages/Parbad/ |
|
|
Parbad.Gateway.PayIr
Pay.ir Gateway for Parbad project. For more information see: https://www.nuget.org/packages/Parbad/ |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 4.0.0 | 0 | 11/7/2026 |
| 3.12.0 | 131 | 11/5/2026 |
| 3.11.3 | 9,593 | 5/29/2025 |
| 3.11.1 | 435 | 5/27/2025 |
| 3.11.0 | 6,729 | 3/23/2025 |
| 3.10.2 | 309 | 3/22/2025 |
| 3.10.1 | 2,914 | 3/1/2025 |
| 3.10.0 | 12,644 | 11/17/2024 |
| 3.9.2 | 2,130 | 10/28/2024 |
| 3.9.1 | 12,308 | 9/11/2023 |
| 3.9.0 | 23,141 | 11/20/2022 |
| 3.8.3 | 10,241 | 2/3/2022 |
| 3.8.0 | 3,111 | 8/22/2021 |