Firstly we need:
- a registration form where our users can register for an account by entering their e-mail address as the username and a password, which must contain atleast one uppercase character and one symbol (So the password input field would also require some kind of validator for the password strength).
- The registration form must also contain a Captcha check, which users must solve to be able to register.
- After the user presses the register button, they must receive an e-mail with a link to activate their account.
- Once the link is clicked, the user is taken to a login page which tells them that the account activation was successful.
- Users may only login once they activate their account using this link.
The login process must use two factor authentication (Google's OAuth 2.0) and the e-mail and password from the registration process.
Once logged in the user is presented with three options – packages of varying prices per app user.
1. user selects a business plan
2. after that redirected to a payment page
3. Enter how many licenses
4. Payment option includes 3 options
- PayPal account
- or with cryptocurrencies (Etherium and Bitcoin).
- Once the user fills out all the required data to process the payment and once the payment is processed successfully, they should be redirected to a page with details about their order. This page should also contain a unique identifier (GUID) generated after the payment, which we can use to identify the user. The user should also receive an e-mail with the order details from this webpage. Users also need to have the option to upgrade or downgrade to a different business plan at any time via a ''change business plan'' button on the website.
Users also need to have the option to change their e-mail address or password at any time. In order to change their e-mail address, users must enter their new e-mail address and current password into a form.
When changing their password, they must enter their current e-mail address, their old password and their new password to proceed. Afterwards they must receive an e-mail notifying them about the password change. Users also need to have the option to reset their password, in which case a unique password is generated and sent to their e-mail, which can then be used to login into the billing website.
The website should also contain a seperate page where users can view their past transactions, since we will use a monthly licensing plan. For that reason the website needs to track the amount of days before the expiration date of the licensing plan and should notify the user (via e-mail) about the expiration a few days prior.
The design/look of the website itself does not matter, we just require the core functionalities to work as described above.
31 freelancer đang chào giá trung bình €230 cho công việc này