Monday, November 29, 2010

PrestaShop TIPS - How download a ordered file without log in

At PrestaShop, if you ordered a downloadable product like a eBook,you will receive an mail with a link to download the file. But by default, when you click the link in the email, you will be redirected to authentication page to log in.

This is a normal and safe way, to protect store owner files. But some store owners think it is necessary to do so, because we already have a hashed key in the link something like below.

I also agree, because
  • It is very hard to figure out the link if you don't know the link. It is secure enough to protect your files.

  • If someone want to distribute file, he/she doesn't have to distribute the link, he/she could distribute the file itself.

  • So if you really want make it convenience for customer to download from link in email without logging in, you can make following changes to make this happen.

    comment out following two lines (line 55,56) in file get-file.php

    //if (!$cookie->isLogged())
    // Tools::redirect('authentication.php?back=get-file.php&key='.$key);

    PrestaShop Info - New version of PrestaShop Paypal Express Checkout module/addon is relased

    A new version of Agile Paypal - A PrestaShop Paypal Express Checkout module is release. In this version, it fixed a a few bugs and support lower version of prestaShop 1.2.x.

    This module allow customer check without registration in less than 3 clicks. The module will create/register customer with information from Paypal automatically after payment is done.

    Now it supports both PrestaShop 1.2.x and PrestaShop 1.3.x
    The module is currently on sale at very low price.
    You can order the module here


    * Module supports both express checkout and normal checkout
    * Module allow customer to select Express Checkout or normal checkout with registration.
    * When customer choose normal checkout all process will be as just standard PrestaShop.
    * Module will ask customer to agrre on "Terms and Conditions" before redirecting to payment.
    * Module will create a new account automatically with information from Paypal for the 1st order of the customer. Customer will receive "Welcome" and :Order Confirmation" emails.
    * Module will link orders to existing customers by Paypal account email address from 2nd order of same customer.
    * Module will create a new state if the address posted back from Paypal contains state which is not found in store database. And also an alert email will be sent to store Owner

    Saturday, November 27, 2010

    PrestaShop Information - PrestaShop v.1.4 Alpha 3 is available

    new PrestaShop 1.4 Alpha version has just been published!
    Don’t wait to find out the new features added to the future leading version of the e-commerce solution.

    The Template Installer is also one of the new features included in PrestaShop 1.4, to simplify templates installation for merchants, discover it below!

    New Features
    * Multilingual sitemap with pictures (SEO improvement)
    * Geo-localization: Check your visitors’ origin
    * Countries are now related to currencies (ability to define currencies depending on the country where the orders are made)
    * Taxes and countries are now related (ability to define taxes depending on the country where the orders are made)
    * New statistics added to the dashboard and lots of improvements
    * Ability to restrict your e-shop access or orders for some countries predefined thanks to geo-localization
    * Installation of language packs directly from

    PrestaShop TIPS - How to fix default Carrier issue

    In PrestaShop, there is a default carrier setting at back office. But I found there are some issue with AdminCarrier tab in PrestaShop back office.

    Issue I found
    1. Every time when I update existing carrier, the ID of carrier will be changed. After several time changes, ID of of carrier "CanadPost" from 3 to 35.

    2. There is carrier drop down list of carrier for you to set Default Carrier, but no matter you change to which carrier as default and click "Save", the default setting in database never updated. It is kept as original 2.

    Because of above issue, there are a lot of problems will occurs. Here is one of the problem that occurred to me.

    Shipping fee is always 0

    The only solution to this issue is manually set default carrier at database.

    1. Check the ID of carrier you want it to be Default Carrier at your back office.
    2. Go to your database admin tool such as MyPhpAdmin, look for table ps_configuration,
    3. Look for record with name = PS_CARRIER_DEFAULT and change the value to the ID of the carrier you want to set.

    Done. You have fixed the issue.

    Other tips to configure shipping correctly.
    1. Check if your zones are set correct, status is active
    2. For each shipping country. Shipping zone? Contains state?
    3. State, you can set shipping zone at state level
    4. Make sure your carrier is available to correct customer groups

    Related posts:

    Thursday, November 18, 2010

    PrestaShop Tips - How to use Paypal Sandbox test

    What is Paypal Sandbox?

    Sandbox is a set of tools and resources to enable developers and merchants to develop eCommerce web sites and applications using PayPal web services. Most important purpose is to perform testing.

    What you have to do

    Most people are confused by Sandbox account and testing account, and so don't know what to do, how to use Sandbox.

    Here are basics steps you will need to follow to do test.
    1. Sign up an Sandbox access account. By signing up this account, you will gain access to Sandbox. But only this account, you will not able to perform test.

    To sign up , click here
    To log in, click here

    2. Create a Business Sandbox test account to represent your business, seller or merchant. At prestaShop, you will be need set this email address of this account to related Paypal module.

    After you logged in to your Sandbox access account. You will see links on the left top corner. "test accounts" is among them. Click this link to start create test account.

    3. Create one or more usually Personal Sandbox test account to represent customer, the buyers, purchasers.

    After you created those account, now you ready to perform testing.
    For more information, visit Paypal Sandbox Overview

    Some tips

    During your test, you must logged in to Sandbox with your Sandbox access account. Otherwise, following error will appear when you are redirected to Paypal Sandbox.

    In order to test with SandBox account, you must remain logged in to Sandbox account.

    You will not receive any email from paypal for those Sandbox test accounts. But you will be able to confirm them by access "test email". There is a link locates at the left top corner of your Sandbox access account home page.

    Tuesday, November 16, 2010

    PrestaShop Information - PrestaShop v.1.4 alpha 2 is available to download for evaluation

    PrestaShop takes the leap! Discover today PrestaShop v.1.4 alpha 2. This new version, real milestone for our software, contains more than 50 new features!

    New partners joined our solution to help you in every important step of your online activity: customer relationship, payment, marketing, shipping… Our team has also developed a lot of new modules expanding again the features richness of PrestaShop.

    Discover in this newsletter a selection of key features that make PrestaShop 1.4 an outstanding version! Please note: this version is currently Alpha 2, so it should not be used in production. Dear contributors do not hesitate to test this version and to report us your comments and suggestions!

    Download and try here now

    Thursday, November 11, 2010

    PrestaShop Tips - Paypal payment module currency conversion issue and customer selected currency issue

    What is the problem

    If you are using Paypal payment module ver 1.7 at PrestaShop 1.3.2, you will find some issue if you are using more than one currencies.

    First, you will need to understand following concepts in PrestaShop
    1. Default currency (assume set as: USD)
    2. Paypal restricted currency( assume set as Euro)
    3. Your store support currencies (assume you set as USD, EURO, GBP,....)

    If you want know more about what is "Default currency", " Paypal restricted currency", please see my another post here

    Issue/Problem 1: Currency Converting Problem
    If customer select currency (e.g. GBP) other than Paypal Restriction Currency (Euro), when customer start checkout, PrestaShop will redirect to Paypal without converting, it means customer will be charged with Euro by the amount of GBP.

    Issue/Problem 2: Customer selected currency
    At Paypal payment page, if customer cancel payment and click "Return To Store" (your PrestaShop Store). When customer comes back to your store, all prices of products and shopping cart are displayed as Erro instead of customer selected GBP.

    Affected PrestaShop versions

    This issue 1 seem only happens on Paypal 1.7 which comes with PrestaShop 1.3.2
    The issue 2 seems happens in both Paypal 1.7 and 1.6 which comes with PrestaShop 1.3.1

    The solution

    To fix issue 1, some more coding is required than fixing issue 2.
    I will explained in detail on how to fix issue 2 here.

    In the payment module "Agile Paypal", both issues are fixed. "Agile Paypal" is a Express Checkout module that allows customer checkout without sign up to registration or log in.

    For more information this module Please Visit Here
    If you interested in buying, Please Visit Here.
    Or you can have live demo at below sites: (public service) (sand box test)

    Now, let me show you on how to fix issue 2:
    Please apply following two changes to file ./modules/paypal/redirect.php
    1. Add following code at position as indicated in the screen shot image below it.

    $customercurrency = $cookie->id_currency;

    2. Add following code before the end of script as indicated by the screen shot below.

    $cookie->id_currency = $customercurrency;

    The above change is for module Paypal 1.7 which comes with PrestaShop 1.3.2
    But it should be the similar for other version like module Paypal 16.

    osCommerce Website templates - Free template available

    What Is osCommerce?

  • osCommerce (“open source Commerce”) is an e-commerce and online store-management software program. It can be used on any web server that has PHP and MySQL installed. It is available as free software under the GNU General Public License

  • OsCommerce is an open source project that delivers online shop e-commerce solutions absolutely FREE of charge. It is powered by the osCommerce community and is currently the leading solution in its field. Everything you need to get started selling any goods over the Internet - from the Catalog frontend that is presented to your customers, to the Administration Tool backend that completely handles your products, customers, orders, and online store data. We presents this product line based on the osCommerce System – osCommerce Web Templates.

  • osCommerce website templatesM

  • osCommerce templates presented by us make the best value choice for a web version of your store. Our large selection of osCommerce skins provides you with a lot of attractive choices. It includes osCommerce web templates for online book, gift, jewelry, etc. stores.

  • >

  • Browse and you will find an osCommerce template that is just right for your business. And our designers can customize any of our osCommerce themes to meet the specialty needs of your business. Notice that our collection of osCommerce templates is regularly updated with fresh designs so visit us again and choose the osCommerce skin that meets your needs and wishes

  • Most of our templates have online demo, it is better to take a real exprience before you buy any templates.

    Here you can browse and experience all our osCommerce Templates

    Tuesday, November 9, 2010

    PrestaShop Tips - How to set different shipping charge for different state

    Sometime, as a PrestaShop store owner, you may want to set different shipping charge for different state or different province, or even different region of the country. The shipping charge calculation at PrestaShop is based on "Zone", not country. So it is very easy to set different shipping charge for different state or province or event different region of same country.

    What you have to do is to create different zones for your states/province/region.

    For example, you can create Zone "USA East" and zone "USA West", then set different chipping charge for this two zones.

    After that, you must go back to change the state setting, to change them from default "USA" zone to "USA East" zone or "USA West" zone.

    That's it, very easy.

    I have tested this on PrestaShop 1.3.2, it works fine.

    Sunday, November 7, 2010

    PrestaShop Tips - How to fix cart summary issue

    At PrestaShop 1.3 or later (but it will be fixed in ver 1.4), there is a bug at summary of cart block. It does not display correct information when you only have products.

    When you add a product to cart, cart status on header shows “product” but doesn’t show the updated product numbers and its total amount. At the same time, when you click minimize cart block, the cart status also show “product” word like the header.

    You can fix this problem as following

    Find following two lines at modules/blockcart/blockcart.tpl

    <span class="ajax_cart_product_txt_s{if $cart_qties < 2} hidden{/if}">{l s='products' mod='blockcart'}</span>
    <span class="ajax_cart_product_txt{if $cart_qties != 1} hidden{/if}">{l s='product' mod='blockcart'}</span>

    Replace above two lines with following two lines

    <span class="ajax_cart_product_txt_s{if $cart_qties != 1} hidden{/if}">{l s='products' mod='blockcart'}</span>
    <span class="ajax_cart_product_txt{if $cart_qties < 2} hidden{/if}">{l s='product' mod='blockcart'}</span>

    Saturday, November 6, 2010

    PrestaShop Modules - Paypal Express checkout module allow check out without signup and login

    What is Agile Paypal

    Agile Paypal is a Paypal Express Checkout module for PrestaShop that allow customer use express checkout without requiring customer to sign up/log in. This module will redirect customer to Paypal payment page in less than 3 clicks. See demo screen or live demo at listed URL below.

    Compatible PrestaShop Version

    It is compatible with PrestaShop 1.3.x
    It is also compatible with 1.2.x (added on Nov 29)

    Express Checkout Screens demo

    Just 3 Clicks to Payment (truly Quick, Fast and Express Checkout)

    Perform Payment at Paypal

    Back to store - "Welcome" email and "Order Confirmation" email received.

    Live Demo and Buy it

    You can experience Agile Paypal at following sites:

    You can buy this module at here:

    Important Notice

    This module has fixed some bugs that still appearing on standard module Paypal 1.7(e.g, currency converting issue, customer selected currency lost).
    See more information here

    Some customer websites using this module

    Some of the Features

  • Agile Paypal express checkout allow customer go payment in just simple 3 clicks.

  • Agile Paypal also allow customer to choose sign up or log in, it flexiable.

  • Agile Paypal will ask customer to registration if the the order is free order because payment is not necessary.

  • Agile Paypal will ask customer to agree on "Terms And Conditions" before go payment page

  • Agile Paypal will create a new account automatically with information posted from Paypal if this is the first order of the customer. Customer will receive "Welcome" email.

  • Agile Paypal will link orders to existing customers by Paypal account email address

  • Agile Paypal will use default carrier automatically.

  • Agile Paypal will create a new state if the address posted back from Paypal contains state and it is not found in store database. And also an alert email will be sent to store Owner.

  • If your store only ship to one country, you can hide the country selection, make more simple. This could configured at module configuration page.( available for PrestaShop 1.3x and above)

  • Now support more than one carriers, the carriers selection is added at Express Checkout screen. ( available for PrestaShop 1.3x and above)
  • Thursday, November 4, 2010

    PrestaShop Tips - How to fix duplicated product SEO friendly URL issue

    At Catalog management page of PrestaShop Back office, you can duplicate a product from existing product to create new similar products. This is a good feature/function.

    But there is one problem with this feature. If you enable SEO friendly URL at your store, you will find that friendly URL of the new duplicated product is using previous product name.

    For example, if you duplicate a product from "Desktop Computer" with id=10 to create a new product "Laptop computer" with id=11. Then the SEO friendly URL of new product will be something like "..../11-Desktop-Computer" instead of "11-Laptop-Computer".

    Even you rename the new created product, the friendly URL does not update/change. There is no place at Back Office to change SEO friendly URL for each product. The only way you can fix the problem is to change data in database directly.

    Here is how to fix the problem
    1. Find the id of product that you want to change for at table ps_product
    2. Find the record with same id_product at table ps_product_lang table
    3. Change link_rewrite field of this record to the name you want it be.
    For example, in above sample, you will need to change "Desktop Computer" to "Laptop Computer" for the record with id_product=11
    4. After change all records, try to re-generate .htaccess
    (Back office - Preference - Friendly URL section

    Wednesday, November 3, 2010

    PrestaShop Tips - How to display sold count of product

    Most online store owners would like to display sold count (number of units sold) of product to indicate the popularity of a product. At PrestaShop, by default, there is no this function or feature, but you can add this by yourself if you know a little bit PHP coding.

    It depends where you want this to show up. Here is the code for displaying sold count on product detail page.

    1. at product.php file, look for following line (on the top of the file)


    add following code right AFTER above line

    $product_sold = Db::getInstance()->getRow('SELECT SUM(product_quantity) as total FROM `'._DB_PREFIX_.'order_detail` where product_id = ' . $_GET['id_product']);
    $smarty->assign('product_sold', $product_sold['total']);

    2. At . /themes/yourthemes/product.tpl file, look for following line

    <p class="price">

    add following line right AFTER above line

    {l s='Sold Count:'}{$product_sold} <br /><br />

    And the result will look like below.