James H. Zisch - Computer Services

Solutions : Ecommerce : Shopping Cart

 

Shopping Cart

PRICE:  $249.99 (subject to change without notice)

Description
Requirements
Usage
FAQs

Description

Shopping Cart provides an Ecommerce solution supporting online credit card, check, telephone, FAX, mail and PO (Purchase Order) order processing. This solution keeps you in control of order processing eliminating third party merchant portals and costs associated with them. It provides easily examined audit trails to refine your sales policies and procedures helping ensure success. Checkout functions can be easily customized to work with all the popular ecommerce portals; such as PayPal!

Features

  • Compatible with all web browsers
  • Supports:
    • online Credit Card orders
    • Telephone orders
    • FAX orders
    • Mail-in Check orders
    • PO (purchase orders) orders
  • Customizable Templates for all user pages
    • Online Shopping Cart
    • Customer Information Entry
    • Customer Confirmation
    • Check Order
    • FAX Order
    • PO Order
  • Configurable Sales Tax by state and Shipping & Handling (per item or as a percentage of sale item w/minimum)
  • Banner Affiliate System click-thru referral credit processing
  • Carts retention across user sessions with cart contents stored on server
  • Customer data (non-sensitive) retention with priming for return customers
  • Supports Secured Socket Layer (SSL)
  • Customer exclusion based on e-mail domain (integrates with Order Processor "Exclude E-mail Domain" function, or domains may be added manually) for reduction of bad orders from known problem domains.

Functions

  • Add Item (automatically generated by JHZ-CS Page Generators or may be added manually to static pages)
  • View Cart
  • Change Item Quantity
  • Delete Item
  • Check Out
    • Online Credit Card Order
    • Check Order
    • FAX Order
    • PO Order
  • Delete Cart

Shopping Cart Templates

All the Shopping Cart Templates are fully customizable. Shopping Cart is pre-configured to support Online Credit Card check out, PO (Purchase Order) check out, Mail-in orders by Check, and FAX ordering. Each check out function uses a separate template allowing customization for speific policies and procedures. They are simple HTML pages with special markup variables and directives that are easy to work with using any HTML authoring tool or text editor.

Customer Information Entry template

The "Customer Information Entry" template has built-in field validation including credit card number validation check for Visa, Mastercard, American Express and Discover (Novus) for online transactions. When a customer enters invalid values, error information is included when the "Customer Information Entry" page is redisplayed.

In addition to automatically generated "Order Numbers" being displayed, customer's remote host and IP addresses are displayed discouraging fraudulent sales activities. And, customer "Billing Address" is automatically transferred to "Shipping Address" when the customer clicks the "Same As" check box with Javascript® embedded in this template.

When the customer clicks "NEXT", the customer's information is validated. If errors are detected, the page is redisplayed with informative error messages telling the customer which items require correction. When the information has been successfully validated a "Order Confirmation Page" is displayed.

"Order Confirmation Page" template

When the customer confirms their order, an "Order Confirmation E-mail" is sent to the customer and an "Administrative Sales Notification E-mail" is sent to your sales department. Both e-mails also use customizable templates. Orders are retained on the web server for later retrieval and processing providing back-up assuring data integrity and helping to prevent loss of important sales data resulting from system failures.

Web Server Requirements:

  • Operating Systems Supported: Unix, Linux, Macintosh OS X® and Windows®
  • HTTP 1.x with CGI (Common Gateway Interface) PERL 5.x (check with your ISP or Server Administrator; this requirement is typically supported on most systems)
  • SENDMAIL (supported on most all Unix/Linux platforms), or PERL NET:SMTP (available from CPAN) (commonly used on Windows® server platforms) with an SMTP system pre-installed and configured
  • SSL (Secured Sockets Layer) optional, but strongly recommended.
  • Optional: For configurations using an RDBMS (Relational Database Management System) data source requires a supported RDBMS, the PERL DBI module and the RDBMS specific DBD module to be previously installed and configured

Shopping Cart
Installation and Usage

FILENAME: sc.html

DEPENDENCIES:

