{"id":20827127,"url":"https://github.com/jcardif/mpesadaraja","last_synced_at":"2026-03-06T13:12:05.256Z","repository":{"id":65343045,"uuid":"589374495","full_name":"Jcardif/MpesaDaraja","owner":"Jcardif","description":"C# Mpesa SDK leveraging the Daraja API 2.0","archived":false,"fork":false,"pushed_at":"2024-04-08T14:38:11.000Z","size":62,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-06-09T04:48:30.492Z","etag":null,"topics":["daraja-api","mpesa","mpesa-api","mpesa-sdk","payment-gateway","safaricom","safaricom-daraja-api","safaricom-lipa","safaricom-mpesa","stkpush"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Jcardif.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-01-16T00:06:37.000Z","updated_at":"2025-01-28T15:21:44.000Z","dependencies_parsed_at":"2024-11-17T23:11:25.211Z","dependency_job_id":"f1fdb2b2-b45d-4a1a-883d-8cf6de117242","html_url":"https://github.com/Jcardif/MpesaDaraja","commit_stats":{"total_commits":40,"total_committers":1,"mean_commits":40.0,"dds":0.0,"last_synced_commit":"d4228d38d4f223b13a62afc3f86faa83fac3129b"},"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/Jcardif/MpesaDaraja","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jcardif%2FMpesaDaraja","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jcardif%2FMpesaDaraja/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jcardif%2FMpesaDaraja/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jcardif%2FMpesaDaraja/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Jcardif","download_url":"https://codeload.github.com/Jcardif/MpesaDaraja/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jcardif%2FMpesaDaraja/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263287849,"owners_count":23443084,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["daraja-api","mpesa","mpesa-api","mpesa-sdk","payment-gateway","safaricom","safaricom-daraja-api","safaricom-lipa","safaricom-mpesa","stkpush"],"created_at":"2024-11-17T23:11:12.343Z","updated_at":"2026-03-06T13:12:05.208Z","avatar_url":"https://github.com/Jcardif.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# M-Pesa Daraja SDK\n\nC# M-Pesa SDK leveraging the Daraja API 2.0 allowing easy integration of M-Pesa Payments into your Applications\n\n# Installation \u0026 Setup\nAvailable on NuGet: https://www.nuget.org/packages/MpesaDarajaSDK/\nAdd to your project via .Net CLI\n```\ndotnet add package MpesaDarajaSDK\n```\n\n## Build Status\n**Build Status:** [![Build Status](https://dev.azure.com/Jcardif/M-Pesa%20Daraja%20SDK/_apis/build/status/Publish%20Nuget?branchName=master)](https://dev.azure.com/Jcardif/M-Pesa%20Daraja%20SDK/_build/latest?definitionId=12\u0026branchName=master)\n\n# Usage\nTo use this package ensure you add the following ```using``` statement into your project files. \n\n```C#\nusing MpesaDaraja.Models;\nusing MpesaDaraja.Services;\n```\nThe package need to be configured with your [Daraja App Credentials](https://developer.safaricom.co.ke/MyApps) (Consumer Secret, consumerKey and your pass key)\n\n```C#\nvar gateway = new DarajaGateway(consumerKey, consumerSecret, passKey, false);\n\nvar darajaClient = await gateway.GetDarajaClientAsync(false);\n```\nThe ```DarajaGateway``` authenticates with the daraja api to get you a timebound access token which is used to create the ```DarajaClient``` which you use to accesss the various [Daraja APIs](https://developer.safaricom.co.ke/APIs)\n\n# Make an STK Push (M-Pesa Express)\nTo make an online payment on behalf of the customer:\n\nCreate an ```STKData``` object\n\n```C#\nvar stkData = new StkData\n{\n    BusinessShortCode = 174379,\n    Timestamp = \"20230116043457\",\n    TransactionType = \"CustomerPayBillOnline\",\n    Amount = 1,\n    PartyA = receiver,\n    PartyB = 174379,\n    PhoneNumber = receiver,\n    CallBackUrl = new Uri(\"https://mydomain.com/path\"),\n    AccountReference = \"CompanyXLTD\",\n    TransactionDesc = \"Payment of X\"\n};\n```\nGet the password that is used for encrypting the request sent\n\n```C#\nstkData.Password = darajaGateway.GetStkPushPassword(stkData.BusinessShortCode, stkData.Timestamp);\n```\nMake the STK Push\n```C#\nvar result = await darajaClient.SendStkPushAsync(stkData);\n```\nQuery the status of the stk push\n```C#\nvar (isCompleted, pushQueryResponse) = await darajaClient.QueryStkPushStatus(pushResponse, stkData);\n```\n\n\n# Find this repository useful? :heart:\nSupport it by joining [stargazers](https://github.com/Jcardif/MpesaDaraja/stargazers) for this repository. \n\nAlso [follow](https://github.com/Jcardif) me for my next creations!\n\n# License\nUnder MIT (See [LicenseFile](https://github.com/Jcardif/MpesaDaraja/blob/master/LICENSE.txt))\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjcardif%2Fmpesadaraja","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjcardif%2Fmpesadaraja","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjcardif%2Fmpesadaraja/lists"}