I need a freelancer to build the following software in CodeIgniter:
1. Use a CI controller that creates a SOAP client for SOAP functions/calls provided by a 3-rd party website (I already have this part)
2. Create a table in MySQL that maps functions implemented in the soap client with new names
3. Create a SOAP server that :
a) lets customers use function names as defined in .2 (above)
b) writes logs in mysql table for each SOAP call
c) Since the SOAP calls should be billed, deduct amount from balance if user is prepaid, or add amount to balance if user is postpaid
4. Create the mysql tables defining users/passwords, account type (prepaid/postpaid), account balance, and Service Group they belong to
5. Create the mysql tables defining service groups . Service groups tables will have :
- markup (what amount to add on top of prices)
- minimum price per contracted service (if price obtained from calling the SOAP client is below defined minimum price after the markup is applied, then increase the price to the minimum price
- define billing period (for example if I set 1 day, then each day the amount to be paid/month , divided by 30 days in a month, is added to balance - if postpaid, or substracted from balance -- if prepaid)
6. Create script to be run daily and monthl decreasing balance for users
7. Create example implementation for a 3-rd party that should do the following functions:
- search through services (i'll explain to winning bidder what this is) by country and by region
- purchase new service
- retrieve list of purchased services
- remove service from list (cancel subscription)
- retrieve account status
- retrieve balance
Example implementation should be done using nusoap and simple PHP functions , no CI required here.
You are not required to do webdesign, CI scaffolding or simple HTML forms for demonstration purpose should be enough. (no css/images/design whatsoever required)
More explanation below:
What I am trying to accomplish is a so-called SOAP proxy. I have wholesale prices for a certain service from a certain website (I'll give the info and a testing account to the winning bidder), and I'd like to automate the resell process. Since I'm expecting to make a profit out of this, this is why you will implement users and service groups. Users will be in a table and one of the keys in that table will specify which service group they belong to. Service groups will define the markup price (how much a customer will pay on top of my buying price), a minimum price (applied if my buying price plus my markup is less than the defined minimum price), and billing schedule information . Pricing I get from the wholesale website is per month, per subscribed service, and you will store that information (along with details about that service) in a table called services or subscribed_services, or whatever name you think is appropriate. You will then apply the markup function, along with checking for minimum price on the newly purchased service.
Then the billing cycle/schedule -- since pricing from the wholesale website is per month, I'd like to have these options:
---30 day cycle----
If user account is prepaid: debit his account for the per month amount + setup fee at the time he purchases the service, then he is good for a whole month. Next month, bill that specific service along with whatever other services he is subscribed to on the same date each service is maturing by one more month.
If user account is postpaid: increase balance on his account at the time of purchase , then increase it once more when you bill it at the end of the month along with whatever other services he is subscribed to
--- 1 day cycle : only applies to postpaid: increase balance each day, for amount of services value/30 for each day.