ec.pl - Ecommerce configuration and common logic modules (see: ec.html)
jhzcs.pl - JHZ-CS configuration and common logic modules (see: jhzcs.html)
IID (Item Information Dataset)
dbmparms.txt (SQL RDBMS IID mapping component)
dbmtabs.pl (SQL RDBMS IID mapping component)
unacc_edomains.pl (email domain exclude list component)
unacc_edomains.txt (email domain exclude list component)

REQUIREMENTS:

Logic Modules

sc.pl - common configuration and logic module
add.cgi - add item to cart
cart.cgi - display cart CGI
cart.pl - display cart logic module
chg.cgi - change cart item quantity (and remove item qty=0)
ckouta.cgi - check out process step 1
ckoutb.cgi - check out process step 2
ckoutb.pl - check out process step 2 (logic module)
ckoutc.cgi - check out process step 3
del.cgi - delete cart
order.cgi - offline ordering (FAX, CHECK, PHONE & P.O. orders)
cadmin.cgi - back-end cart administration

Static Pages

closed.html - shopping closed page
ns.html - browser not supported page

Page Templates

nocart.htm - empty cart
cart.htm - shopping cart page
ckout.htm - online check out page 1 (enter check out area)
entry.htm - online check out page 2 (customer info entry)
confirm.htm - online check out page 3 (confirm order)
success.htm - online check out page 4 (completed)
fax.htm - FAX order form
check.htm - check order form
po.htm - P.O. (purchase order) order form

E-mail Templates

aemail.txt - back-end administrative sales notification
cemail.txt - front-end customer sales confirmation

Optional:

Support for Item Search and Banner Rotator System requires those components to be installed and configured according to their specifications. Inclusion of Special Template markup supporting those components must also be included within templates to be supported by this product.

PACKING (PARTS) LIST

PACKING LIST
PRODUCT ID: SC
COMPONENT TYPE SIZE AUTH*
carts/carts.idx TEXT 0 770
cgi-bin/dbmtabs/dbmparms.txt TEXT 1501 750
cgi-bin/dbmtabs/dbmtabs.incl TEXT 1970 700
cgi-bin/dbmtabs/dbmtabs.pl TEXT 1998 750
cgi-bin/ec/ec.pl TEXT 2293 750
cgi-bin/ec/sc/add.cgi TEXT 4645 750
cgi-bin/ec/sc/cadmin.cgi TEXT 4294 750
cgi-bin/ec/sc/cart.cgi TEXT 2520 750
cgi-bin/ec/sc/cart.pl TEXT 7845 750
cgi-bin/ec/sc/chg.cgi TEXT 5183 750
cgi-bin/ec/sc/ckouta.cgi TEXT 8748 750
cgi-bin/ec/sc/ckoutb.cgi TEXT 3128 750
cgi-bin/ec/sc/ckoutb.pl TEXT 15101 750
cgi-bin/ec/sc/ckoutc.cgi TEXT 27368 750
cgi-bin/ec/sc/del.cgi TEXT 3274 750
cgi-bin/ec/sc/order.cgi TEXT 8572 750
cgi-bin/ec/sc/sc.incl TEXT 23766 700
cgi-bin/ec/sc/sc.pl TEXT 37790 750
cgi-bin/ec/unacc_edomains.pl TEXT 38196 750
cgi-bin/ec/unacc_edomains.txt TEXT 14534 750
cgi-bin/geog.pl TEXT 11750 750
cgi-bin/jhzcs.pl TEXT 47225 750
cgi-bin/license.incl TEXT 7565 700
css/ec/sc.css TEXT 1673 750
cust/cust.idx TEXT 0 770
data_ssl/bas/fe/ba_secure.dat TEXT 0 700
images/JHZCS.gif BINARY 745 750
logs/errorlog.txt TEXT 91 750
orders/orders.idx TEXT 31 770
tmpls/ec/sc/aemail.txt TEXT 1379 750
tmpls/ec/sc/cart.htm TEXT 3615 750
tmpls/ec/sc/cemail.txt TEXT 1337 750
tmpls/ec/sc/check.htm TEXT 6762 750
tmpls/ec/sc/ckout.htm TEXT 1077 750
tmpls/ec/sc/closed.html TEXT 591 750
tmpls/ec/sc/confirm.htm TEXT 12737 750
tmpls/ec/sc/entry.htm TEXT 45046 750
tmpls/ec/sc/fax.htm TEXT 7149 750
tmpls/ec/sc/nocart.htm TEXT 768 750
tmpls/ec/sc/ns.html TEXT 483 750
tmpls/ec/sc/po.htm TEXT 10298 750
tmpls/ec/sc/success.htm TEXT 1067 750
*AUTH - Authorization/permissions octal equilvalents where:
7=RWX, 6=RW, 5=RX, 4=R (R=Read W=Write X=Executable)
1 char indicates Octal number
2 char Owner
3 char Group
4 char All Others

