If your app takes payments from customers in the Kingdom, Mada is not a nice-to-have. It is the national debit network, and most Saudi cardholders expect to pay with it. An app that only accepts international credit cards will lose customers at the payment screen.
The short answer to “how do I integrate MADA payments into my app?” is this: you don’t connect to MADA directly. You open a merchant account with a Saudi payment gateway or acquirer that supports MADA, then integrate that provider’s SDK or API into your app and backend. The rest of this guide walks through how to do that properly.
If you would rather have a team handle it end to end, our mobile app development team in Saudi Arabia can help with the build and the payment integration.
Mada is Saudi Arabia’s national payment network, operated by Saudi Payments, which is part of the Saudi Central Bank (SAMA) ecosystem. Most debit cards issued by Saudi banks run on mada, often alongside Visa or Mastercard branding. You can read the scheme’s own overview at mada.com.sa.
For an app owner, this has three practical consequences:
Your first decision is the provider. Widely used options in the Saudi market include Moyasar, HyperPay, PayTabs, and Tap Payments. Others exist, so treat this as a shortlist rather than a ranking.
When comparing providers, check:
Which gateway fits which business? There is no single best choice, so match the provider to your product:
Compare at least two providers using the checklist above, and confirm current features in their documentation.
This is the step teams underestimate. To accept live Mada payments, you need an approved merchant account with your chosen provider, and that usually requires business documents such as a commercial registration, bank account details, and information about your app and products. Approval can take longer than development, so start onboarding in parallel with the build, not after it.
What providers typically ask for. Exact lists vary by provider and business type, but commonly include:
How long it takes. Moyasar states that approval typically takes 2 to 5 business days after all documents are submitted and verification is complete. Other providers vary, so ask yours for a timeline in writing. Moyasar also notes that you don’t need a fully launched website to start activation, so apply early.
There are three common ways to take Mada payments in an app.
| Approach | How it works | Best for | Trade-off |
| Provider mobile SDK | Pre-built payment screens or components inside your iOS, Android, Flutter, or React Native app | Most apps | Less visual control, fastest and safest |
| Hosted checkout / redirect | User is sent to the provider’s secure page, then returned to your app | Quick launches, web-first products | Slightly less seamless experience |
| Direct API with custom UI | You build your own form and call the provider’s API | Large teams with strict UX needs | Highest PCI burden, highest effort |
For most apps, we recommend the SDK route. For example, Moyasar’s documentation lists mobile SDKs for iOS, Android, Flutter, and React Native, and its card flow manages the 3D Secure step for you. Always confirm the current features in your provider’s documentation before you commit.
The most common integration mistake is trusting the app. A payment is only real when your server has verified it. A safe flow looks like this:
Build these safeguards from day one:
Card payments in the Saudi market go through 3D Secure, where the cardholder authenticates with their bank, usually via an OTP or banking app. With a good SDK, this is managed for you, as in Moyasar’s card flow, but you still need to design for it:
Mada works best as part of a local payment mix. Apple Pay is popular on iOS and can carry Mada cards. In Moyasar’s Apple Pay setup, for example, merchant capabilities include 3DS, credit and debit support. STC Pay is the dominant local wallet and is offered as a separate method by several gateways.
Check with your provider which methods are enabled for your merchant account, since Apple Pay needs its own merchant and domain setup, and STC Pay may be activated separately.
Use the provider’s sandbox and test cards first, then run a small set of live transactions.
Test at least:
Our recommended QA approach. Treat payments as a release-blocking feature. Run every scenario above in the provider’s sandbox, repeat them on real iOS and Android devices (Apple Pay needs a supported device), then finish with a few low-value live transactions and a test refund before launch. Finally, compare your orders against the provider’s settlement report to confirm everything reconciles.
This is not legal advice, so confirm requirements with your gateway, bank, and legal counsel.
Pricing depends on scope. We quote each payment integration after a short discovery call, because the effort differs widely between a single card flow and a full multi-method setup. Request a quote.
Cost and timeline depend on your platform count (iOS, Android, web), the number of payment methods, whether you need recurring payments or saved cards, and how quickly merchant onboarding is approved. Gateway fees are set by your provider, so request their current pricing directly.
Payments touch product design, backend security, compliance, and customer support all at once. A team that builds for Saudi users every day already knows the local payment mix, Arabic UX conventions, and how to work with Saudi gateways.
See our work. Browse our case studies to see how we deliver apps for clients.
Can I integrate Mada directly without a payment gateway?
In practice, no. Businesses accept Mada through a gateway or acquirer that offers it, so you need a merchant account with one of them.
Do I need a Saudi company to accept Mada payments?
Requirements vary by provider, but most Saudi gateways ask for local business documentation during onboarding. Confirm eligibility with your chosen provider.
Does Mada work for recurring payments and subscriptions?
Support depends on the gateway and your account setup. Ask your provider about tokenisation and recurring billing rules for Mada cards before you design a subscription model.
Can I accept MADA in a Flutter or React Native app?
Yes, if your provider has an SDK for that framework or supports a hosted checkout. Several Saudi gateways publish Flutter and React Native SDKs, so check current availability.
Is Apple Pay enough without Mada?
No. Not every customer uses Apple Pay, and Android users need alternatives. Offer Mada cards plus Apple Pay and, where relevant, STC Pay.
What is the difference between a payment gateway and an acquirer?
The gateway is the technology that securely passes payment data between your app and the payment network. The acquirer is the bank or licensed entity that settles money to your account. Many Saudi providers bundle both.
We can help with gateway selection, integration, testing, and go-live for your Saudi app. Talk to our team or explore our case studies.