Parking Lot
- What to use for billing - civimember, civicontribute, some other ecommerce module/tool that integrates with joomla or civicrm?
- is civicspace working on a billing tool that integrates?
- outsource to ASP Service like http://www.setcom.com ?
- AJ recommended Sourceforge as a platform
The following spec is what we have come up with, not knowing the specific e-commerce module that we may use. It includes our general requirements for ordering, tracking, and invoicing hosting accounts.
Scenario
Lanre's organization, Journalists United, has recently found a volunteer Web designer in Lagos. They have gone through the process of designing their Web site and now need someplace to host it. They've been Kabissa members for a few years, and thanks to the Time To Get Onlinematerials, knew all about the importance of an internet presence. They decide after looking into linkserve and a few other local hosting options to go with Kabissa, because Kabissa offers a free hosting account with a lot of functionality and no popup ads! They order their hosting account through the Kabissa site, and within a few days they receive an e-mail from the Kabissa team telling them that their account has been activated and that they can begin using journalists.kabissa.org.
Women's Rights Today has a large local presence in Accra. They influence national policy, and thousands of people show up for their rallies. For years, they relied on paper newsletters to communicate with supporters, but as their mailing list grows, this has become quite expensive. They have decided to launch a Web site and mailing list to keep supporters inside of Ghana, as well as partners and donors outside of Ghana, informed of their activities and how to get involved. Because of the size and prestige of their organization, they have decided that Kabissa's free option isn't right for them, and have opted to order a paid hosting account, with their own domain name - womensrights.org. After signing up, they receive an e-mail invoice, which they pay via wire transfer. Once their invoice has been paid, the Kabissa team registers their domain name and sets up their account.
Background (our current process)
Organization submits an order via the Kabissa Web site, which sends an e-mail to hosting@kabissa.org+. We then log into ModernBill.+
- If their membership is active, go to right hand box, "Stats/Action"
- Click "Add" next to Domains, and add requested domain/subdomain name.
- Click "Add" next to Packages, and select either Starter, Standard, or Power Account package from drop down list. Choose Annual billing, and leave status as "New"
- Then, click "Add" next to Account Details, and associate the domain name with the package order.
- If this is a Starter Account (no charges) or a Paid Standard/Power account
- Set up the account on our servers
- Go back to Modern Bill and the client record
- Go down to the Package Order
- Click "edit" next to each and manually change status from "new" to "on"
- Click edit next to Username and Password and set with the correct login info
- Go to e-mail templates and select "Welcome email DELETE ME" and the starter package. Edit e-mail as necessary. Send to primary and secondary e-mail addresses.
Flowchart
Home > Login screen > Internet services > Order hosting > Hosting order form > Confirmation page
Home > Internet services > Login screen > Internet services > Order hosting > Hosting order form > Confirmation page
Open Question:Should the Internet services page link directly to the hosting order form? Or will it stay as is, with an intermediary screen?
Detail
Administrative contact logs into the Kabissa site, and then navigates to the Hosting order formand selects one or more "hosting products." There are several different options for hosting, which are subject to change (for example, Web site hosting, mailing lists, e-mail boxes can be ordered together or a la carte).
- The sign up form is automatically populated with the Organization Name and the administrative contact name and e-mail address.
- They will have to select the products they wish to order and fill in the desired domain name.
- When they submit the form, they will be taken to a confirmation page saying that they have successfully submitted their order and will be hearing from the Kabissa team soon.
- The confirmation page will also include a link directly to the Add Peoplepage, where the administrative contact can designate one or more technical contacts to also receive correspondence about this hosting account. The technical contact will have to confirm this relationship, just as any additional contact people do.
- A confirmation e-mail is sent to the administrative contact and technical contact if designated.
Technical Note:It would be nice to have some way of checking the selected domain name automatically, through whois for domain names and against the Kabissa member directory for subdomain names. If a domain name is unavailable, an error message will appear asking them to choose another.
Once the form has been submitted, the organization's record in the database should be updated, including the product(s) ordered, and the order status (in this case, "new"). For each order, should record the order date and the amount owed (if any) as separate, searchable fields. There will be a lag time between the order date and the activation date, so there should be separate activation date andend date fields. The activation date and end date will most likely be one year apart, but can be overwritten by a Kabissa team member. .
When the Kabissa team logs into the Member Database Backend, they should be able to easily see a list of organizations with new orders.
- If the new order is for a free product (such as subdomain hosting), they will set up the hosting account. When it is active and working properly, the team member will return to the organization record and fill in the activation date and renewal date, and change the order status to "Active". They will then record any hosting usernames or hosting passwords associated with the new hosting account and send the administrative contact and technical contactan e-mail message (using a template e-mail) with this information. All of the actions taken should be recorded automatically in the organization's history (for example, Date: September 20, 2006; User: Liz Trautman; Action: changed CLEEN's activation date.)
- If the account is for a paid product (such as one year of domain hosting, at a cost of US$100), the Kabissa team member will send an e-mail invoice (using a template e-mail) to the administrative contact and technical contact. They will also generally check an "automatic renewal" checkbox, which will indicate that one month before the end date for the product is reached, the system should automatically create and send another invoice (see Spec 6 - Hosting Renewal). These two actions can happen on an individual organizational record level, or as a mass action if there are several paid hosting accounts ordered at once. There are three methods of payment: credit card via paypal, check drawn on a US bank account, wire transfer. Generally there is a significant lag time (at least 2 weeks and up to several months) between sending the invoice and receiving payment. When the first invoice is sent, this should be recorded in some way so that it is easy to generate a list of organizations to whom one, two, or three invoices have been sent - see spec 6 for more discussion.
- Sometimes, an organization cancels their order instead of paying their invoice. Kabissa team should be able to delete the order or invoice, or somehow mark it as cancelled so that these cancelled orders do not show up in a list of unpaid invoices, for example.
- When the organization makes a payment, a member of the Kabissa team will log into the Membership Database Backend and record the payment and the date it was made. They will send an e-mail receipt (using a template e-mail) to the administrative contact and technical contact.
- A history of invoices, payments, products ordered should be visible to the administrative contact and technical contact if they log in on the front end (this information should not be visible on their public profile, or to unauthorized staff associated with the organization).
- Once the payment has been made and receipt generated, the Kabissa team member will set up the hosting account. When it is active and working properly, the team member will return to the organization record and fill in the activation date and renewal date and change the order status to "Active". They will then record any hosting usernames or hosting passwords associated with the new hosting account and send the administrative contact and technical contactan e-mail message (using a template e-mail) with this information. All of the actions taken should be recorded automatically in the organization's history (for example, Date: September 20, 2006; User: Liz Trautman; Action: changed CLEEN's activation date.)
Technical note: Kabissa team should be able to edit any of these fields; for example, someone may order a new domain name, or we may offer a credit of six months of free hosting, and need to change the renewal date.
Open Issue: Should unpaid accounts also have activation/renewal dates? We don't currently have a process for renewing Starter Accounts, etc.