Closed Bug 837289 Opened 11 years ago Closed 10 years ago

[tracking] Make single-page app for webpay

Categories

(Marketplace Graveyard :: Payments/Refunds, defect, P1)

x86
macOS
defect

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: kumar, Assigned: scolville)

References

Details

(Whiteboard: p=3)

Attachments

(1 file)

The payment flow (webpay) has to be as snappy as possible with as little http interaction as possible. This is to prototype a client side implementation without the server to get a sense for how to support all the variations on the user flow.
Assignee: nobody → thepotch
Priority: -- → P3
This is just a prototype so it doesn't depend on anything in the current UI (yet)
No longer depends on: 837913
Version: 1.0 → 1.2
Whiteboard: p=
Documenting my thoughts on this for the next person to inherit this bug (hi stuart!)

webpay is a good candidate for a single-page app because of the consistency of its UI, and the statefulness of the interaction.

I will attempt to explain the various UI states as a basic text adventure below. Hope it helps!


Detail Page
-----------
You are on the detail page for a paid app.
You see a button marked "0.99". 

> PRESS BUTTON
Are you logged in?
> NO
GOTO Persona
> YES
GOTO Pin Entry


Persona
-------
You are in Mozilla Persona's sign-in-flow.
Are you locked out or resetting your PIN?

> NO
Logging in...
GOTO Lobby

> YES
Logging in...
GOTO Pin Reset


Lobby
-----
You are in webpay's lobby.
Do you have a PIN?

> NO
GOTO Create PIN

> YES
Enter your PIN to continue.

> **** √
GOTO Payment

> **** X
Invalid Pin.
> **** X
Invalid Pin.
> **** X
You are now locked out. Please Sign in to reset your pin.
GOTO Persona

> FORGOT PIN
GOTO Confirm PIN Reset


Pin Confirm
-----------
You are at the PIN reset confirmation.
Are you sure you would like to reset your PIN?

> YES
Your PIN is now being reset.
Please Sign in.
GOTO Persona

> NO
GOTO Lobby


Pin Reset
---------
You are now in the PIN Reset Flow.
Please enter a new PIN

> ****
Please re-enter the PIN to confirm.
> **** X
PIN does not match.
> **** √
Resetting your PIN...
GOTO Lobby


Payment
-------
You are about to purchase this awesome app for USD 0.99.
Are you sure you would like to complete this purchase?

> YES
Sending you to our secure payment provider.
GOTO Bango

> NO
Well never mind then.
GOTO Detail Page


Bango
-----
*A sudden flash of light and swirl of wind*
*Magic happens*
GOTO Payment Complete


Payment Complete
----------------
Your Purchase is complete.

> OK
GOTO Detail Page
Yes! I want this to be the source of our test suite.
Realized I forgot the Create PIN Flow.


Create PIN
----------
Select a 4-Digit PIN.

> ****
Please re-enter the PIN to confirm.
> **** X
PIN does not match.
> **** √
Setting up account...
*Something Something SMS (kumar can elaborate)*
GOTO Lobby
Assignee: thepotch → nobody
Assignee: nobody → scolville
Whiteboard: p= → p=3
Currently looking into this and prototyping with commonplace with a view to discussing this more in the upcoming workweek.
Status: NEW → ASSIGNED
Version: 1.2 → 1.4
Blocks: 861131
Status: ASSIGNED → NEW
Blocks: 929232
Version: 1.4 → 1.5
Depends on: 957677
Summary: Prototype single-page app for webpay → Make single-page app for webpay
Blocks: 894468
How does a user select between multiple payment options if those exist before confirmation?
(In reply to David Bialer [:dbialer] from comment #8)
> How does a user select between multiple payment options if those exist
> before confirmation?

The payment choice page is out of scope for this bug.
Depends on: 963633
Depends on: 963634
Depends on: 963635
Depends on: 963637
Depends on: 963640
Depends on: 963649
Depends on: 963654
Summary: Make single-page app for webpay → [tracking] Make single-page app for webpay
Updated to P1 as SPA as a project is a P1
Priority: P3 → P1
Blocks: 941952
No longer blocks: 894468
Depends on: 968925
Blocks: 956959
Depends on: 967145
Depends on: 973684
Depends on: 973685
Depends on: 973686
Depends on: 974330
Depends on: 981054
Depends on: 982873
Depends on: 985419
Depends on: 985673
Depends on: 986006
Depends on: 986100
No longer blocks: 956959
No longer blocks: 941952
Depends on: 1001460
No longer depends on: 967145
Depends on: 1001495
Depends on: 1001498
Depends on: 1002507
Depends on: 1002510
Depends on: 1002512
Depends on: 1002515
Depends on: 1002516
Depends on: 1002519
Depends on: 1003136
Depends on: 1003218
Depends on: 1003882
Depends on: 1004419
Depends on: 1007127
Depends on: 1012725
Depends on: 1013440
Blocks: 1014075
Depends on: 1014126
Depends on: 1014130
Depends on: 1014148
Blocks: 1014149
Depends on: 1014151
Depends on: 1014168
Depends on: 1014202
Depends on: 1014204
Depends on: 1014564
Depends on: 1014746
Depends on: 1014783
Depends on: 1014793
Depends on: 1014872
Depends on: 1014876
Depends on: 1015212
Depends on: 1015266
Depends on: 1015351
Depends on: 1018934
Depends on: 1018952
Depends on: 1019573
No longer depends on: 1002515
No longer depends on: 1002519
No longer depends on: 1002516
Depends on: 1019655
No longer depends on: 1002512
No longer depends on: 1004419
Depends on: 1023375
Depends on: 1023917
Depends on: 1023954
Depends on: 1024451
Depends on: 1024592
Depends on: 1025080
Depends on: 1027126
Depends on: 1027148
Depends on: 1027158
Depends on: 1030412
Depends on: 1030796
Depends on: 1032211
Depends on: 1032308
Depends on: 1032316
Blocks: 1032845
Depends on: 1032847
No longer blocks: 1032845
Depends on: 1032845
Depends on: 1033399
Depends on: 1033433
Depends on: 1034118
Depends on: 1034165
Depends on: 1035955
Depends on: 1035958
Depends on: 1036935
Depends on: 1036974
Depends on: 1037481
Depends on: 1037513
Depends on: 1039756
Depends on: 1039808
Depends on: 1045905
Depends on: 1048583
Depends on: 1049004
Depends on: 1050544
Depends on: 1050562
Depends on: 1050591
Depends on: 1057033
Depends on: 1057459
Depends on: 1059501
Depends on: 1060586
Depends on: 1060637
Depends on: 1061923
Depends on: 1063575
No longer depends on: 1050562
No longer depends on: 1034118
Depends on: 1065563
Depends on: 1066511
Depends on: 1066698
Blocks: 1080214
No longer blocks: 1080214
There's still a few bugs, but this is so done. Yay!
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: