ASP.NET 2.0 Shopping Cart Software ("ShoppingCart") Installation Guide

http://www.imflab.com

1. Getting Started

1.1 License Agreement
Read the End-User License Agreement (EULA_IMF.txt) for ShoppingCart.

1.2 System Requirements
This ShoppingCart software is attended to run on ASP.NET 2.0 capable web server. If you don't have one already, you may rent it here.
Make sure your web server has .NET 2.0 active, most of them still use .NET 1.1 as default setting. You may change it using user control panel on web server.
ShoppingCart works with all known browsers which support cookies and javaScript like IE, Mozilla Firefox, Netscape Navigator, Opera, Maxthon, etc.
Credit card authorization is done at 2CheckOut.com server. You have to open an 2CheckOut.com account.

1.3 Known limitations
Online page editing (in WYSIWYG editor) and color scheme changing requires Internet Explorer 6.

1.4 Demo version limitations
Saving functions are disabled.
Admin account can not be removed from Administrators group.
Default vendorId is 123.
Absolute path doesn't show.

 

2. Installation

2.1 Upload files

Upload all files and directors from wwwroot directory to your web server and keep directory structure (using an FTP client program, like www.ftpvoyager.com). You must consult web server's technical personal, or it's documentation where to upload ecomm.mdb database, located in wwwroot/App_Data/. Usually it should be left where it is, and it's location on server is http://www.yourdomain.com/App_Data/ecomm.mdb. App_Data directory is protected from unauthorized access. And the most important thing is to give write permission to App_Data directory. It's usually done through user control panel on web server.
Other web servers require you to upload database into specific location, different from App_Data and that directory already has write permission enabled.

2.2 Connection string

You have to let the program know where your database is. To do it you have to edit (notepad will do the job) wwwroot/web.config file and find string: D:\..[some path]...\App_data\ecomm.mdb. You have to replace it with string which represent absolute location of your database on web server. To find the absolute path there is help: once the files are uploaded to web server and you have activated ASP.NET 2.0 scripting on web server, you may open your utility page : http://www.yourdomain.com/utility/default.aspx . It will show text box with Absolute path string of utility/default.aspx page. Replace D:\..[some path]...\App_data\ecomm.mdb string from wwwroot/web.config with this new one but modify it to point to your database, not the utility/default.aspx file, save changes. Next step is to upload (again) modified wwwroot/web.config to web server's root and replace the old web.config file. Now you are ready to open the main web page: http://www.yourdomain.com . If you get Error Detected message, your database is not writeable. Either you didn't give write permission to App_Data directory or you didn't enter correct absolute path string. If you continue getting error message, you may edit web.config file, search for "customErrors", it's value mode="On" and change it's value to mode="Off" . Upload web.config to server. Open the page and if any error, you will get detailed description of what is wrong.

 

3. ShoppingCart setup

Settings may bee accessed from administrator's account. In the following text we assume you are logged in as administrator.

