M-Pesa Tanzania 钱包与账单数据 API
M-Pesa Tanzania 是 Vodacom Tanzania 面向个人用户推出的移动支付应用,Google Play 包名为 com.vodafone.mpesa.tanzania,也是坦桑尼亚以坦桑尼亚先令(TZS)计价的 M-Pesa 钱包 Android 客户端。登录后,用户可通过 Tuma Pesa 向 Vodacom、Airtel、Halotel、TTCL、Mixx by Yas 和 AzamPesa 号码转账,向 Lipa kwa M-Pesa 商户付款,在代理点办理取现(Toa Pesa kwa Wakala),查看 M-Pesa 简版账单,为 Smile、Airtel、TTCL、Halotel 和 Vodacom 号码充值话费,缴纳 DStv、学费、保险、养老金及 TANESCO LUKU 预付电费,还可向 CRDB、NMB、NBC、Standard Chartered 等 39 家本地银行转入资金,支付以 9 开头的政府缴费控制号码,并在钱包余额不足时使用 Songesha 透支。开通时需使用坦桑尼亚手机号(可带 +255 或前导 0,主体以 6 或 7 开头、后接 8 位数字),验证来自 M-PESA 发件人的短信动态验证码,再设置 PIN;用户也可选择指纹或其他生物识别解锁。首页功能网格与法律条款页面均提供英语和斯瓦希里语版本。它是 Vodacom 在坦桑尼亚的默认 M-Pesa 客户端,与 Mixx by Yas、Airtel Money、HaloPesa、TPesa 和 AzamPesa 共同服务当地的 TZS 钱包用户。
发往 Mixx by Yas、HaloPesa 和 Airtel 的 Tuma Pesa 转账记录,通过 transID、networkCode 与 networkShortCode 关联交易及其跨网路由。钱包快照提供 availableBalance 和 currency;简版账单则为各笔交易列出 amount、transactionFee、runningBalance 与 endTime。启用电子账单后,屏幕上的交易历史最长可追溯 12 个月,PDF 电子账单的时间窗口则为六个月。
Lipa kwa M-Pesa 二维码数据用 creditPartyIdentifier 和 creditPartyName 标识收款商户,并列出 trxCode、amount 与 currencyCode。账单缴费记录组合 shortCode、billReference、paymentType 和 categoryType,其中 PAY_BILL 类型覆盖博彩、DStv、保险、学费和养老金等类别。39 家银行的目录还提供 accountNameCheck、accountNumberPrefix 与 accountNumberLabel,用于描述路由和户名核验支持情况,而不是给出已核实的收款人姓名。Songesha 配置包含 overdraftEnabled,以及 lukuOverdraftEnabled、governmentBillOverdraftEnabled 等分通道开关。文档列出的个人转账、商户付款、账单缴费、银行转入、LUKU 和政府缴费金额范围为 100–5,000,000 TZS;代理点取现的最低金额较高,为 200 TZS。
资金管理团队可结合交易标识与账单余额完成跨网对账,商户支付集成方可依据二维码中的收款方资料准备商户付款记录。账单聚合服务可通过 shortCode 和 categoryType 组织缴费商户;ERP 付款团队可依据银行目录标志,选择支持户名核验的通道。放贷团队可将透支启用状态与账单历史结合观察,但不能把开关状态视为已经使用 Songesha 的证据。openData Studio 将这些钱包、支付、目录和账单记录转化为可调用的开放数据,供上述集成使用。
应用截图
API 端点一览
请求/响应示例为依据应用界面重构的示意示例,并非实时抓包。
钱包余额快照
GET
/v1/mpesa-tz/wallet/balanceopenbanking读取首页以 TZS 计价的余额快照(availableBalance、runningBalance、overdraftEnabled),展示在 Tuma Pesa 与 Lipa kwa M-Pesa 功能网格上方。
认证方式: 使用手机号短信动态验证码(短信发件人为 M-PESA)及 PIN 登录后取得的会话令牌。查看首页余额时无需再次输入 PIN。
- msisdn
- currency
- fractionDigits
- availableBalance
- overdraftEnabled
- runningBalance
GET /v1/mpesa-tz/wallet/balance HTTP/1.1 Authorization: Bearer <session-token> Accept: application/json{ "msisdn": "255754100100", "currency": "TZS", "fractionDigits": 0, "availableBalance": 125000, "overdraftEnabled": true, "runningBalance": 125000 }转账(Tuma Pesa)
POST
/v1/mpesa-tz/transfers/pay-personopenbanking通过由 networkCode 和 networkShortCode 标识的跨网络通道提交 Tuma Pesa 个人转账,包括 VODACOM 001001、AIRTEL 922750、Mixx by Yas / TIGOPESA 922749、HALOTEL 922775 和 AzamPesa 922805。
认证方式: 会话令牌加 PIN 确认。金额须介于 PAY_PERSON_TZS_MIN(100)与 PAY_PERSON_TZS_MAX(5000000)之间。
- recipientMsisdn
- amount
- currency
- networkCode
- networkShortCode
- description
- transID
- flow
- network
- status
- runningBalance
POST /v1/mpesa-tz/transfers/pay-person HTTP/1.1 Authorization: Bearer <session-token> Content-Type: application/json { "recipientMsisdn": "255712345678", "amount": 25000, "currency": "TZS", "networkCode": "AIRTEL", "networkShortCode": "922750", "description": "School lunch" }{ "transID": "TZN7X2K9L0", "flow": "PAY_PERSON", "network": "AIRTEL", "networkCode": "AIRTEL", "networkShortCode": "922750", "amount": 25000, "currency": "TZS", "status": "LIVE", "runningBalance": 100000 }Lipa kwa M-Pesa 商户付款
POST
/v1/mpesa-tz/payments/merchantopenbanking按 tillNumber 向 Lipa kwa M-Pesa 商户付款,使用 payMerchantList 中的 M-Pesa、Airtel、Mixx by Yas、HaloPesa、TPesa、Selcom、AzamPesa 及 19 个银行钱包品牌通道。
认证方式: 会话令牌加 PIN。商户收款编号的长度上限由 TILL_NUMBER_MAX_CHARACTERS 设为 16 位;金额范围为 100–5000000 TZS。
- tillNumber
- amount
- currency
- networkCode
- networkQrCodeId
- overdraftEnabled
- transID
- flow
- network
- status
POST /v1/mpesa-tz/payments/merchant HTTP/1.1 Authorization: Bearer <session-token> Content-Type: application/json { "tillNumber": "1234567", "amount": 15000, "currency": "TZS", "networkCode": "VODACOM", "networkQrCodeId": "02503", "overdraftEnabled": true }{ "transID": "LIP8M3P1Q2", "flow": "PAY_MERCHANT", "tillNumber": "1234567", "network": "M-Pesa", "networkCode": "VODACOM", "amount": 15000, "currency": "TZS", "status": "LIVE" }按企业短码缴付账单
POST
/v1/mpesa-tz/payments/billopenbanking向状态为 LIVE 的企业 shortCode 缴付账单;98 家常用企业中有 62 家使用值为 PAY_BILL 的 paymentType,类别包括 CAT_Betting、CAT_DStv、CAT_Insurance、CAT_PaySchoolFees 和 CAT_Pension。
认证方式: 会话令牌加 PIN。企业缴费金额范围为 100–5000000 TZS;钱包余额不足时可按 PAY_BUSINESS_OVERDRAFT_ENABLED 使用 Songesha 透支补足。
- shortCode
- billReference
- amount
- currency
- paymentType
- categoryType
- transID
- id
- name
- status
POST /v1/mpesa-tz/payments/bill HTTP/1.1 Authorization: Bearer <session-token> Content-Type: application/json { "shortCode": "340352", "billReference": "POL-4412", "amount": 45000, "currency": "TZS", "paymentType": "PAY_BILL", "categoryType": "CAT_Insurance" }{ "transID": "BIL4R7S0T1", "id": "1791538519627", "name": "iINCOME FUND UNIT TRUST SCHEME", "shortCode": "340352", "billReference": "POL-4412", "paymentType": "PAY_BILL", "categoryType": "CAT_Insurance", "status": "LIVE", "amount": 45000, "currency": "TZS" }代理点取现
POST
/v1/mpesa-tz/withdrawals/agentopenbanking通过 agentCode 标识的 Vodacom 代理点提取 TZS 现金(Toa Pesa kwa Wakala);当 WITHDRAW_AGENT_OVERDRAFT_ENABLED 为 true 时,可选择使用 Songesha 透支。
认证方式: 会话令牌加 PIN。最低取现金额由 WITHDRAW_AGENT_TZS_MIN 设为 200 TZS,高于个人转账的下限;最高金额为 5000000 TZS。
- agentCode
- amount
- currency
- overdraftEnabled
- transID
- flow
- status
- runningBalance
POST /v1/mpesa-tz/withdrawals/agent HTTP/1.1 Authorization: Bearer <session-token> Content-Type: application/json { "agentCode": "123456", "amount": 50000, "currency": "TZS", "overdraftEnabled": true }{ "transID": "WTH2A8B3C4", "flow": "WITHDRAW_AGENT", "agentCode": "123456", "amount": 50000, "currency": "TZS", "status": "COMPLETED", "runningBalance": 75000 }M-Pesa 简版账单
POST
/v1/mpesa-tz/statements/miniopenbanking为 Taarifa ya M-Pesa 账单页面及可选的 PDF 导出分页提供交易记录,字段包括 transID、flow、amount、transactionFee、runningBalance 和 counterparty。
认证方式: 使用登录后的会话令牌。电子账单 PDF 覆盖 6 个月;当 FEATURE_E_STATEMENTS_ENABLED 为 true 时,屏幕中的交易历史可追溯至 12 个月。
- msisdn
- startDate
- endDate
- currency
- transID
- flow
- amount
- transactionFee
- runningBalance
- counterparty
- networkCode
- endTime
POST /v1/mpesa-tz/statements/mini HTTP/1.1 Authorization: Bearer <session-token> Content-Type: application/json { "msisdn": "255754100100", "startDate": "2026-09-01", "endDate": "2026-10-23", "currency": "TZS" }{ "currency": "TZS", "entries": [ { "transID": "TZN7X2K9L0", "flow": "PAY_PERSON", "amount": 25000, "transactionFee": 200, "runningBalance": 100000, "counterparty": "255712345678", "networkCode": "AIRTEL", "endTime": "2026-10-17T08:41:12+03:00" } ] }转入银行目录
GET
/v1/mpesa-tz/banksopendata返回用于银行转入的 39 家银行目录,包含 name、shortCode 和 accountNameCheck;转入金额范围为 100–5000000 TZS,由 PAY_INTO_BANK_TZS_MIN/MAX 指定。
认证方式: 使用登录后的会话令牌。向目录中的银行转入资金仍需 PIN;此调用仅返回目录。
- version
- name
- shortCode
- accountNameCheck
- accountNumberPrefix
- accountNumberLabel
GET /v1/mpesa-tz/banks HTTP/1.1 Authorization: Bearer <session-token> Accept: application/json{ "version": 42, "banks": [ { "name": "Standard Chartered", "shortCode": "922827", "accountNameCheck": true, "accountNumberPrefix": null, "accountNumberLabel": null }, { "name": "NMB", "shortCode": "922xxx", "accountNameCheck": true, "accountNumberPrefix": null, "accountNumberLabel": null } ] }跨网络收款通道
GET
/v1/mpesa-tz/networksopendata列出个人转账、话费充值和商户付款可用的 LIVE 跨网络通道,提供 network、networkCode、networkShortCode 和 networkQrCodeId,供转账与付款选项确定跨网路由。
认证方式: 使用登录后的会话令牌。查询目录无需 PIN。
- version
- id
- network
- networkCode
- networkShortCode
- networkQrCodeId
- status
- order
- payPersonList
- payAirtimeList
- payMerchantList
GET /v1/mpesa-tz/networks HTTP/1.1 Authorization: Bearer <session-token> Accept: application/json{ "version": 135, "payPersonList": [ {"id": "PAY_PERSON-VODACOM-2", "network": "VODACOM", "networkCode": "VODACOM", "networkShortCode": "001001", "status": "LIVE", "order": 0} ], "payAirtimeList": [ {"id": "PAY_AIRTIME-SMILE-1", "network": "SMILE", "networkCode": "SMILE", "networkQrCodeId": "02503", "networkShortCode": "001001", "status": "LIVE", "order": 0} ], "payMerchantList": [ {"id": "PAY_MERCHANT-VODACOM-1", "network": "M-Pesa", "networkCode": "VODACOM", "networkQrCodeId": "02503", "networkShortCode": "001001", "status": "LIVE", "order": 0} ] }解析 Lipa kwa M-Pesa 二维码
POST
/qr/v1/qr-codes/decodeopenbanking在商户付款输入 PIN 之前,将扫描的 Lipa kwa M-Pesa 商户二维码解析为 creditPartyIdentifier(商户收款编号)、creditPartyName、trxCode、amount 及 EMV 风格的 additionalParameters,后者包含 storeID、terminalID 和 orgShortCode。
认证方式: OAuth2 客户端凭据流程使用 client_id、client_secret、grant_type 和 scope 换取 accessToken,再将其作为 Bearer 令牌用于二维码调用。用户在解析完成后、付款之前输入 PIN。
- qrString
- market
- responseCode
- responseMsg
- referenceID
- description
- amount
- creditPartyIdentifier
- creditPartyName
- trxCode
- countryCode
- currencyCode
- merchantCCode
- merchantLoc
- qrType
- qrFormat
- refNo
- channelID
- networkID
- storeID
- terminalID
- orgShortCode
- mobileNumber
- loyaltyNo
POST /qr/v1/qr-codes/decode HTTP/1.1 Authorization: Bearer <accessToken> Content-Type: application/json { "qrString": "0002010102110216...", "market": "TZ" }{ "responseCode": "0", "responseMsg": "Success", "referenceID": "QR-88921", "description": "Merchant QR", "qrData": { "amount": 15000, "creditPartyIdentifier": "1234567", "creditPartyName": "DUKA LA JANE", "trxCode": "BG", "countryCode": "TZ", "currencyCode": "TZS", "merchantCCode": "5411", "merchantLoc": "Dar es Salaam", "qrType": "STATIC", "qrFormat": "EMV", "refNo": "INV-1022", "channelID": "1", "networkID": "1", "additionalParameters": { "storeID": "ST-01", "terminalID": "T-04", "orgShortCode": "123456", "mobileNumber": "255754100100", "loyaltyNo": null } } }话费充值
POST
/v1/mpesa-tz/airtime/topupopenbanking通过 payAirtimeList 中的 SMILE、AIRTEL、TTCL、HALOTEL 或 VODACOM 通道为手机号充值,通道由 networkCode 和 networkQrCodeId 标识。
认证方式: 会话令牌加 PIN。
- msisdn
- amount
- currency
- networkCode
- networkQrCodeId
- transID
- id
- network
- status
POST /v1/mpesa-tz/airtime/topup HTTP/1.1 Authorization: Bearer <session-token> Content-Type: application/json { "msisdn": "255754100100", "amount": 2000, "currency": "TZS", "networkCode": "VODACOM", "networkQrCodeId": "02503" }{ "transID": "AIR9D1E2F3", "id": "PAY_AIRTIME-VODACOM-1", "network": "VODACOM", "networkCode": "VODACOM", "amount": 2000, "currency": "TZS", "status": "LIVE" }Songesha 透支配置
GET
/v1/mpesa-tz/overdraft/profileopenfinance读取 Songesha 透支开关和 TZS 金额范围,确定钱包余额不足时个人转账、商户付款、账单缴费、代理点取现、LUKU 预付电费及政府缴费能否使用透支。
认证方式: 使用登录后的会话令牌。付款时使用 Songesha 透支仍需 PIN。
- currency
- overdraftEnabled
- payPersonOverdraftEnabled
- payMerchantOverdraftEnabled
- payBusinessOverdraftEnabled
- withdrawAgentOverdraftEnabled
- lukuOverdraftEnabled
- governmentBillOverdraftEnabled
- governmentBillTzsMin
- governmentBillTzsMax
- lukuTzsMin
- lukuTzsMax
GET /v1/mpesa-tz/overdraft/profile HTTP/1.1 Authorization: Bearer <session-token> Accept: application/json{ "currency": "TZS", "overdraftEnabled": true, "payPersonOverdraftEnabled": true, "payMerchantOverdraftEnabled": true, "payBusinessOverdraftEnabled": true, "withdrawAgentOverdraftEnabled": true, "lukuOverdraftEnabled": true, "governmentBillOverdraftEnabled": true, "governmentBillTzsMin": 100, "governmentBillTzsMax": 5000000, "lukuTzsMin": 100, "lukuTzsMax": 5000000 }
数据类别
- 余额
- 转账
- 商户付款
- 账单缴费
- 交易账单
- 银行
- 话费
- 透支
数据使用场景与案例
跨网络个人转账对账
资金管理机器人按 transID、networkCode 和 networkShortCode,将 Tuma Pesa 转账记录与 Mixx by Yas、Airtel、HaloPesa 和 AzamPesa 对手方匹配,再以 TZS 计价的 runningBalance 完成日终核对。
商户收款与账单缴费接入
收单机构将 Lipa kwa M-Pesa 二维码解析为 creditPartyIdentifier、trxCode 和 amount,再对接 DStv、学费与保险缴费记录中的 shortCode、billReference 和 paymentType。
转入银行前核对账户名称
ERP 付款流程先查询含 shortCode 和 accountNameCheck 的 39 家银行目录,再向 CRDB、NMB、NBC 或 Standard Chartered 发起 100–5,000,000 TZS 的转入,并跳过无法确认账户名称的通道。
Songesha 透支与 LUKU 资金缺口跟踪
放贷机构将 overdraftEnabled、lukuOverdraftEnabled、governmentBillOverdraftEnabled 与简版账单的 runningBalance 一起观察,识别 Songesha 何时用于补足 LUKU 预付电费或 GePG 政府缴费控制号码的支付缺口。
常见问题
哪些 M-Pesa Tanzania 字段可识别跨网转账?
Tuma Pesa 记录包含 network、networkCode、networkShortCode,以及 transID、amount、currency 和 runningBalance。文档中的 networkCode/networkShortCode 配对包括 AIRTEL/922750、Mixx by Yas 对应的 TIGOPESA/922749、HALOTEL/922775 和 AzamPesa/922805。账单记录还提供 transactionFee 与 endTime,支持以 TZS 计价的交易对账。
Lipa kwa M-Pesa 扫码结果如何对应商户付款?
商户二维码解析结果包括 creditPartyIdentifier(商户收款编号)、creditPartyName、trxCode、amount 和 currencyCode,并以 storeID、terminalID、orgShortCode 补充商户信息。商户付款使用 tillNumber,需要已登录的会话并通过 PIN 确认。仅解析二维码并不表示已完成付款。
哪些银行和缴费目录可用于付款?
银行转入目录覆盖 39 家银行,列出 name、shortCode、accountNameCheck、accountNumberPrefix 和 accountNumberLabel。accountNameCheck 表示是否支持户名核验,并非已核实的收款人姓名。账单缴费记录将 shortCode 与 billReference、paymentType、categoryType 配对,其中包含 PAY_BILL 缴费类型。文档列出的政府缴费控制号码格式以 9 开头。
Songesha 透支是否适用于所有支付通道?
配置除 overdraftEnabled 外,还分别提供 payPersonOverdraftEnabled、payMerchantOverdraftEnabled、payBusinessOverdraftEnabled、withdrawAgentOverdraftEnabled、lukuOverdraftEnabled 和 governmentBillOverdraftEnabled。这些字段表示透支启用状态,不是实际借款记录。文档列出的 LUKU 和政府缴费金额范围为 100–5,000,000 TZS;代理点取现最低为 200 TZS,最高为 5,000,000 TZS。
与 M-Pesa Tanzania 相似的应用
- Mixx by Yas — Mixx Super App 是 Mixx by Yas 在坦桑尼亚的手机钱包客户端,用来查看余额、转账、充话费、缴账单以及把资金转到银行。
- Airtel Money — Airtel Money 是 Airtel 在坦桑尼亚的手机钱包,Mixx by Yas 将其与 M-Pesa、T-Pesa、HaloPesa 并列,作为可互转的收款网络。
- HaloPesa — HaloPesa 是越南 Viettel 旗下 Halotel 在坦桑尼亚的手机钱包服务,该公司于 2015 年取得移动货币牌照。
- T-PESA — T-PESA 是坦桑尼亚电信公司 TTCL 的手机钱包应用,官方说明覆盖向任意网络转账、代理取现、缴账单与政府款项、自助充值以及向银行转账。
- AzamPesa — AzamPesa 是 AzamPay 面向坦桑尼亚个人与商户的电子钱包,可跨网络收发、缴水电与政府费用、充话费,并在钱包与银行之间划转资金。
- My OneApp — My OneApp 是 Safaricom 在肯尼亚的 M-PESA 客户端;该服务由 Vodafone 与 Safaricom 于 2007 年在肯尼亚推出,之后 Vodacom 在坦桑尼亚推出 M-Pesa。
相关主题
- M-Pesa Tanzania 数据 API
- Vodacom M-Pesa TZS 钱包字段
- Tuma Pesa 转账数据
- Lipa kwa M-Pesa 商户二维码数据
- M-Pesa 简版账单字段
- 坦桑尼亚银行转入目录
- M-Pesa 缴费参考号
- Songesha 透支设置
- LUKU TANESCO 缴费限额
需要集成这个 App 的数据 API?
我们可为任意指定 App 交付定制集成——源码交付 USD 500 起,或托管 API 按调用计费。告诉我们您需要的数据即可。
- 每个项目均签 NDA 与 SOW
- 3–7 天交付
- 验收通过后才付款
- 仅在授权范围内作业