Prerequisites
| Requirement | Minimum version |
|---|---|
| Laravel | 10.0 |
| PHP | 8.1 |
| Composer | 2.x |
| Simiz account | Create one free |
Installation
Configuration
The publishedconfig/simiz.php file contains:
| Variable | Description |
|---|---|
SIMIZ_API_KEY | Your API key (smz_test_* or smz_live_*) |
SIMIZ_ENVIRONMENT | sandbox or production |
SIMIZ_WEBHOOK_SECRET | Webhook signing secret |
SIMIZ_CURRENCY | Default currency code (optional) |
Usage
Creating a transaction
Checking transaction status
Processing refunds
Webhook handling
Register the webhook route
Add the webhook route inroutes/web.php:
Create a webhook handler
EventServiceProvider:
Supported payment methods
| Method | Type | Status |
|---|---|---|
| Orange Money | Mobile Money | Available |
| MTN Mobile Money | Mobile Money | Available |
| Wave | Mobile Money | Coming Soon |
| Moov Money | Mobile Money | Coming Soon |
| Airtel Money | Mobile Money | Coming Soon |
| M-Pesa | Mobile Money | Coming Soon |
Supported currencies
| Currency | Code | Countries |
|---|---|---|
| Central African CFA Franc | XAF | Cameroon, Central African Republic, Chad, Congo, Equatorial Guinea, Gabon |
| West African CFA Franc | XOF | Benin, Burkina Faso, Ivory Coast, Guinea-Bissau, Mali, Niger, Senegal, Togo |
| Ghanaian Cedi | GHS | Ghana |
| Nigerian Naira | NGN | Nigeria |
| Kenyan Shilling | KES | Kenya |
| Ugandan Shilling | UGX | Uganda |
| Rwandan Franc | RWF | Rwanda |
| Tanzanian Shilling | TZS | Tanzania |
Webhook events
| Event | Description |
|---|---|
transaction.created | Transaction initiated |
transaction.processing | Being processed by the provider |
transaction.completed | Payment successful |
transaction.failed | Payment failed |
transaction.cancelled | Cancelled by customer |
transaction.expired | Payment window expired |
refund.created | Refund initiated |
refund.completed | Refund completed |
refund.failed | Refund failed |
Test mode
Set the following in your.env file:
sandbox.api.simiz.io and no real money is charged.
Full sandbox documentation
See all test numbers and scenarios in the Sandbox Testing guide.
Troubleshooting
- Webhook signature invalid
- API key errors
- Package not found
Solutions:
- Verify
SIMIZ_WEBHOOK_SECRETin your.envfile - Ensure no middleware is modifying the raw request body before verification
- Exclude the webhook route from CSRF protection in
VerifyCsrfToken
Next steps
Webhook Verification
Learn about webhook configuration and signature verification.
API Reference
Explore the full Simiz API.
Sandbox Testing
Test all payment scenarios before going live.
Support
Need help? Contact our support team.
Changelog
Version history
Version history
| Version | Date | Changes |
|---|---|---|
1.0.0 | 2026-03-01 | Initial release — mobile money payments, webhooks, sandbox |

