Package Installation
FundKit uses a modular architecture where you install only the packages you need.Core Package (Required)
The core package contains the main PaymentClient and shared functionality:Provider Packages (Choose what you need)
Install the specific payment providers you want to support:- HoneyCoin
- EasyPay
- Tola
bash npm install @fundkit/honeycoin Supports: Mobile money in Uganda, Kenya, Tanzania
Features: Collections, payouts, status checkingType Definitions (Optional)
For enhanced TypeScript support:The types package is automatically included when you install core or provider packages, but you
can install it separately if you only need the type definitions.
Environment Setup
Node.js Requirements
Supported Node.js Versions
Supported Node.js Versions
FundKit supports the following Node.js versions: - Node.js 16.x (Minimum supported) -
Node.js 18.x (Recommended) - Node.js 20.x (Latest LTS) - Node.js 22.x
(Current)
Runtime Compatibility
Runtime Compatibility
FundKit works in multiple JavaScript runtimes: - Node.js - Full support - Bun - Full
support - Deno - Supported with import maps - Cloudflare Workers - Supported - Vercel
Edge Functions - Supported - Browser - Core functionality only (no Node.js APIs)
Environment Variables
Set up your environment variables for API keys and configuration:.env
Framework Integration
Express.js
Next.js
Fastify
TypeScript Configuration
For optimal TypeScript support, ensure yourtsconfig.json includes:
tsconfig.json
Verification
Verify your installation by running a simple test:Troubleshooting
Module not found errors
Module not found errors
If you see module resolution errors: 1. Ensure you’re using Node.js 16+ 2. Check that all
packages are installed:
npm ls @fundkit/core 3. Clear your node_modules and reinstall: rm -rf node_modules package-lock.json && npm install 4. Verify your package.json includes the packagesTypeScript compilation issues
TypeScript compilation issues
For TypeScript issues: 1. Update to TypeScript 4.5+:
npm install -D typescript@latest 2. Enable
esModuleInterop and allowSyntheticDefaultImports in tsconfig.json 3. Use import type for
type-only imports from @fundkit/typesRuntime environment issues
Runtime environment issues
For specific runtime environments: Cloudflare Workers: Use
import syntax, not require()
Vercel Edge: Ensure you’re not using Node.js-specific APIs Browser: Some provider
packages use Node.js APIs and won’t work in browsers