2-Factor Authentication Flow
Two-factor authentication (also known as 2FA) is a method of confirming a User's claimed identity by utilizing a combination of two different components. These components may be something that the User knows, something that the User possesses or something that is inseparable from the User (phone).
In the next image we can see how the flow works in 2FA:
In this image we can see the flow process:
1. The User specify his number in your App.
2. Your App sends a Request PIN to our platform.
2.1 (optional) Te platform make a HLR request to the Operator to check if the number is valid. This step is optional, if you don't want us to make a HLR request you just have to specify in the params of the step 2.
2.2 (optional) The Operator responds immediately with the results of the HLR Lookup. This step is optional, we recommend to do this step because in case it is an invalid number all the flow will stop in the step 3, so you can save money because we don't need to send the SMS with the PIN.
3. The platform responds to your request with the results, in case we did a HLR Lookup and It was an invalid number we will let you know in this reply, in case the number is valid we will continue with the flow.
4. The platform sends the SMS with the PIN to the Operator.
5. The Operator sends the SMS with the PIN to the User.
6. The Operator sends the Delivery Report to our platform.
7. (optional) The platform sends the Delivery Report to your App. The Delivery Report tells you if the message was delivered or not. This param is optional, you can specify in the step 2 in what URL do you want to receive the Delivery Report. Check format here.
8. User enters the PIN in your App.
9. Your App sends to our platform a Verify PIN request.
10. The platform responds with the result of the verification, only one time is possible to be verified. In the step 2 you can specify expiration, number of tries...