WebAPI/WebPayment/Multi-SIM: Difference between revisions

no edit summary
No edit summary
 
(3 intermediate revisions by 2 users not shown)
Line 2: Line 2:
* [https://wiki.mozilla.org/WebAPI/WebTelephony/Multi-SIM#Multi-SIM_Scenario Multi-SIM scenario]
* [https://wiki.mozilla.org/WebAPI/WebTelephony/Multi-SIM#Multi-SIM_Scenario Multi-SIM scenario]
* [https://wiki.mozilla.org/FirefoxOS/DSDS DSDS]
* [https://wiki.mozilla.org/FirefoxOS/DSDS DSDS]
See the [[WebAPI/WebPaymentProvider|WebPaymentProvider]] for how one would access multi-SIM data.


== Payment User Stories ==
== Payment User Stories ==
Line 44: Line 46:
In order to have a full support for multi-SIM payments where:
In order to have a full support for multi-SIM payments where:


* The user is always aware about which one of her SIMs is used for payments. Even if this SIM is not in the device!
* The user is always aware about which one of her SIMs is used for payments if the SIM is in the device.
* We always authenticate the correct SIM that is used for payments.
* We always authenticate the correct SIM that is used for payments.
* We know when to remove the payment session to trigger a new authentication flow.
* We know when to remove the payment session to trigger a new authentication flow.
Line 59: Line 61:
* If there is no record of a previous payment, a new authentication flow needs to be triggered. The payment provider will need to process the list containing the services information in order to set the correct SIM for payments. The decision algorithm could be something like [http://www.gliffy.com/go/publish/image/5175268/L.png this].
* If there is no record of a previous payment, a new authentication flow needs to be triggered. The payment provider will need to process the list containing the services information in order to set the correct SIM for payments. The decision algorithm could be something like [http://www.gliffy.com/go/publish/image/5175268/L.png this].
** Once the payment provider selects the appropriate SIM it will set the serviceId associated with this SIM via '''mozPaymentProvider.paymentServiceId'''.
** Once the payment provider selects the appropriate SIM it will set the serviceId associated with this SIM via '''mozPaymentProvider.paymentServiceId'''.
** Note that in case that the (not silent) SMS flow is required, we will need to ask the user for her MSISDN and this could be an MSISDN from an external SIM. In this case, the payment provider will set the service ID to null. We might be able to do it better and listen for incoming auth SMS. If the SMS is received in the device, we can set the serviceId of the receiving SIM as the one selected for payments. To do this, we will need the payment provider to specify the number from where the auth SMS is sent via '''mozPaymentProvider.observeAuthMessage(number)'''.
** Note that in case that the (not silent) SMS flow is required, we will need to ask the user for her MSISDN and this could be an MSISDN from an external SIM. In this case, the payment provider will set the service ID to '''null''' and will need to call '''mozPaymentProvider.observeSilentSms(number)'''. If the SMS is received in the device, we can set the serviceId of the receiving SIM as the one selected for payments.


* If there is a record of a previous payment and the payment serviceId is null, it means that the payment was done with an external SIM and so we need to allow the user to remove the payment session to retrigger the authentication flow with another SIM.
* If there is a record of a previous payment and the payment serviceId is null, it means that the payment was done with an external SIM and so we need to allow the user to remove the payment session to retrigger the authentication flow with another SIM.
Line 66: Line 68:


[https://bugzilla.mozilla.org/show_bug.cgi?id=938993 Bug 938993] will track the client side changes required for this and [https://bugzilla.mozilla.org/show_bug.cgi?id=942361 Bug 942361] the payment provider changes.
[https://bugzilla.mozilla.org/show_bug.cgi?id=938993 Bug 938993] will track the client side changes required for this and [https://bugzilla.mozilla.org/show_bug.cgi?id=942361 Bug 942361] the payment provider changes.
[[Category:Web APIs]]
Confirmed users
1,340

edits