The happy path is solid and on-brand, but the flow ships without a failure state and shows the amount in two different formats between capture and confirmation — the documented driver of the 23% confirmation drop-off. Two P0s block launch; the rest are high-impact polish. Live Figma inspection was used.
Is the amount shown in the exact same format at capture and at confirmation?
↳ research §1 “if the number looks even slightly different I start over” · DESIGN.md §3 plain-language · Figma 10:220 — the documented driver of the 23% confirmation drop-off.
Where is the failure state — the flow ends at Success, but the PRD requires a reason and a retry path?
↳ PRD §4 failure state + retry · research pain #3 “it just said error” · no error screen in the Figma inventory.
Does the Confirmation CTA spell out the consequence of an irreversible action?
↳ content.md “Send AED 250 — this can’t be undone” · DESIGN.md §3.1 consequence language.
What does a user see while the transfer is pending — is there a loading state, or does the screen just hang?
↳ Figma 10:230 Confirm has no pending/loading variant · DESIGN.md §2 five-states rule.
Could the saved-recipients empty state invite the first transfer instead of showing a blank list?
↳ Figma 10:210 Recipients empty variant is blank · research §2 first-time users hesitate.
PRD §4 requires a failure state with a reason and a retry — where is it in the design?
↳ PRD §4 “every transfer can fail; show why and offer retry” · not present in the Figma inventory.
Confirm screen: no error or pending state — what happens when the network drops mid-transfer?
↳ Figma 10:230 Confirm · DESIGN.md §2 empty/loading/error/recovery required on every screen.
Is there an offline state for a flow people use on the move?
↳ research §3 41% of transfers happen on mobile data · no offline variant in the inventory.
Does the primary CTA name the consequence — “Send AED 250” — rather than a bare “Confirm”?
↳ content.md consequence language · DESIGN.md §3.1 say what the button does.
Can we even measure the confirmation drop-off if the failure path emits no event?
↳ analytics.md only transfer_success is tracked · PRD §6 success metric is completion rate.
Does the design answer the top trust concern — “did the money actually arrive?”
↳ research §1 “I screenshot every transfer because I’m never sure it went through.”
For Voice Money Transfer (Botim wallet, high-trust UAE remittance flow): design the transfer-failure screen. It needs a plain-language reason the transfer failed, a primary “Try again” action, and a secondary path to support — matching the cream/ink/acid system and the consequence-language voice in DESIGN.md §3.1.
For Voice Money Transfer: redesign the amount display so the value is shown in one identical format at capture and at confirmation (same digit grouping, same currency placement, same decimals). Add a pending/loading state on Confirm so the screen never just hangs while a transfer is in flight.
For Voice Money Transfer: design a post-send receipt that answers “did the money arrive?” — show status, a reference number, and a clear arrival estimate, so users stop screenshotting every transfer for proof.