MOI
Overview
Ministry of Interior fees paid through SADAD — residency, driving licences, passports, traffic violations, vehicles, visas, civil affairs and deportation. Same two steps as SADAD: inquire for the fee, then pay it.
| Endpoint | Does |
|---|---|
| FeeInquiry | Looks up what a service costs for a person |
| FeePayment | Pays the fee |
Prerequisites
- Authentication: Obtain an access token using the OAuth2 Client Credentials flow (see Getting Started → Authentication). Every endpoint in this product takes
Authorization: Bearer <ACCESS_TOKEN>— there are no exceptions. - Subscription: Subscribe to B2B Unified Product in your chosen environment; it covers all seven B2B Unified products.
All seven B2B Unified products share one scope, b2b_unified. Request it once and the same token works here and on the other six; the Authentication page shows how.
Coverage
63 services across 10 billers: 46 supported by both banks, 10 available only through ARB, and 7 only through ANB. The service catalogue is the lookup for which biller and service codes go together, and which bank serves them.
Each service takes different fields
Four fields are always required — bankCode, billerCode, serviceCode and beneficiaryId. Beyond those, roughly twenty more exist and which ones are required depends entirely on the billerCode and serviceCode pair. Send only what that specific service needs; the service catalogue is the lookup table.
MOI settles in the call
Like SADAD and unlike single and bulk payments, MOI is synchronous. The payment completes within the request, returning PAYMENT_COMPLETED, and there is no status endpoint to poll.
Ready to build with MOI?
Create a sandbox app, grab your credentials, and make your first call in minutes.