41 lines
2.0 KiB
Markdown
41 lines
2.0 KiB
Markdown
# PayMV QR (Receive)
|
||
|
||
> ⚠️ **Work in progress.** Thijooree does not call this endpoint yet. It generates Fahipay QRs locally, and the Fahipay app currently rejects those as **"Invalid QR"**. See [PayMV QR Format → Fahipay](../thijooree/18-paymv-qr-format.md#fahipay-work-in-progress).
|
||
|
||
Fahipay's app does **not** build its receive QR on the device. Its `PayMVQR` screen asks the server for a finished card image and displays it. Found by decompiling the app (v2.0.2, Hermes bundle), **not yet confirmed with a traffic capture**: request headers and the exact response shape are unverified.
|
||
|
||
---
|
||
|
||
## Endpoint
|
||
|
||
```
|
||
GET api/app/qr/?lang=<lang>&type=p2p&amount=<amount>
|
||
```
|
||
|
||
The app also has a `POST api/app/qr/` variant, sent as form data with `type=p2p`, `lang`, `version`, `platform=app`, `amount` and `device[...]` fields.
|
||
|
||
## Response
|
||
|
||
The app reads the image from the first of these fields that is present: `qr_image`, `qr`, `image`, `qr_url`, `qr_code`. The value is either an `http…` URL or raw base64, which the app prefixes with `data:image/png;base64,`. The payload text is read from `qr_code_text` / `qrCode`.
|
||
|
||
## The card image
|
||
|
||
A 1240 × 1322 PNG:
|
||
- Blue `#005DA3` card with a 6 px border.
|
||
- The square Fahipay icon plus the "FahiPay" wordmark top-left, and "PayMV QR" top-right.
|
||
- A blue panel holding the holder's name and the QR.
|
||
- The reference (`62→05`, e.g. `P2KVTPYL4E`) printed vertically in blue in the white margin right of the panel. The amount is not included in it.
|
||
- A "MALDIVES NATIONAL QR" footer.
|
||
|
||
Thijooree reproduces this layout in `PayMvQrFragment.renderFahipayQrCard()`; see [PayMV QR Screen](../thijooree/11-paymv-qr-screen.md#fahipay--renderfahipayqrcard).
|
||
|
||
Server-issued payload fields that differ from a plain PayMV QR: `60` = `LD` + 4 digits, `62→05` = `P` + 9 chars, `62→08` = `PAYMENT`, and `54` = `***` when there is no amount. Full samples are in [PayMV QR Format](../thijooree/18-paymv-qr-format.md#real-receive-qrs-reference-samples).
|
||
|
||
---
|
||
|
||
|
||
|
||
---
|
||
|
||
[← Saved Favourites](07-contacts.md)
|