====== Activating your store: ProductCart Setup Wizard ======
Before you run the ProductCart Setup Wizard, make sure that you have:
* [[install|Upload the ProductCart files to your store]]
* [[install-db|Decided on which database to use]]
* [[install-permissions|Set folder permissions]]
* [[license|Obtained a valid ProductCart license]]
If you've done all of the above, load the following page, where "YourStore.com" is the domain name of your e-commerce Web site (remember that you might have renamed the //productcart// folder)
http://www.YourStore.com/productcart/setup/
{{productcart:productcart-screenshots-000.jpg|ProductCart Setup Wizard}}
===== Checklist and Recommendations =====
The ProductCart Setup Wizard consists of a few steps outlined in the window that is initially displayed to you. First you will be asked to review an "Activation Checklist", whose purpose is to make sure that you have everything you need to quickly get started with ProductCart.
Then, ProductCart will encourage you to review a series of [[securityrec|Security Recommendations]] that are meant to minimize unauthorized access to your store and store data. If you are using a MS Access database, it is a good idea to review them now since some of them involve editing the database connection.
===== Defining a database connection =====
ProductCart supports both DSN and DSN-less database connection methods. You will be required to provide a database connection string in the next step of the Setup Wizard: that connection string tells ProductCart how to connect to your store database.
The Setup Wizard will test the validity of your database connection string and only allow you to activate ProductCart if you have a valid database connection. The procedure to activate your copy of ProductCart is discussed in the next section. Below are examples of connections strings that you may use.
==== Using a DSN-less connection ====
A DSN-less connection is typically faster than a DSN connection, and it is __recommended__. There are several ways to connect to a database using a DSN-less connection. You should inquire with your Web hosting company to see which one they recommend. Here is an example connection string that will work with most servers.
=== MS SQL ===
Here “SERVER-IP” is the server’s IP address, “DB-NAME” is the name of the database, and “USER” and “PWD” are the user name and password that grant access to it:
Provider=sqloledb;Data Source=SERVER-IP,1433;Initial Catalog=DB-NAME;User Id=USER;Password=PWD;
=== MS Access ===
In the following sample connection string “c:\anydatabase.mdb” is the physical path to your database and “anydatabase” is the name of your Access database:
DRIVER={Microsoft Access Driver (*.mdb)};DBQ=c:\anydatabase.mdb
If you choose to use Access (against our recommendation), make sure to use the Database Driver referenced above, as several customers that use the Microsoft Jet Driver have run into problems, one of which is described in the following FAQ: http://www.earlyimpact.com/faqs/afmviewfaq.asp?faqid=590&source=KB.
==== Using a DSN connection ====
A Data Source Name (DSN) is basically a link on your Web server that points to a database file. If you are not familiar with creating a DSN, contact your Web hosting provider and they will be able to assist you. Many Web hosting companies have an administration area that allows you to easily create a new DSN.
Create a new DSN, give it any name you wish, and point it to the ProductCart database, which by default is located in the //database// sub-folder of the //productcart// folder. You can place the database in any other folder on your Web site, and change its same (e.g. //myDatabaseFolder/myDatabase.mdb//). Just make sure to give the folder "write" permissions, and to point the DSN to the correct file. For added security, you can place the database in a folder that does not have browser access and/or password-protect it. For more information, see the Database Security section of this document.
=== MS SQL ===
Use a connection string structured as shown below, where SQLDSN is the name you defined for the connection (e.g. "productcart"), and userid and password are the user ID and the password defined for the connection:
DSN=SQLDSN;UID=userid;PWD=password
=== MS Access ===
Use a connection string structured as follows, where AccessDSN is the name you defined for the connection (e.g. "productcart"):
DSN=AccessDSN
===== Web Server compatibility check =====
The Setup Wizard will then run a series of tests to verify that your Web server is ready to host a ProductCart-powered store, including checking the validity of your database connection string. The tests are:
* Whether or not the Web server supports “parent paths”. For more information about running ProductCart on a store that has parent paths disabled, see the corresponding section earlier in this chapter.
* Whether the correct folder permissions have been set.
* Whether a valid database connection string has been entered.
* Whether the store has one or more e-mail components installed, so you can select a supported e-mail component when configuring e-mail settings.
* Whether an XML parser exists on the server
The results page will provide information on each of the tests. If everything is ready, proceed to the next step, where you can enter your license information and finish the activation process. Otherwise, correct any problem found by the Wizard and run the tests again (e.g. folder permissions have not been correctly set, or the database connection string is invalid).
{{productcart:productcart-screenshots-002.jpg|ProductCart Setup Wizard server compatibility checklist}}
===== Store activation =====
Next is the ProductCart activation screen. The following is a description of the fields displayed on the page:
* **Key ID** \\ An alphanumeric string of characters that uniquely identifies your store. This is part of the ProductCart license that you should have received when you purchased your copy of ProductCart. Save this information for future reference.
* **User ID** \\ A temporary, random user name assigned to you. This is part of the ProductCart license that you should have received when you purchased your copy of ProductCart. You will be able to change the User ID through the Control Panel, after you have activated the store.
* **Password** \\ A temporary password assigned to you. This is part of the ProductCart license that you should have received when you purchase your copy of ProductCart, and it can be changed at any time after activating the software. Enter the same password in the Confirm Password field to ensure that you have not inadvertently misspelled it.
* **Store URL** \\ This is the path to the productcart folder that you have uploaded to your store. If you uploaded the productcart folder to your root directory, this path coincides with your store URL, e.g. "http://www.mystore.com/". If you placed the productcart folder in a subdirectory called mystore, the URL would be "http://www.mystore.com/mystore/". If you rename the "productcart" folder, remember to edit the corresponding variable in the file "includes/productcartfolder.asp".
* **Database Type** \\ ProductCart will detect the database type from the connection string. Confirm that it is correct.
* **Connection String** \\ This field will be pre-filled with the database connection string that you have entered on the previous screen, and which was validated by the Setup Wizard.
* **Pounds vs. Kilograms** \\ This option allows you configure your store to handle weights with either pounds or kilograms. ProductCart supports both. This setting is NOT easily changed once the store is live. Select the weight measuring unit that applies to your store.
Fill out the setup form completely and press the Activate button. Note that all entries are required and __case sensitive__. If the activation is successful, the Control Panel log in page will be displayed. Refer to the next section for information about logging into your Control Panel.
For security reasons, make sure you keep your License Key, User ID and Password in a safe place. The password protects unauthorized access to your store’s Control Panel. The License Key is used by ProductCart not only to uniquely identify your store, but also to encrypt and decrypt personal information stored in the store database, including credit card information (for more information about when and how credit card information is collected by ProductCart, see the Payment Options section of this manual). To reduce the changes of unauthorized access to your Control Panel, please review the security recommendations mentioned earlier in this chapter.
ProductCart automatically renames the setup folder to a new, random numeric name, if the Web server has Delete/Modify permissions on that folder. This security measure is meant to minimize the chances of a hacker attempting to gain access to the system by using the forms that are part of the Setup Wizard. Note that once the store has been activated, you can safely remove the "Setup" folder (whether or not it has been removed).