Native Wallet Integration
Introduction
Native Wallet Integration allows you to accept payments directly from digital wallet providers without redirecting customers to external payment pages. This integration method provides a seamless, secure, and native payment experience within your mobile application or website.
By integrating directly with wallet providers (Apple Pay, Google Pay, and Samsung Pay), you can leverage the payment credentials securely stored on customers' devices, enabling faster checkouts and improved conversion rates.
Supported Payment Methods
This Integration supports the following digital wallet providers:
- Apple Pay
- Google Pay
- Samsung Pay
Before You Start
Prerequisites
- MyFatoorah Demo Account: Create your test account at MyFatoorah Portal
- API Key: Generate your test API key from the portal (or you can also use a test token here)
- Webhook Configuration: Set up a webhook endpoint to receive payment status notifications
Environment URLs
| Environment | API Base URL |
|---|---|
| Sandbox | https://apitest.myfatoorah.com |
| Kuwait, UAE, Bahrain, Jordan, Oman | https://api.myfatoorah.com |
| Saudi Arabia | https://api-sa.myfatoorah.com |
| Qatar | https://api-qa.myfatoorah.com |
| Egypt | https://api-eg.myfatoorah.com |
ImportantAlways use the
/v3/endpointfor this integration.
For example: https://apitest.myfatoorah.com/v3/payments
Older versions/v2should not be used for new integrations.
How It Works
Integration Flow
- The customer selects their preferred wallet (Apple Pay, Google Pay, or Samsung Pay) on your platform.
- Your application communicates with the wallet provider to generate a payment token.
- Your server sends the wallet token to the MyFatoorah API endpoint along with payment details.
- MyFatoorah processes the payment and returns the OTP URL or the transaction result.
API Endpoint
The Native Wallet Integration uses a single unified endpoint for all wallet providers:
Endpoint: POST /v3/payments
{
"PaymentMethod": "APPLE_PAY",
"SourceOfFund": {
"Token": "{\"PaymentData\":{\"version\":\"EC_v1\",\"data\":\"FY54AajfqpMCGOrXK0AePw8\/kxVVRMn\/hL7O0Yu1+j6nrSrJGSeUtVaDDJkvV9Nht+szczce3aWGk4CpZKWgZtFxMHWW4m8eMD2Ciq1S21ds451hQ1GhIaVJ+KZRdb0rTa39q3U5zSxb5ZyxJ6PcgAbn9UVLuy3rZvtN7WiCeh15GTMKsQA1Kky8M0Pan112xBWiOw\/7R+Lus68ADkBRMbe1UG8\/E8inocrk1Lym+nOuB9e44kQE6Z0c7ZjjK1fGG2ew+YHq1stk1bsAOOvIhjMmdAJLL1d0dsqjCqPIZv9MMDwUZRtfuUAFxn\/92lYm4WBJ22kaIBeGk\/fTx6fTFIuOxCgRA+yIdBIILF8NKXWG\/9zA5BMufojlC8WBb0T8K1OWN4eswk7y5jg\/6tQ=\",\"signature\":\"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\/S5LMA8GA1UdEwEB\/wQFMAMBAf8wHwYDVR0jBBgwFoAUu7DeoVgziJqkipnevr3rr9rLJKswNwYDVR0fBDAwLjAsoCqgKIYmaHR0cDovL2NybC5hcHBsZS5jb20vYXBwbGVyb290Y2FnMy5jcmwwDgYDVR0PAQH\/BAQDAgEGMBAGCiqGSIb3Y2QGAg4EAgUAMAoGCCqGSM49BAMCA2cAMGQCMDrPcoNRFpmxhvs1w1bKYr\/0F+3ZD3VNoo6+8ZyBXkK3ifiY95tZn5jVQQ2PnenC\/gIwMi3VRCGwowV3bF3zODuQZ\/0XfCwhbZZPxnJpghJvVPh6fRuZy5sJiSFhBpkPCZIdAAAxggGIMIIBhAIBATCBhjB6MS4wLAYDVQQDDCVBcHBsZSBBcHBsaWNhdGlvbiBJbnRlZ3JhdGlvbiBDQSAtIEczMSYwJAYDVQQLDB1BcHBsZSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTETMBEGA1UECgwKQXBwbGUgSW5jLjELMAkGA1UEBhMCVVMCCFnYobyq9OPNMAsGCWCGSAFlAwQCAaCBkzAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0yNTEyMDIwOTE3NDBaMCgGCSqGSIb3DQEJNDEbMBkwCwYJYIZIAWUDBAIBoQoGCCqGSM49BAMCMC8GCSqGSIb3DQEJBDEiBCBgEHd0qYFivIW\/juzkYS9ZM\/EJPtEof3BYxZF37VxYwTAKBggqhkjOPQQDAgRHMEUCIQDCTIdh626dVbaJN2iPnD4M0Zx8JM5FkEri+XNg8YzeOgIgBlqrEevxEHgwDRIWYVWgzC8+uYujiAiROWDEzt\/CEPcAAAAAAAA=\",\"header\":{\"ephemeralPublicKey\":\"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEL7bmqfLGIjCAxd9WegJaS3kZcN4oqJFC+h+MjEKNXV6mWcR+wLfE39y3p\/oj33Oo1\/LI+tVcDi9\/mJHHCrR2YA==\",\"publicKeyHash\":\"hmOvu\/gjGyJ2irwuLSHzSB2irbqeEjsc\/IBnBTzfGnA=\",\"transactionId\":\"fb63b9dfd46b59420721e4a19b3e0397a9df2aa70b6337aec8a52bcf6582609f\"}},\"PaymentMethod\":{\"displayName\":\"MasterCard 2095\",\"network\":\"MasterCard\",\"type\":\"credit\"},\"TransactionIdentifier\":\"fb63b9dfd46b59420721e4a19b3e0397a9df2aa70b6337aec8a52bcf6582609f\"}"
},
"Order": {
"Amount": 23
},
"IntegrationUrls": {
"Redirection": "https://your-website.com/payment-callback"
}
}{
"PaymentMethod": "GOOGLE_PAY",
"SourceOfFund": {
"Token": "{\r\n \"apiVersion\": 2,\r\n \"apiVersionMinor\": 0,\r\n \"paymentMethodData\": {\r\n \"description\": \"Test Card: Visa\u2006\u2022\u2022\u2022\u2022\u20061111\",\r\n \"info\": {\r\n \"assuranceDetails\": {\r\n \"accountVerified\": true,\r\n \"cardHolderAuthenticated\": false\r\n },\r\n \"cardDetails\": \"1111\",\r\n \"cardNetwork\": \"VISA\"\r\n },\r\n \"tokenizationData\": {\r\n \"token\": \"{\\\"signature\\\":\\\"MEUCIQDP0ytSfmJ7Mo4zPFH6t78PoaFH7wYYq5xPsfuLVvujJgIgPaPMIiyp2Eort9\/pv9aDbYjQjRG5CP5NBVdXMksvKws\\\\u003d\\\",\\\"intermediateSigningKey\\\":{\\\"signedKey\\\":\\\"{\\\\\\\"keyValue\\\\\\\":\\\\\\\"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEnHL0h9ycZUzjH9COq9FahkCqns1j6qc+NN8iuLyAnxM0WNfoFi3MeqQhxK1fioveaO4zmmoZ3ej\/d2ZN8s4owg\\\\\\\\u003d\\\\\\\\u003d\\\\\\\",\\\\\\\"keyExpiration\\\\\\\":\\\\\\\"1756167622636\\\\\\\"}\\\",\\\"signatures\\\":[\\\"MEYCIQDt6aSVdAwXg7\/diWQnAWDmd22SBK6PMgud08iz34wOKAIhALMy42fMELwTDUIiQSMFVKm\/9q9eezWclCmwSQOY4\/Qv\\\"]},\\\"protocolVersion\\\":\\\"ECv2\\\",\\\"signedMessage\\\":\\\"{\\\\\\\"encryptedMessage\\\\\\\":\\\\\\\"hG9EF0oqYpf5GZiFDJj\/OJR3wTdmXlueew1KYDambfxiqK9ffMMnouU9RJi98POJNqIKe\/HqRei1qxDdGCpOOOlOoTCkO+8s4pL8nOBZvDqqjdZxFJs97AMT87jLZTjPmaUcNd6JdrVT+pQ2SRlm7uNFcuQpeC+8flaW7ctPHOWX1zGTV3q2gJD\/qrkqjJYC\/Udznskn99QWHtSPeg8jTMAszhZXPX\/VpoG0AZ12F45wz6RpWaEUgNhYe9N11ZXCbnNtRWdKWZzu47NtubUSZuN3lb4xpyWY8Cqi+oFYLIJwbyMUY73xHTFDJ6uCaQB\/8O1N75uXd028XsyMvvkic7VlWrDbBWveVbOZkvyT2sqIFdJcjULAzXolzhIdUrtg5GXMYuL94KHtiBbYtmHyTObnkzB2RPsJqwgIgRDhw+RYHXyreH0xUD2L01Hwz5GzaWtDhI0iCBSuFJFqquUFOIeRA5TNFw+C0nUCdQSq2Xa7nfOIb6NtDk3mgWWuId9H1MEEtwzo4FWG\/WGzuzvVtwBBuPTDZMTLC52aKC1T89QY9vK2\\\\\\\",\\\\\\\"ephemeralPublicKey\\\\\\\":\\\\\\\"BIqW+pLfre\/iuruyM59WNG+JzFbbMBvQonJPuRSJqQU0FecYEoah93m89VcH4R6P0omw\/JNZ+J0\/xQbQeaiiDp4\\\\\\\\u003d\\\\\\\",\\\\\\\"tag\\\\\\\":\\\\\\\"jYVQLDGPliiSHH6xJ0Yy7yg9bcGNk75voV0rVCtsijY\\\\\\\\u003d\\\\\\\"}\\\"}\",\r\n \"type\": \"PAYMENT_GATEWAY\"\r\n },\r\n \"type\": \"CARD\"\r\n }\r\n}",
},
"Order": {
"Amount": 23
},
"IntegrationUrls": {
"Redirection": "https://your-website.com/payment-callback"
}
}{
"PaymentMethod": "SAMSUNG_PAY",
"Order": {
"Amount": 25
},
"SourceOfFund": {
"Token": "{\"method\":\"3DS\",\"recurring_payment\":false,\"card_brand\":\"visa\",\"card_last4digits\":\"1738\",\"3DS\":{\"type\":\"S\",\"version\":\"100\",\"data\":\"eyJhbGciOiJSU0ExXzUiLCJraWQiOiJpbTZnTk5ZaS9YZ3BWNTVMaWZkN3BBTkQ3VU9rb3BHRHhIcy9WSmJ5NytVPSIsInR5cCI6IkpPU0UiLCJjaGFubmVsU2VjdXJpdHlDb250ZXh0IjoiUlNBX1BLSSIsImVuYyI6IkExMjhHQ00ifQ.OhMqFJKaJEiOnbWOaZM5ZW39shG0RifMl3qjOwz8oetCjhKCMqsugh9u_T5Xbq8TLbmm5PUNuk0eGe4KBaE_9cQ4J3eaEP6V2fhWZlep_gwsJCZycvuNTLSfCGMcnkbEEOKMMxYiRMzcAskqbJzEUpDwmNLE5OPnUY9lnRStI3KakcMjMn-DCaBmKik9parv4mZeMniiqJnxXz39mWRsIEo5OF1B4OSMwLBsZIByfMgH3uGcT9oXdTvCPjI62uJ5ByR64pfMOCt1edZgM3cg0LJ-KqAhGM42uM4517rdQGh6BZcaAch9WCs34H_F8RtNUdZVKJp0nUEQAlHxW-dHOA.j8gt5xNXz6C008FJ.242zDcviTAB8EHRLc7oesQJ4YoqRLt3aeOaFjmYeopCFmWfZMXElFG-qrEYUrFCEeQ8FNU9_xM1Wc4MeBzMgUpGTFY7Nz--hZzFlfV1QelUlt0nvwS_-e7QWgadUZgEaWO7iyPC2vqUxezNjBP3hgrLiQP-9G9yZTItxu0hZDlw8ow5VurJOPjsYT5xzstMXik4W6T2dDEsO7_iS9tE6rs3Tr4wWC9CqVb4OPqBDekI2REi1dFjl65E.T7L9YdU1y0jMRXNlN7F_iA\"}}"
},
"IntegrationUrls": {
"Redirection": "https://your-website.com/payment-/callback"
}
}Next Steps
Ready to integrate? Choose your wallet provider and follow the detailed integration guide:
Old Integration (V2)In case you are using the integration for v2, you can find the documentation here:
Updated 5 days ago
