Official integration libraries and plugins to easily integrate MarzPay into your applications and platforms
Accept mobile money payments in WordPress using the MarzPay Collections API. Perfect for businesses in Uganda accepting mobile payments.
[marzpay_button]Quick Start: [marzpay_button amount="1000" phone="256759983853"]
Integrate MarzPay into web applications and Node.js backends with our comprehensive JavaScript library.
Quick Start: npm install marzpay-js
Official Python SDK for MarzPay with complete API coverage, error handling, and webhook support.
Quick Start: pip install marzpay-python
Official PHP SDK for MarzPay with Laravel integration, collections, disbursements, and phone verification.
Install: composer require marzpay/php-sdk
Go integration for high-performance applications with middleware support.
Quick Start: go get github.com/marzpay/collections-go
Native mobile app integration for iOS, Android, React Native, and Flutter.
Platforms: iOS, Android, React Native, Flutter
Accept mobile money payments in WordPress using the MarzPay Collections API. Perfect for businesses in Uganda accepting mobile payments.
The MarzPay Collections WordPress Plugin provides seamless integration between WordPress websites and the MarzPay Collections API. This plugin enables businesses in Uganda to accept mobile money payments directly through their WordPress site using simple shortcodes.
MarzPay is a mobile money payment platform that allows businesses to collect payments from customers via mobile money in Uganda. The platform supports multiple mobile money providers and offers a secure, reliable payment collection service.
[marzpay_button]marzpay-collections folder to /wp-content/plugins/Go to WordPress Admin → Settings → MarzPay. You'll see the configuration panel.
Click "Save Settings" to store your configuration.
[marzpay_button amount="1000" phone="256759983853"]
| Parameter | Required | Description | Example |
|---|---|---|---|
amount |
Yes | Payment amount in UGX (500-10,000,000) | 1000 |
phone |
Yes | Customer phone number | 256759983853 |
The plugin automatically converts phone numbers to the required format:
| Input Format | Converts To | Description |
|---|---|---|
256759983853 |
+256759983853 |
Recommended - Full country code |
0759983853 |
+256759983853 |
Local format - automatically prefixed |
+256759983853 |
+256759983853 |
International format - used as-is |
[marzpay_button amount="5000" phone="256759983853"]
POST https://wallet.wearemarz.com/api/v1/collect-money
Basic Authentication using your API credentials:
Authorization: Basic {base64_encode(API_USER:API_KEY)}
{
"amount": 500,
"phone_number": "+256759983853",
"reference": "uuid-v4-format",
"description": "Payment description",
"callback_url": "https://yoursite.com/marzpay-callback",
"country": "UG"
}
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
amount |
Integer | Yes | Amount in UGX (500-10,000,000) | 500 |
phone_number |
String | Yes | Phone in +256XXXXXXXXX format | +256759983853 |
reference |
String | Yes | Unique UUID v4 reference | uuid-here |
description |
String | Yes | Payment description | Payment description |
callback_url |
String | Yes | Webhook notification URL | https://yoursite.com/callback |
country |
String | Yes | Country code (UG for Uganda) | UG |
{
"status": "success",
"message": "Payment request sent successfully",
"data": {
"reference": "uuid-here",
"amount": 500,
"phone_number": "+256759983853"
}
}
{
"status": "error",
"message": "Error description",
"error_code": "ERROR_CODE"
}
| Code | Description | Solution |
|---|---|---|
VALIDATION_ERROR |
Input validation failed | Check amount, phone, and reference format |
INVALID_CREDENTIALS |
API credentials invalid | Verify API User and Key |
MINIMUM_AMOUNT |
Amount below 500 UGX | Increase amount to minimum |
MAXIMUM_AMOUNT |
Amount above 10,000,000 UGX | Decrease amount to maximum |
INVALID_PHONE |
Phone number format invalid | Use supported phone formats |
Cause: API connection or authentication issue
Solution: Check API credentials and test connection
Cause: Error message too long for URL
Solution: Use the "View Detailed Error Information" section
Cause: Invalid request format or data
Solution: Check amount limits and phone number format
Cause: Reference format issue
Solution: Plugin automatically generates valid UUIDs
Cause: Amount below MarzPay minimum
Solution: Use amounts 500 UGX or higher
[marzpay_debug]
Shows API credentials status and WP_DEBUG information.
Enable WordPress debugging:
Download the plugin and start accepting mobile money payments in WordPress today!
Our API documentation provides comprehensive guides, examples, and references for payments, collections, webhooks, and more.