Skip to content

Commit aa499ae

Browse files
authored
Merge pull request #216 from Domains18/feature/complete-daraja-integration
Add complete Daraja API integration with 8 new service modules
2 parents 33a9107 + d796440 commit aa499ae

53 files changed

Lines changed: 3142 additions & 32 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.env.example

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
# Server Configuration
2+
PORT=3000
3+
4+
# Database Configuration
5+
DATABASE_URL="mysql://user:password@localhost:3306/mpesa_db"
6+
7+
# M-Pesa Environment (SANDBOX or PRODUCTION)
8+
MPESA_ENV=SANDBOX
9+
10+
# Safaricom Daraja API Credentials
11+
CONSUMER_KEY=YOUR_CONSUMER_KEY
12+
CONSUMER_SECRET=YOUR_CONSUMER_SECRET
13+
14+
# STK Push Configuration
15+
PASS_KEY=YOUR_PASSKEY
16+
STK_SHORTCODE=174379
17+
STK_CALLBACK_URL=https://yourdomain.com/api/mpesa/callback
18+
19+
# Initiator Credentials (for B2C, B2B, Balance, Status, Reversal)
20+
INITIATOR_NAME=YOUR_INITIATOR_NAME
21+
INITIATOR_PASSWORD=YOUR_INITIATOR_PASSWORD
22+
23+
# M-Pesa Certificate Path
24+
MPESA_CERT_PATH=./certificates/ProductionCertificate.cer
25+
26+
# C2B Configuration
27+
C2B_SHORTCODE=600496
28+
C2B_VALIDATION_URL=https://yourdomain.com/api/c2b/validation
29+
C2B_CONFIRMATION_URL=https://yourdomain.com/api/c2b/confirmation
30+
31+
# B2C Configuration
32+
B2C_SHORTCODE=YOUR_B2C_SHORTCODE
33+
B2C_RESULT_URL=https://yourdomain.com/api/b2c/callback/result
34+
B2C_TIMEOUT_URL=https://yourdomain.com/api/b2c/callback/timeout
35+
36+
# B2B Configuration
37+
B2B_SHORTCODE=YOUR_B2B_SHORTCODE
38+
B2B_RESULT_URL=https://yourdomain.com/api/b2b/callback/result
39+
B2B_TIMEOUT_URL=https://yourdomain.com/api/b2b/callback/timeout
40+
41+
# Account Balance Configuration
42+
BALANCE_SHORTCODE=YOUR_SHORTCODE
43+
BALANCE_RESULT_URL=https://yourdomain.com/api/account-balance/callback
44+
BALANCE_TIMEOUT_URL=https://yourdomain.com/api/account-balance/timeout
45+
46+
# Transaction Status Configuration
47+
STATUS_SHORTCODE=YOUR_SHORTCODE
48+
STATUS_RESULT_URL=https://yourdomain.com/api/transaction-status/callback
49+
STATUS_TIMEOUT_URL=https://yourdomain.com/api/transaction-status/timeout
50+
51+
# Reversal Configuration
52+
REVERSAL_RESULT_URL=https://yourdomain.com/api/reversal/callback
53+
REVERSAL_TIMEOUT_URL=https://yourdomain.com/api/reversal/timeout
54+
55+
# Dynamic QR Configuration
56+
QR_MERCHANT_NAME=YOUR_MERCHANT_NAME
57+
58+
# Bill Manager Configuration
59+
BILL_SHORTCODE=YOUR_BILL_SHORTCODE
60+
BILL_EMAIL=your-email@example.com
61+
BILL_OFFICIAL_CONTACT=YOUR_CONTACT
62+
BILL_CALLBACK_URL=https://yourdomain.com/api/bill-manager/callback
63+
64+
# Redis Configuration
65+
REDIS_URL=redis://localhost:6379

.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,11 @@ lerna-debug.log*
4242
.env.production.local
4343
.env.local
4444

45+
# M-Pesa Certificates
46+
certificates/*.cer
47+
certificates/*.crt
48+
certificates/*.pem
49+
4550
# temp directory
4651
.temp
4752
.tmp

0 commit comments

Comments
 (0)