Moneris eSelect Plus Hosted Paypage allows customer to make payment easily when they make purchase. Moneris eSelect Plus Hosted Paypage is good for merchants without SSL or most importantly if moneris_eselectplus_hosted_paypagemerchant does not want to deal with handling credit card information. All payment information are handled flawlessly by Moneris Solutions. The diagram to the right summarizes the Moneris eSelect Plus Hosted Paypage process flow on a cre loaded shopping cart. Process flow will be the same for most oscommerce based shopping cart. Cancel and Successful return links are specified during the set-up process. Moneris provide test environment allowing for the opportunity to work out all bugs before going to production environment. The Moneris test environment makes use of penny values of the transaction amount. Moneris Penny values does not apply to the production environment.

Moneris eSELECTplus Hosted Paypage

Chase Paymentech Admin Set Up

Admin Set Up
This is the admin set up required for chase paymentech. oscommerce is already certified, you don’t have to go through certification process. Work with your sales representative to get merchant id, bin # and trace id. If you need additional support contact gateway support team.

Error
System Error 9717 Security Information - agent/chain/merchant is missing

Fix
Contact Gateway support to add your IP address to their production database. If you are hosting on godaddy, your IP address will different than the dedicated IP shown in your account because outbound IP address is through the proxy server.

Error
System Error 801 Error validating amount. Must be numerical and greater than 0

Fix
Look for
$process_button_string =
tep_draw_hidden_field('my_customerid', $customer_id) .
tep_draw_hidden_field('my_totalamount', round(($order->info['total'])*100, 0)) .
tep_draw_hidden_field(’my_firstname’, $order->billing['firstname']) .

change
tep_draw_hidden_field('my_totalamount', ($order->info['total'])*100)
to
tep_draw_hidden_field('my_totalamount', round(($order->info['total'])*100, 0))

osCommerce Community Support Forums > Paymentech contribution

Problem:

If you have used the existing system of loading product attributes based on easy populate(EP), easy populate basic (EPB) or easy populate advanced (EPA), you will quickly notice that the system is clumsy and very confusing. Partly because of the header names and the associated numbering. I posted a response here to clarify the confusion. Even with that write-up and my several years of experience, I still get confused! To add another dimension to the problem, if you have large amount of attributes, you will realized that you reach the 256 column limit pretty quickly considering that you use about three columns for each attribute option values and 2 columns for attribute names.

Solution:

Faced with a challenge to loaded over 5000 attribute option values, I have developed a new method that is user friendly, intuitive and fast. The method is very scalable to accommodate any amount of product attributes. It is particular suited for sites with large amount of attribute option values since there is no column or row limitation. You don’t have to worry about splitting files to separate small files because of timeout error. The method has been tested on a site with over over 40 attribute option and over 5000 attribute option values.

Here is live website on which this method has been applied: innovativerecognition
Contact me at if you are interested in using this method on your site.

Simple changes that could help during checkout

As an ecommerce owner, you always want to make the checkout process as quick and smooth as possible for your own ecommerce customers. Here’s a quick checklist of simple website changes that could help you lower shopping cart abandonment.

Prominent “Add to Cart” button

Make sure that a “add to cart” button is prominent on the product page. If you must have other action buttons, make them secondary (make them smaller, a different color, etc.). If “add to cart” is intended as a primary action on your product pages, you have to visually communicate that to the user.

Reliability Elements

Since users can’t really walk up to your store to see who you really are, you’ll have to prove you’re trustworthy through others means. Third-party endorsements from such organizations as the Better Business Bureau or any other industry organizations are great. The idea is to relieve any tension associated with not knowing who they’ll be buying from.

Short Checkout Process & Progress Indicators

Don’t let your users get lost in your checkout process maze. First, let them know how far away they are from completing a purchase. Progress indicators are always great. Second, cut down on your checkout process steps. Don’t bombard them with page after page they have to fill out. If possible, set up shortcuts: Pre-populate billing address based on shipping information, automatically select shipping method, etc.

Text fields

Carefully examine all the text fields in your checkout. Do you really need somebody’s middle name or fax number? Even if those are only “optional,” first impressions created by all those fields might cost you a potential sale. Additionally, unless you plan to act on results based on “How did you hear about us?” answers in the checkout, get rid of the question. Google Analytics might provide you with more insight and save an extra field in the checkout.

Buttons & Call-to-Action

Your shopping cart buttons are your sales team as far checkout process is concerned. First, add “call-to-action” phrases to all of them: Continue With Checkout, Final Step, Finalize Purchase, Complete Purchase, etc. You should tell your customers what to do —guide them through the process with your buttons. Additionally, don’t place “remove from cart” next to “checkout.” If somebody mistakenly hits the wrong button it might have just cost you a sale. Finally, since most ecommerce stores place “primary action” buttons at the bottom right corner, which is something users are familiar with, you should follow the trend.

Confirm Order Page

