All checks were successful
Auto Tag on Version Change / check-version (push) Successful in 2s
230 lines
5.2 KiB
Markdown
230 lines
5.2 KiB
Markdown
# User Profile
|
|
|
|
Fetch the authenticated user's full profile, including personal details, linked bank accounts, wallet settings, and permissions.
|
|
|
|
---
|
|
|
|
## Endpoint
|
|
|
|
```
|
|
GET https://fahipay.mv/actions/getprofile/?lang=en
|
|
```
|
|
|
|
---
|
|
|
|
## Prerequisites
|
|
|
|
- Valid `authID` from [login](01-login.md) or [OTP](02-otp.md)
|
|
- Valid `__Secure-sess` session cookie
|
|
|
|
---
|
|
|
|
## Request
|
|
|
|
### Headers
|
|
|
|
| Header | Value |
|
|
|---|---|
|
|
| `authid` | `xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx` |
|
|
| `content-type` | `multipart/form-data` |
|
|
| `User-Agent` | `okhttp/4.12.0` |
|
|
| `Accept-Encoding` | `gzip` |
|
|
| `Connection` | `Keep-Alive` |
|
|
| `Cookie` | `__Secure-sess=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx` |
|
|
|
|
---
|
|
|
|
## curl Example
|
|
|
|
```bash
|
|
curl --request GET \
|
|
--url 'https://fahipay.mv/actions/getprofile/?lang=en' \
|
|
--compressed \
|
|
--header 'Accept-Encoding: gzip' \
|
|
--header 'Connection: Keep-Alive' \
|
|
--header 'Cookie: __Secure-sess=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' \
|
|
--header 'User-Agent: okhttp/4.12.0' \
|
|
--header 'authid: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' \
|
|
--header 'content-type: multipart/form-data'
|
|
```
|
|
|
|
---
|
|
|
|
## Response
|
|
|
|
```json
|
|
{
|
|
"nidexpiry": "2027-06-01",
|
|
"about": "",
|
|
"email": "user@example.com",
|
|
"country": "Maldives",
|
|
"fullname": "Mohamed Ali",
|
|
"postcode": "",
|
|
"props": {
|
|
"accs": {
|
|
"bml": {
|
|
"mvr": "7730000000001",
|
|
"usd": "7730000000002",
|
|
"mvr2": "7770000000003"
|
|
},
|
|
"cbm": {
|
|
"mvr": "1000000001"
|
|
},
|
|
"mib": {
|
|
"mvr": "90101000000001000",
|
|
"usd": "90101000000002000"
|
|
},
|
|
"sbi": {
|
|
"mvr": "12600000000001"
|
|
}
|
|
},
|
|
"lang": "en",
|
|
"wsize": 5000,
|
|
"withdraw": {
|
|
"fee": "3",
|
|
"unit": "%",
|
|
"freelimit": 0
|
|
},
|
|
"IDverified": 1,
|
|
"thresholds": {
|
|
"amount": 0,
|
|
"countries": {
|
|
"list": [],
|
|
"mode": "deny"
|
|
},
|
|
"frequency": 0
|
|
},
|
|
"amountTopup": 1,
|
|
"receiptTopup": 1,
|
|
"verifiedWith": "efaas",
|
|
"notifications": {
|
|
"txn": ["push"],
|
|
"login": ["push", "email"],
|
|
"balance": ["push"]
|
|
},
|
|
"allowedActions": [
|
|
"withdraw",
|
|
"payment",
|
|
"topup",
|
|
"transfer"
|
|
],
|
|
"two_factor_enabled": 1,
|
|
"efaas_login_enabled": 0,
|
|
"acc": "500000000001",
|
|
"walletType": "basic"
|
|
},
|
|
"mobile": "9600000001",
|
|
"city": "101",
|
|
"nid": "A123456",
|
|
"level": "1",
|
|
"address": "Example Address",
|
|
"accs": {
|
|
"bml": [
|
|
{ "name": "MOHAMED ALI" }
|
|
]
|
|
},
|
|
"invitecode": "XXXXX",
|
|
"profileID": "0000",
|
|
"verificationUploadMethods": ["camera", "file"],
|
|
"faceVerificationRequired": true,
|
|
"p2pqr": "https://fahipay.mv/api/qrcode/?data=9600000001",
|
|
"smsAuth": "xxxxxxxxxxxxxxxxxxxx",
|
|
"type": "success"
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## Key Fields
|
|
|
|
### Top-level
|
|
|
|
| Field | Type | Description |
|
|
|---|---|---|
|
|
| `fullname` | `string` | User's full name |
|
|
| `email` | `string` | Registered email address |
|
|
| `mobile` | `string` | Registered mobile number |
|
|
| `nid` | `string` | National ID card number (e.g. `A239225`) |
|
|
| `nidexpiry` | `string` | NID expiry date (`YYYY-MM-DD`) |
|
|
| `profileID` | `string` | Fahipay internal numeric user ID — use in `loginTag` |
|
|
| `level` | `string` | Account verification level |
|
|
| `country` | `string` | Registered country |
|
|
| `city` | `string` | City code |
|
|
| `address` | `string` | Street address |
|
|
| `invitecode` | `string` | Referral invite code |
|
|
| `p2pqr` | `string` | URL to this user's P2P QR code image |
|
|
| `type` | `string` | `"success"` or `"error"` |
|
|
|
|
---
|
|
|
|
### `props` Object
|
|
|
|
| Field | Type | Description |
|
|
|---|---|---|
|
|
| `acc` | `string` | The user's Fahipay wallet account number |
|
|
| `walletType` | `string` | `"basic"` or `"premium"` |
|
|
| `wsize` | `number` | Wallet size / transaction limit |
|
|
| `two_factor_enabled` | `number` | `1` if TOTP 2FA is active |
|
|
| `efaas_login_enabled` | `number` | `1` if eFaas login is enabled |
|
|
| `IDverified` | `number` | `1` if identity is verified |
|
|
| `allowedActions` | `string[]` | Permitted operations: `withdraw`, `payment`, `topup`, `transfer` |
|
|
|
|
> `props.acc` is the wallet account number shown in the app and used as the primary account identifier.
|
|
|
|
---
|
|
|
|
### `props.accs` — Linked Bank Accounts
|
|
|
|
Contains the user's bank accounts linked to Fahipay, organised by bank code. Used when topping up or withdrawing via linked banks.
|
|
|
|
| Key | Bank |
|
|
|---|---|
|
|
| `bml` | Bank of Maldives |
|
|
| `mib` | Maldives Islamic Bank |
|
|
| `cbm` | Central Bank of Maldives |
|
|
| `sbi` | State Bank of India |
|
|
|
|
Each bank entry is an object of named account numbers:
|
|
|
|
```json
|
|
"bml": {
|
|
"mvr": "7730000145458",
|
|
"usd": "7730000199959",
|
|
"mvr2": "7770000045775"
|
|
}
|
|
```
|
|
|
|
Store the raw JSON of `props.accs` — it is needed to determine the source account when initiating top-ups or withdrawals.
|
|
|
|
---
|
|
|
|
### `props.withdraw`
|
|
|
|
| Field | Description |
|
|
|---|---|
|
|
| `fee` | Withdrawal fee amount |
|
|
| `unit` | Fee unit — `%` = percentage, otherwise fixed |
|
|
| `freelimit` | Free withdrawal limit (0 = no free limit) |
|
|
|
|
---
|
|
|
|
## Error Response
|
|
|
|
```json
|
|
{
|
|
"title": "Error",
|
|
"msg": "Unauthorized",
|
|
"type": "error"
|
|
}
|
|
```
|
|
|
|
If the `authID` is invalid or expired, re-run the full [login flow](01-login.md).
|
|
|
|
---
|
|
|
|
|
|
|
|
---
|
|
|
|
[← OTP / 2FA](02-otp.md) **Next →** [Balance](04-balance.md)
|