@fundkit/easypay
v1.8.0
Published
FundKit EasyPay provider
Readme
@fundkit/easypay
EasyPay payment provider integration for FundKit
📦 Installation
npm install @fundkit/core @fundkit/easypay
# or
yarn add @fundkit/core @fundkit/easypay
# or
pnpm add @fundkit/core @fundkit/easypayGet Your API Key
Before you start, you'll need a FundKit API key. Get yours at fundkit.dev - it's free to get started!
Quick Start
import { PaymentClient } from '@fundkit/core';
import { EasyPay } from '@fundkit/easypay';
// Initialize EasyPay provider
const easypay = new EasyPay({
apiKey: process.env.EASYPAY_SECRET!,
clientId: process.env.EASYPAY_CLIENT_ID!,
});
// Use with FundKit client
const client = new PaymentClient({
apiKey: process.env.FUNDKIT_API_KEY!,
providers: [easypay],
environment: 'sandbox',
});
// Process payment
const transaction = {
amount: 10000,
currency: 'UGX',
operator: 'airtel',
accountNumber: '256701234567',
externalId: 'tx_' + Date.now(),
};
const response = await client.collection(transaction);
console.log('EasyPay payment:', response);Configuration
Required Configuration
interface EasyPayConfig {
apiKey: string; // Your EasyPay API secret
clientId: string; // Your EasyPay client ID
}Environment Variables
EASYPAY_SECRET=your_api_secret_here
EASYPAY_CLIENT_ID=your_client_id_here🌍 Supported Features
- Mobile money payments
- Multiple operators (MTN, Airtel, etc.)
- Real-time transaction status
- Webhook support
- Multi-currency support
- Sandbox and production environments
API Reference
EasyPay Class
class EasyPay extends BaseProvider {
constructor(config: EasyPayConfig);
async collection(transaction: Transaction): Promise<CollectionResponse>;
async getTransaction(txId: string): Promise<TransactionStatus>;
}Related Documentation
Development
This package is part of the FundKit monorepo. For development setup:
- Clone the FundKit repository
- Install dependencies:
bun install - Build packages:
bun run build - Run tests:
bun test
License
MIT License - see the LICENSE file for details.