3.1 Create Administrator's account
New ShoppingCart has one default account with administrator's privileges, username: admin , password: admin. You may use this account to set up new administrator's account as described in the text that follows. Open your homepage (http://www.yourdomain.com). Go to  Login -> Register new user and create your new account. Now you may login with your newly created username & password to test account. Log out.
Login with username: admin, password: admin. New panel Administration appears on the left side. Go to Change password link and change admin's password to make account secure. Click AdminSetup link on the Administration panel. On the page that opens enter your newly created account's username and click Add. To remove admin username from administrators group, enter admin and click Remove button. Users which are not in administrators group can't see Administration panel and can't access administration options. There must be minimum 1 administrator. The program won't let you remove username from administrators group if there is only 1 username. You may add as many usernames as you like to administrators group.

3.2 ShoppingCart settings
Go to AppSettings link. Description of fields:

UniqueVisitors: counter that shows number of unique visitors. Once visited your pages, visitor is marked with cookie. Do not edit this field.
DemoProducts: enter ProductID of demo products which all users, registered or guests, may download (demo files). To enter more than one, separate them with (;) sign. Files must be placed into /App_Data/downloads/ directory. Example: 122;34;123;54. You will learn how to find ProductID later under Products setup.
DownloadedFiles: shows how many times files were downloaded. Format: filename1=x times;filename2=y times; ....  Don't edit this field.
CurrencySign: enter your currency sign.
CurrencyUnits: not used in program, you don't have to change it.
WeightUnits: weight units.
DefaultCountry: default country that will be set at 'Checkout' page.
SmtpHost: SMTP host used to send password recovery messages and messaged from 'Contact' page.
SmtpUserName: yourSmtpUsername.
SmtpPassword: yourSmtpPassword.
ToEmailFromWebForm: admin@yourcompany.com, email address where messages from 'Contact' page will be sent. Your visitors can't see this email address. The purpose is to avoid spam emails.
FromWebAddress: www.yourcompany.com, this web address will be sent in the password recovery email message body.
FromEmailAddress: lostpassword@yourcompany.com, This address will appear as 'From email' in the password recovery email message. Doesn't have to be an existing address.
GuestCartValidHours: keep products in shopping cart for given amount of time, if not checked out, products will be removed from cart. Guests.
MembersCartValidHours: keep products in shopping cart for given amount of time, if not checked out, products will be removed from cart. Registered members.
KeepAlivePages: page(s) which will be downloaded in regular intervals to keep your ASP.NET application alive on server while it's idle. The best result is achieved if you have 2 web servers and make 1st server to load page on 2nd server and 2nd server to load page on 1st server. Enter multiple pages separated by (;) sign. Example: http://www.pageone.com;http://www.pagetwo.net . In our
ShoppingCart we have keepalive.aspx page which should be used. You should not download default.aspx becouse it would increment UniqueVisitors counter on each download.
KeepAliveSeconds: time intervals in seconds to reload KeepAlivePages. Set 0 to turn it off.
TransactionUrl: payment routine page. For 2Checkout.com it is: https://www2.2checkout.com/2co/buyer/purchase , do not change it.
VendorID: your vendor number. 2Checkout.com assigns new vendor number when you register your new 2Checkout.com account. 2Checkout.com recognizes you by your vendor number.
SecretWord: Secret Word that you have to set up at https://www.2checkout.com/2co/admin/look_and_feel , at the bottom of that page. Once your customer checkout from your page and make payment at 2Checkout.com he/she is redirected back to your page sending encrypted info about transaction to your ordercomplete.aspx page: success or fail. SecretWord is used to decrypt data and verify if payment confirmation really came from 2Checkout.com .
DemoMode: set it to Y to enable demo mode of your 2Checkout.com account. In demo mode you may test your pages and checkout.

3.3 Shipping rates settings
Go to
ShippingEditor link.
You may add/remove/change data. If 'IsActive' check box is checked, shipping rate is visible at 'Checkout' page.
RateName: name which is visible to customer at 'Checkout' page.
StartPrice: start price of service, not depending on weight.
Price (price / weight): price per 1 weight unit.
Cart total shipping price = StartPrice + ( Price * TotalCartWeight). Total cart weight is shown at 'My Cart' panel.
It is strongly advisable not to delete shipping rates, instead make it inactive by unchecking 'IsActive' check box. By doing so you will be able to review some old orders which used the shipping rate that is no longer available to customers.

3.4 Top Menu settings
Go to EditTopMenu link.
MenuItem: link text which is visible to user.
Link: location where link points to. This field may be used in 3 different ways: (1) if empty, link points to 'default.aspx?page=MenuItem value' (2) enter existing page name, example 'contact.aspx', link points to 'contact.aspx' page (3) enter dynamic page address 'default.aspx?page=someName', exaple: default.aspx?page=mynewproduct. Once link from Top Menu clicked, new dynamic page is created in database. Dynamic pages may be edited online using built in WYSIWYG editor. To edit page in WYSIWYG editor, click link from Top Menu to open page and click EditPage link from Administration panel. WYWIWYG editor opens in popup window. Images to use with WYSIWYG editor must be uploaded to images directory using an FTP program. Once editing finished you have to push 'save' icon in WYSIWYG editor to save changes permanently. Important: default homepage which opens when user type 'www.yourpage.com' is acctually 'www.yourpage.com/default.aspx?page=home'.
IsActive: if checked, item is visible to user.
Delete button: delete row. Operation can't be reversed. It is advisable to make item inactive, not to delete it permanently. (uncheck IsActive box).
If you make any change you have to click 'Update All' button to save changes.

3.5 Categories settings
Go to EditCategories link.
Products categories. Add/change/remove category name or make it active/inactive.

3.6 Change color
Go to ChangeColor link.
Enables you to change color scheme for your pages.

3.7 Products setup
Click some product category from Online Shop panel. List of products within that category opens. Click Edit Products check box from Administration panel to make it checked. Additional buttons appears on the products list, ADD, DELETE, EDIT. You may add new product to that list (category), delete/edit existing products on the list. Clicking Edit button opens new page (admin/ProductEdit.aspx) where you may setup all product data.
Fields description:
ProductID: unique product ID in your database. Assigned by program when new product added.
Product Name: appears on product list. Must be assigned.
File To Download: if you sell software, enter one or more file names which users may download, connected with the product. File names must be separated with (;) sign, example: cartv1.zip;cartv11.zip . Files must be uploaded to App_Data/downloads/ directory. Files are protected from unauthorized access. Once user buy product, files are assigned to download list for his/her account. User must be logged in to access that files. Only demo products and it's assigned files are accessible by everyone (AppSettings link, DemoProducts field).
Product Image (small and large): images must be uploaded to images/productimages/ directory before you may select it (using an FTP program) .
Unit Cost: price of one product.
Discount Price: enter discount price value, or leave it 0 if there is no discount.
Description and Detailed Description: click Edit button to edit it using WYWIWYG editor.
Weight: product weigh, used to calculate shipping cost.
Units In Stock: add at least 1 unit to enable users to add it to shopping cart. Not fully implemented yet.
Is Active: if checked, product is visible to users. It is advisable not to delete products, instead make them inactive by unchecking this check box.
The rest of fields are not so important and may be left at default setting.

3.8 Orders monitor
Go to OrdersMonitor link.
Click OrderID number to read details about order. Once order is shipped, you have to mark it 'shipped'. Select row by clicking OrderID number than click Set Shipped button. It adds current date and time. User may check status of his/her order from 'My Orders' link. Tables are sortable, increasing or decreasing order, by clicking column name.

 

4.  2CheckOut.com settings
You have to setup where will 2CheckOut.com return the user after payment was made.
Log into your 2CheckOut.com account. Open page: https://www.2checkout.com/2co/admin/look_and_feel
Scroll to the bottom of the page. There is field Secret Word. You have to enter the same secret word as in ShoppingCart settings-> AppSettings, field SecretWord. It is used to decrypt data sent by 2CheckOut.com to your page after an transaction has been made. Than move up an find "Approved URL". In the text box bellow enter: http://www.yourpage.com/ordercomplete.aspx , where you have to replace 'www.yourpage.com' with your domain name. Enter the same link (http://www.yourpage.com/ordercomplete.aspx) for "Pending URL" too. Move up again and there is drop down list "Direct Return" with Yes and No values. This ShoppinCart works with both settings so it's no matter, which one you choose. 'ordercomplete.aspx' page accepts information sent by 2Checkout.com, decrypts status of transaction and saves it to database. User may check status of his/her order from 'My Orders' link. If transaction is valid and  if product has downloadable files, files are added to user's account immediately for download.
Click Save Changes button at the bottom of the page. Other settings are not important for this ShoppingCart to operate.

 

5. Test your web shop
You are ready to make your first transaction. But make it in demo mode (AppSettings: field DemoMode set to Y ).  In demo mode you may test complete payment process, even enter non-existing credit card number and watch what happens when transaction is confirmed. No funds will be charged in demo mode. When finished testing just clear Y from DemoMode field.
 

6.Changing panels text
If you decide to change the title text of Welcome, Search Site and Online Shop panels you may edit users.master file inside wwwroot directory, Windows Notepad will do the job. Find the text and replace it with your custom text. Upload modified users.master file to web server.