| Control Number | Payer / Member | Description | Amount (TZS) | Status | Issued Date | Expires At | Actions |
|---|---|---|---|---|---|---|---|
| Loading control numbers... | |||||||
Real-Time Request & Webhook Transaction Logs
| Timestamp | Direction | Endpoint / URL | Method | Status | Inspect Details |
|---|---|---|---|---|---|
| Click Refresh to load logs. | |||||
Virtual ZanMalipo Configuration
Digital Certificates & PKI
Public X.509 Certificate used to verify ZanMalipo digital signatures (SHA256withRSA).
Integration Guide & Code Samples
You can integrate your application with this virtual ZanMalipo system using either the Standard ZanMalipo SP API v2.1 XML protocol or the Simple Direct REST JSON API.
Option A: Simple REST API (Recommended for Instant Python/Django Integration)
Generate Control Number:
POST http://127.0.0.1:8001/api/v1/control-number/generate
Content-Type: application/json
{
"payer_name": "Amina Ali Omar",
"phone_number": "255777123456",
"amount": 15000,
"description": "ZLSB Annual Membership",
"days_valid": 30
}
Simulate Payment (Dispatches Webhook):
POST http://127.0.0.1:8001/api/v1/payment/simulate
Content-Type: application/json
{
"control_number": "991283401426",
"amount": 15000,
"psp_code": "PBZ001",
"psp_name": "People's Bank of Zanzibar (PBZ)",
"payment_channel": "MB"
}
Option B: Official ZanMalipo XML SP API v2.1
Compliant with Section 4 of Government Electronic Payment Gateway Specification:
POST http://127.0.0.1:8001/api/bill/submission
Content-Type: application/xml
Gepg-Com: default
Gepg-Code: SP99128
Gepg-Alg: SHA256withRSA
<Gepg>
<billSubReq>
<BillHdr>
<ReqId>REQ-20261027-001</ReqId>
<SpGrpCode>SPG1000</SpGrpCode>
<SysCode>SYS001</SysCode>
<BillTyp>1</BillTyp>
<PayTyp>2</PayTyp>
<GrpBillId>BILL-001</GrpBillId>
</BillHdr>
<BillDtls>
<BillDtl>
<BillId>BILL-001</BillId>
<SpCode>SP99128</SpCode>
<BillDesc>Library Registration</BillDesc>
<CustName>Fatma Juma</CustName>
<CustCellNum>255778899001</CustCellNum>
<BillAmt>15000.00</BillAmt>
<Ccy>TZS</Ccy>
<BillPayOpt>1</BillPayOpt>
</BillDtl>
</BillDtls>
</billSubReq>
<signature>...</signature>
</Gepg>