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 MOI in your chosen environment.
A token carries only the scopes you asked for, so one issued for a different product is rejected here. Request this product's scope, or ask for several scopes in a single token as described on the Authentication page.
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.