PayStackDotNetSDK 1.4.4

There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package PayStackDotNetSDK --version 1.4.4
NuGet\Install-Package PayStackDotNetSDK -Version 1.4.4
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="PayStackDotNetSDK" Version="1.4.4" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add PayStackDotNetSDK --version 1.4.4
#r "nuget: PayStackDotNetSDK, 1.4.4"
#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 PayStackDotNetSDK as a Cake Addin
#addin nuget:?package=PayStackDotNetSDK&version=1.4.4

// Install PayStackDotNetSDK as a Cake Tool
#tool nuget:?package=PayStackDotNetSDK&version=1.4.4


PayStackDotNetSDK API is a collection of all PayStack endpoints that C# developers can take advantage of to build financial solutions in Nigeria. Visit Paystack for Setup.


This Library require .Net framework 4.6 or higher


Install this library from Nuget


Source Code

Install this library from Github

Sample Project

This project[alpha stage] showcases some uses of PayStackDotNetSDK methods. Github


This project is licensed under the MIT License


  • More precise intellisense
  • More Documentation in this README file

SDK Usage

Add namespaces: using PayStackDotNetSDK; using PayStackDotNetSDK.Helpers;

We suggest you go through the detailed documentation:


add namespaces: using PayStackDotNetSDK.Methods.Transactions; using PayStackDotNetSDK.Models.Transactions;

Transaction Initialization
	/// <summary>
    /// Implements simple InitializeTransaction with basic parameters
    /// </summary>
    protected async void InitializeTransaction()
        var connectionInstance = new PaystackTransaction(Credential.Key);
        var response = await connectionInstance.InitializeTransaction("", 1000000);
        if (response.status)
            Response.AddHeader("Access-Control-Allow-Origin", "*");
            Response.AppendHeader("Access-Control-Allow-Origin", "*");
            Response.Redirect(; //Redirects your browser to the secure URL
        else //not successful
           //Do something else with the info.
    /// <summary>
    /// Implements simple InitializeTransaction with full parameters
	/// If callback url is given, the url will be called upon completion. For example http://localhost:60441/Default.aspx?trxref=4dsnq70qtd&reference=4dsnq70qtd
    /// </summary>
    protected async void InitializeTransaction()
        var connectionInstance = new PaystackTransaction(Credential.Key);
        var response = await connectionInstance.InitializeTransaction(new TransactionRequestModel() { firstName="firstname", lastName="lastname", amount=1000000, currency = PayStackDotNetSDK.Helpers.Constants.Currency.Naira, email="", metadata = new PaystackMetadata() { referrer="" }, transaction_charge=4000 });
        if (response.status)
            Response.AddHeader("Access-Control-Allow-Origin", "*");
            Response.AppendHeader("Access-Control-Allow-Origin", "*");
            Response.Redirect(; //Redirects your browser to the secure URL
        else //not successful
            //Do something else with the info.


add namespaces: using PayStackDotNetSDK.Methods.Customers; using PayStackDotNetSDK.Models.Customers;


add namespaces: using PayStackDotNetSDK.Methods.Subaccounts; using PayStackDotNetSDK.Models.SubAccounts;


add namespaces: using PayStackDotNetSDK.Methods.Plans; using PayStackDotNetSDK.Models.Plans;


add namespaces: using PayStackDotNetSDK.Methods.Subscriptions; using PayStackDotNetSDK.Models.Subscriptions;

Payment Pages

add namespaces: using PayStackDotNetSDK.Methods.Pages; using PayStackDotNetSDK.Models.Pages;


add namespaces: using PayStackDotNetSDK.Methods.Invoices; using PayStackDotNetSDK.Models.Invoices;


add namespaces: using PayStackDotNetSDK.Methods.Settlements; using PayStackDotNetSDK.Models.Settlements;

Transfers Recipients

add namespaces: using PayStackDotNetSDK.Methods.TransferRecipients; using PayStackDotNetSDK.Models.TransferRecipients;


add namespaces: using PayStackDotNetSDK.Methods.Transfers; using PayStackDotNetSDK.Models.Transfers;

Transfers Control

add namespaces: using PayStackDotNetSDK.Methods.TransfersControls; using PayStackDotNetSDK.Models.TransfersControls;


add namespaces: using PayStackDotNetSDK.Methods.Charges; using PayStackDotNetSDK.Models.Charges;

Bulk Charges

add namespaces: using PayStackDotNetSDK.Methods.BulkCharges; using PayStackDotNetSDK.Models.BulkCharges;


add namespaces: using PayStackDotNetSDK.Methods.Refunds; using PayStackDotNetSDK.Models.Refunds;

Control Panel

add namespaces: using PayStackDotNetSDK.Methods.ControlPanels; using PayStackDotNetSDK.Models.ControlPanels;


add namespaces: using PayStackDotNetSDK.Methods.Verifications; using PayStackDotNetSDK.Models.Verifications;


add namespaces: using PayStackDotNetSDK.Methods.Banks; using PayStackDotNetSDK.Models.Banks;

/// <summary> /// Get all Nigerian Banks on Paystack API /// </summary> protected async void GetAllBanks() { var connectionInstance = new PaystackListedBanks(Credential.Key); var response = await connectionInstance.ListBanks(); }

Product 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 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 was computed. 
.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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.4.5-rc 200 2/22/2024
1.4.4 3,771 11/14/2018
1.4.4-rc 599 6/2/2023
1.4.3 1,504 6/11/2018
1.4.2 1,478 6/10/2018
1.4.1 1,458 6/8/2018
1.4.0 1,398 6/8/2018
1.3.0 1,397 6/7/2018
1.2.0 1,453 6/7/2018
1.0.0 1,414 6/4/2018

Complete API Integration.
Examples Published on GitHub Page.
GET fix