Validate Mobile Money Account
Validates a phone number in any format (with or without country code). Returns validation status, country information, formatted number, and whether the country is supported for mobile money.
Reading the result
nameLookupStatus tells you whether the name resolved, and nameLookupReason
says why when it didn’t — so you can tell a number that doesn’t exist from a
corridor that can’t resolve names from something worth retrying.
isValid reports the number format, and flips to false once a lookup proves the
destination unusable. A name mismatch is different: the number is real, so
isValid stays true and nameMatch.matched is what tells you the holder isn’t
who you expected.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
What to validate. Defaults to mobile_money; paybill and till take shortCode instead of phoneNumber.
mobile_money, paybill, till Required unless accountType is paybill or till. Send it in international format, including the country code.
"+254712345678"
Required when accountType is paybill or till. The M-PESA shortcode.
"247247"
Account number on a paybill — what a payer would enter. Paybill only.
"0670179741746"
Country code (ISO2). Only needed for paybill and till, where it defaults to KE.
"KE"
Mobile network, used to route the name lookup. Optional — it is resolved from the phone number prefix when omitted. Supply it only if the number has been ported, or if the response tells you the network could not be determined.
MTN, AIRTEL, VODAFONE, TIGO, YAS, ORANGE, NOT_SUPPORTED, ZAMTEL, MPESA, CHECKOUT, BKTRX, CRDTRX, MOOV, TMONEY, FREE, EXPRESSO, HALOPESA, VODACOM, WAVE "MPESA"
Name you expect on this account. Returns a nameMatch score against the real one.
"Jane Doe"