This project is about creating a web based service which main features include the following:
* Upload data from CSV file to populate mySQL DB
* Download data from mySQL to CSV
* List, update, add and delete records from the DB
* Capture manually input data and process/store it
* Upload files and check their size and format
* Generate text files and ZIP files automatically
* Upload funds via integration with Nochex online credit card payment
* Produce PDF files
In addition to PHP and mySQL skills, you need a good control of text strings manipulation.
More importantly, the design and user experience should be enjoyable and intuitive to encourage service adoption and success.
## Deliverables
This project is about creating a web based service which main features include the following:
- Log in and Sign up
- Displaying static data as well as rollover help text
- Upload data from csv file to populate mySQL database
- Download data from mySQL to csv file
- List, update, add and delete records from the database
- Capture input data and process it according to user selected rules
- Upload files and perform format and size verifications
- Generate a text file based on previous files uploaded and create a zip file automatically
- Interface with external services via HTTP and perform tasks as scheduled by users
- Upload credit via integration with Nochex online credit card payment
- Manage customers’ credit (i.e. adding funds uploaded and deducting money according to their online use of the service)
- Produce financial receipts and statements according to the customers’ activity and generate corresponding PDF files
In addition to PHP and mySQL skills, you need a good control of text strings manipulation, file upload with format and size verifications, creation of text and ZIP file with and according to uploaded data and email sending.
More importantly, this service is targeted at non technical users and both the design and user experience should be enjoyable and intuitive to encourage service adoption and success.
Also, whilst this interface will initially be available only in English, it should be designed so that it can easily be implemented in multiple languages with selection from the home page. Also, a cookie could store the last language used for the service.
Furthermore, it should be easy to implement a different skin if required for OEM type of service.
If you do not have previous experience in all of the above and serious references in terms of user experience / user interface please do not consider this project.
Below is a more detailed list of the requirements:
The application needs to manage 3 types of entities: Companies, Users and Data where the Company has 1 to n users and users manage data.
Home page
- Static content describing the service
- Sign-up feature allows to create a new account
- Log in feature allows to log into an existing account
- Forgot password allows to retrieve or reset the password corresponding to a given email address
- Links to FAQ, T’s & C’s, Privacy, Prices and Contact us form (with captcha)
Main page
Once logged in, the user will be on the main page where he can access the following:
- Account
- Contacts
- Process
Account page allows:
- Company details update
- User details update (my details only)
- Add user, List users -> allows to Edit or Delete a user
- Upload money
- Purchase Dynamic Id Option (can disappear once purchased)
- Financials (receipts and campaign statements)
Contacts page allows:
- Import contacts (from CSV file) into mySQL (involves generation of additional fields)
- Manage contacts (List, Edit, Add, Delete and Sanitize)
- Export (to CSV file) from mySQL (involves suppression of some fields)
Process page allows:
- Manage Processes: List, Edit and Create
o A process can be in 1 of 4 states: Draft, Pending, Executed and Cancelled
? Draft is while the process is being defined
? Pending is once defined and waiting to be executed
? Completed is once executed
? Cancelled is when cancelled by system due to lack of credit
- Define content
o Content involves text capture and string manipulation or data upload and zip file generation
- Define target list (segment)
o This is the subset of data from the database as per segmentation rules defined by the user
- Execute
o Execute the process subject to credit availability (implies calculating the cost of the process) and produce corresponding financial statement in PDF form (to be made available in the financial section of the corresponding Company
o Execution means submitting the data to a third party service provider. Procedure is fully documented and already available in PHP
Admin page allows:
- Management of system parameters, pricing table, discount levels, suspend/release a company
At this stage, we are not keen to disclose more details but a comprehensive specifications document will be released to the bidder awarded the project. You may ask any questions you have but please do not waste your time and ours if you do not have the relevant experience.