Getting Started

Installation

Learn how to install the M-Pesa SDK for TypeScript and Python.

Installation

Get started with Singularity Payments by installing the appropriate package for your project.

Install the SDK

Pick the package for your language. The language switch in the navigation keeps every code sample on this site in sync with your choice.

npm install @singularity-payments/core

Prerequisites

Before installing, make sure you have the toolchain for your language:

  • TypeScript: Node.js 18+ and a package manager (npm, pnpm, yarn, bun)
  • Python: Python 3.9+ and pip (or uv)

Choose Your Package

Server-Side

npm install @singularity-payments/nextjs
pnpm add @singularity-payments/nextjs
yarn add @singularity-payments/nextjs
bun add @singularity-payments/nextjs
npm install @singularity-payments/sveltekit
pnpm add @singularity-payments/sveltekit
yarn add @singularity-payments/sveltekit
bun add @singularity-payments/sveltekit
npm install @singularity-payments/nuxt
pnpm add @singularity-payments/nuxt
yarn add @singularity-payments/nuxt
bun add @singularity-payments/nuxt
npm install @singularity-payments/elysia
pnpm add @singularity-payments/elysia
yarn add @singularity-payments/elysia
bun add @singularity-payments/elysia
npm install @singularity-payments/fastify
pnpm add @singularity-payments/fastify
yarn add @singularity-payments/fastify
bun add @singularity-payments/fastify
npm install @singularity-payments/hono
pnpm add @singularity-payments/hono
yarn add @singularity-payments/hono
bun add @singularity-payments/hono

Client-Side

Security Warning

Client-side packages require a backend server. Never expose M-Pesa credentials in client-side code, these packages are designed to simplify integration with the backend

npm install @singularity-payments/react
pnpm add @singularity-payments/react
yarn add @singularity-payments/react
bun add @singularity-payments/react
npm install @singularity-payments/vue
pnpm add @singularity-payments/vue
yarn add @singularity-payments/vue
bun add @singularity-payments/vue
npm install @singularity-payments/svelte
pnpm add @singularity-payments/svelte
yarn add @singularity-payments/svelte
bun add @singularity-payments/svelte

Environment Variables

After installation, set up your environment variables:

.env.local
MPESA_CONSUMER_KEY=your_consumer_key
MPESA_CONSUMER_SECRET=your_consumer_secret
MPESA_SHORTCODE=your_shortcode #Use 600998 for sandbox
MPESA_PASSKEY=your_passkey # Use bfb279f9aa9bdbcf158e97dd71a467cd2e0c893059b10f78e6b72ada1ed2c919
MPESA_ENVIRONMENT=sandbox # or 'production'

Never commit your .env file to version control. Add it to .gitignore.

Next Steps

Edit on GitHub

On this page