This is the last page of your checkout. If they made it here they must be really motivated to buy. Make sure you reinforce that and don’t interfere in the process.
Any “30-day Money Back Guarantee” seals are great on this page — you’ll just be confirming that you stand behind your product/service. Address the concerns with transaction security by adding VeriSign, HackerSafe or similar seals to provide evidence, that as a responsible merchant, you care about your customers’ sensitive information. Remove any other distractions from the page. At this point, they are literally one click away from completing the checkout.

Following the clue from here, I put the attribute option back in 6.2 patch 10. Same method works on newer version.

Please note that line numbers are approximate.

1. Export

Applies to admin/easypopulate_export.php

1.1 Uncomment attribute option drop down in line 846

1.2 Around line 370 change


$attribute_options_query = "select distinct products_options_id from " . TABLE_PRODUCTS_OPTIONS . " where products_options_name = '" . $value . "'";

to


$attribute_options_query="select distinct po.products_options_id from products_options po, products_options_text pot where pot.products_options_name= '".$value."' and po.products_options_id=pot.products_options_text_id"; $attribute_options_query="select distinct po.products_options_id from products_options po, products_options_text pot where pot.products_options_name= '".$value."' and po.products_options_id=pot.products_options_text_id";

1.3 Make exactly the same change to around line 385

1.4 Around line 643

change


$attribute_options_languages_query = "select products_options_name from " . TABLE_PRODUCTS_OPTIONS . " where products_options_id = '" . (int)$attribute_options['products_options_id'] . “‘ and language_id = ‘” . (int)$lid . “‘”;

to


$attribute_options_languages_query = "select products_options_name from " . TABLE_PRODUCTS_OPTIONS_TEXT . " where products_options_text_id = '" . (int)$attribute_options['products_options_id'] . “‘ and language_id = ‘” . (int)$lid . “‘”;

2. Import

Applies to admin/easypopulate_import.php

2.1 Around line 1182, change


$attribute_options_query = "select products_options_name from " . TABLE_PRODUCTS_OPTIONS . " where products_options_id = '" . (int)$$v_attribute_options_id_var . "'";

to

$attribute_options_query = "select products_options_name from " . TABLE_PRODUCTS_OPTIONS_TEXT . " where products_options_text_id = '" . (int)$$v_attribute_options_id_var . "'";

2.2 Around line 1196, change


$attribute_options_insert_query = "insert into " . TABLE_PRODUCTS_OPTIONS . " (products_options_id, language_id, products_options_name) values ('" . (int)$$v_attribute_options_id_var . "', '" . (int)$lid . "', '" . $$v_attribute_options_name_var . "')";

to

$attribute_options_insert_query = "insert into " . TABLE_PRODUCTS_OPTIONS_TEXT . " (products_options_text_id, language_id, products_options_name) values ('" . (int)$$v_attribute_options_id_var . "', '" . (int)$lid . "', '" . $$v_attribute_options_name_var . "')";

2.3 Around line 1208, change


$attribute_options_update_lang_query = "select products_options_name from " . TABLE_PRODUCTS_OPTIONS . " where products_options_id = '" . (int)$$v_attribute_options_id_var . "' and language_id ='" . (int)$lid . "'";

to

$attribute_options_update_lang_query = "select products_options_name from " . TABLE_PRODUCTS_OPTIONS_TEXT . " where products_options_text_id = '" . (int)$$v_attribute_options_id_var . "' and language_id ='" . (int)$lid . "'";

2.4 Around line 1214, change


$attribute_options_lang_insert_query = "insert into " . TABLE_PRODUCTS_OPTIONS . " (products_options_id, language_id, products_options_name) values ('" . (int)$$v_attribute_options_id_var . "', '" . (int)$lid . "', '" . $$v_attribute_options_name_var . "')";

to

$attribute_options_lang_insert_query = "select products_options_name from " . TABLE_PRODUCTS_OPTIONS_TEXT . " where products_options_text_id = '" . (int)$$v_attribute_options_id_var . "' and language_id ='" . (int)$lid . "'";

2.5 Around line 1218, change


$attribute_options_update_query = "update " . TABLE_PRODUCTS_OPTIONS . " set products_options_name = '" . $$v_attribute_options_name_var . "' where products_options_id ='" . (int)$$v_attribute_options_id_var . "' and language_id = '" . (int)$lid . "'";

to

$attribute_options_update_query = "update " . TABLE_PRODUCTS_OPTIONS_TEXT . " set products_options_name = '" . $$v_attribute_options_name_var . "' where products_options_text_id ='" . (int)$$v_attribute_options_id_var . "' and language_id = '" . (int)$lid . "'";

3.0 epconfigure

3.1 set $products_with_attributes = true;

3.2 $attribute_options_select = array(’Size’, ‘Model’); // uncomment and fill with product options name you wish to download use $attribute_options_select = ”; if you wish to download all product options