INSTALLATION:

It is strongly recommended that you read the entire installation process steps prior to performing any installations. Each solution has specific instruction that must be followed precisely.

The Installation Process

The installation process follows this order:

  1. Download solution to PC development platform and expand installation package (use any standard archive application such as WinZip®, StuffIt Expander® or TAR command)
  2. Modify configuration settings
  3. Upload to server
  4. Set access authorization permissions
  5. Test
  6. Customize Templates
  7. Test

Authorize non-Logic Components

Authorize non-logic components as follows:

  • authorized all images for read and execute access; see NOTE FOR NON-LOGIC COMPONENTS below
  • authorized all static HTML ".html" documents for read access; see NOTE FOR NON-LOGIC COMPONENTS below
  • authorized all HTML Templates ".htm" documents for read access at the logic level; see NOTE FOR LOGIC COMPONENTS below
  • authorized all images for read and execute access; see NOTE FOR NON-LOGIC COMPONENTS below.

NOTE FOR NON-LOGIC COMPONENTS: Use the minimum required permissions to achieve most secure configuration; permission requirements for non-logic modules are dependent on the server configuration whether authorization is required for group only or for both group and other.

Modify Logic Components

Modify all logic components "*.cgi" and "*.pl" logic modules as follows:

  • first line of code (#!) correctly points to the PERL executable on the server (use command "which perl" or consult your server administrator)
  • all "requires" statements contained in all "*.cgi" and "*.pl" logic modules must use absolute directory paths (beginning with a forward slash "/")

Authorize Logic Components

Authorize logic components and dependent components (HTML and Email templates, and others) as follows:

  • authorized as all "*.pl" logic modules for read access; see NOTE FOR LOGIC COMPONENTS below.
  • authorized as all "*.cgi" logic modules for read and execute access; see NOTE FOR LOGIC COMPONENTS below.
  • authorized all HTML and Email Templates documents for read access at the logic level; see NOTE FOR LOGIC COMPONENTS below

NOTE FOR LOGIC COMPONENTS: Use the minimum required permissions to achieve most secure configuration; permission requirements for logic modules are dependent on the server configuration whether authorization is required for owner only (i.e., Apache with SUExec active), or for both owner and group.

Set Configuration in sc.pl; see embedded instructions for:

  • Use Database (for SQL RDBMS IID)
  • SALE TAX
  • SHIPPING
  • "Check Out" Error Messages (modify as desired)

For SSL check out, first install all components outside the SSL server space and verify installation. Following successful verification of installation:

  1. Install copies of "sc.pl", "ckoutb.pl", "ckoutb.cgi" and "ckoutc.cgi" to the SSL server space's CGI directory, then authorize them as executable
  2. Verify the copied version of "sc.pl" configuration variables point to the directory file paths in the SSL area
  3. Install a copies of template directories to the SSL server space
  4. If the SSL server space is resident on the same server, data may remain in the non-SSL server space. If the SSL server space is resident on a different server, data will not be accessible and a copy of the IID must also be installed and maintained in on the SSL server.

NOTE: Most FTP applications support automatic creation of directories and subdirectories when uploading a directory. Use this method to speed up the installation process. USE CAUTION - assure that common (shared) modules are fully configured prior to using this method to avoid overwriting a previously configured module with non-configured settings.

TEMPLATES:

Customize templates for content and appearance as desired:

cart.htm - online shopping cart
nocart.htm
ckout.htm - online checkout step 1 (enter check out area)
entry.htm - online checkout step 2 (customer info entry)
confirm.htm - online checkout step 3 (confirm info)
success.htm - online checkout step 4 (completed)
cemail.txt - customer email
aemail.txt - administrative email
check.htm - payment by check orders
fax.htm - order by fax orders
po.htm - payment by P.O. (Purchase Order) orders

Any variable contained in the IID may be referenced using the variables (column header names) wrapped in less than greater than pairs:

	<<variable-name>>

Variable names cannot contain spaces.

Special Mark-up Directives within Shopping Cart Templates indicate repeating cart items.

	<!-- REPEAT START -->

	<!-- REPEAT END -->

Two special keywords are available for use when using a variable reference within web page anchor names, anchor references and CGI URL parameters. This allows use of referenced variables that equate to an item values containing spaces. The use of these special keywords causes spaces to be translated or escaped using the required character sequences.

The special keywords are:

ANCHOR 

PARAM

EXAMPLE:

c.cgi?c=<<category PARAM>> 

<a href="#<<category ANCHOR>>"> 

<a name="<<category ANCHOR>>">

Uploading to Web Server

All dependent and required components must be installed and successfully configured. All components, with the excpetion of images, must be FTP uploaded as TEXT. Images must be FTP uploaded as BINARY.

TEST:

Test installation and configuration by invoking the various Shopping Cart functions from a web browser.

  • view empty cart
  • add item (BUY)
  • delete cart
  • change quantity > 0
  • delete item (quantity = 0)
  • check out (online credit card)
    1. enter check out area
    2. customer info entry w/errors
      use: MC 3434 3434 3434 3434 (for testing)
    3. customer confirmation
    4. completion
    5. view customer and admin e-mails
  • FAX order
  • Check order
  • P.O. order

CUSTOMIZATION:

Following successful installation and test, customize static pages (*.html), page templates (*.htm) and e-mail templates (*.txt) as desired.

JHZ-CS page generator solutions that display product item lists and detail pages dynamically generate "BUY" (add item to order) links with the appropriate parameters defined to the IID (Item Information Dataset). Static pages may be enhanced to include "BUY" (add item to order) links.

Add "Shopping Cart" (view shopping cart) and "Check Out" links to static pages and templates as desired.

USAGE:

Shopping Carts - a customer specific shopping cart file is created in the "carts" directory when the first item is added to an order. A cookie is set identifying the customer with a unique ID and is maintained in the carts index.

Online Credit Card Orders - a customer specific order file is created in the "orders" directory when the order is completed. The customer is sent an email containing the order information. An administrative notification email is sent announcing the order. FTP download the order file for fulfillment processing.

Other Order Types - customers complete the online forms, then print and either mail, telephone or fax their order according to instructions you have specified (contained within the check out type specific page templates).

Customer History - a customer specific history file is created in the "cust" directory when an order is completed. A cookie is set identifying the customer. This information is used to prime the customer information page with their last entered values the next time they check out.

FAQs

Is SSL (Secured Socket Layer) required?

No; however, SSL strongly recommended to preserve the privacy and integrity of your customer's information.

How I am I notified of new sales?

You are sent a new sale notification e-mail.

Can I modify sales tax per state?

Yes.

Can I configure different shipping cost for each product item?

Yes.

Can I remove support for FAX ordering?

Yes, simply remove links to it within your templates.

Does the IID need to be uploaded as Text or as Binary?

Upload all IID data files as Text to assure proper platform conversion via your FTP software.

Can I remove support for Discover Card in the online check out?

Yes, simply remove it from the drop down selection menu in the Customer Order Entry template.

JHZ-CS Solutions are distributed exclusively under terms and conditions of the JHZ-CS Software License Agreement.