Please BACK UP your files before any change…

Below is a listing of the top 10 search engines in the United States. These listings are displayed in ranking order for the top 5 search engines and alphabetical order for 2nd tier search engines along with links to their FAQ’s and Add/Submit URI pages. (source: http://www.seoconsultants.com)

Search Engine Statistics - What Market Share?

2007 December: According to 2007 December figures from Hitwise

  1. Google has the largest market share of U.S. based web searches at 65.98%
    • 2007 November 65.10%
    • 2007 October 64.49%
    • 2007 September 63.55%
    • 2006 October 60.94%
  2. Yahoo is second with a market share of 20.88%
    • 2007 November 21.21%
    • 2007 October 21.65%
    • 2007 September 22.55%
    • 2006 October 22.34%
  3. MSN is third with a market share of 7.04%
    • 2007 November 7.09%
    • 2007 October 7.42%
    • 2007 September 7.83%
    • 2006 October 10.72%
  4. Ask is fourth with a market share of 4.14%
    • 2007 November 4.63%
    • 2007 October 4.76%
    • 2007 September 4.32%
    • 2006 October 4.34%

Note: Data is based on four week rolling periods (ending Oct. 27, 2007, Sept. 29, 2007, Oct. 28, 2006) from the Hitwise sample of 10 million US Internet users.”

Source: Hitwise - Dominance continues with a six percent increase over last year.

Top 5 Search Engines in the United States (The Majors) by Rank

  1. Google
    Free Submit: http://www.google.com/addurl/
  2. Yahoo! Search
    Free Submit: http://submit.search.yahoo.com/free/request/
  3. MSN Live Search
    Free Submit: http://search.msn.com/docs/submit.aspx
  4. AOL Search - Powered by Google
    Submit: https://adwords.google.com/select/
  5. Ask - Powered by Teoma
    FAQs: http://static.wc.ask.com/en/docs/about/webmasters.shtml#18

Alphabetical Listing of 2nd Tier Search Engines

  1. AltaVista - Powered by Yahoo!
    Free Submit: http://submit.search.yahoo.com/free/request/
  2. Fast (AlltheWeb.com) - Powered by Yahoo!
    Submit: http://submit.search.yahoo.com/free/request/
  3. Gigablast - Real time spidering, really!
    Free Submit: http://www.gigablast.com/addurl
  4. Netscape Search - Powered by Google
    Free Submit: http://www.google.com/addurl/
  5. Snap.com - Portions powered by: Gigablast, Smarter.com, SimplyHired.com, X1 Technologies, Inc. and Enhanced by Ask.com
    Submit: http://www.snap.com/

In EPB product identification is based on product model; you have to supply unique product model number in your file whereas in EPA product identification is based on product id, you use 0 in product id field to represent new products to be added in your file.

In EPB v_status is used for delete. Valid values are for v_status are Active, Inactive and Delete. In EPA v_action is used for delete. Valid value is delete. Please note the case of each valid values.

In EPB default size (number of characters ) of v_producs_model is 12 characters; it is 25 characters in EPA. You can change this value through your phpmyadmin direct access to your database, if you do make a change, please change the value in your easy populate configuration to match whatever your new value is.

This is the way to use EPA to update quantity, price or any other field for that matter:

It is a three stage process:

Stage 1.
* Do a EPA export

Stage 2.
* Open the exported file in Excel or your favorite spreadsheet software.

* Make changes to the appropritate field.
* PLEASE DO NOT ALTER PRODUCT ID FIELD. This is the field that will tell EPA how to match to corresponding products on your site.
* Safe your modified file as tab limited file

Stage 3.
* Do EPA import.

The same process applies to EPB. In EPB case DO NOT ALTER PRODUCT MODEL FIELD

delete is the only value currently programmed for v_action. If needed, custom programming can be done to allow other values.

If you have products on specials and you want to prevent coupons from being applied to them; here is code snippet you can add to checkout_payment.tpl.php. The code looks for products under specials and prevent the vouchers/coupons textbox from being displayed. If there are products that are not in specials in shopping cart, vouchers/coupons textbox will be displayed.

<?php
$products_array = $cart->get_products();
$xc_count=0;
for($ii=0; $ii<count($products_array); $ii++)
{
if(strlen(tep_get_products_special_price( $products_array[$ii]['id']))<=0 )
$xc_count=$xc_count+1;
}
if($xc_count>0)echo $order_total_modules->credit_selection();
?>

Here are the top search engines you submit your site for free.

Google: http://www.google.com/addurl/?continue=/addurlWindowsLive/MSN: http://search.msn.com/docs/submit.aspx

Open Directory Project: http://www.dmoz.org/add.html

Librarian’s Internet Index: http://lii.org/cs/lii/create/todo

Yahoo Search: https://siteexplorer.search.yahoo.com/submit

Alexa: http://www.alexa.com/site/help/webmasters

Page 3 of 4