Jump to content


  • Content count

  • Joined

  • Last visited

Posts posted by arm1tage

  1. I download the pm2checkout v2.1a, install that then enable the Corce Cookies. When i try to do a somewhat Test, it came back saying cookies where not enable which they where. So i disable the Force Cookie, and so far things seem to work i guess.. lol I got to the 2CO where you put the Credit Card info and it had the Products.


    If you disable force cookies, 2co will not pass back the order to osc when the customer has cookies disabled. So you will get a payment, but you won't know what it's for!

  2. IlColosso: if you comment out the 3 lines then the product info to enabled the itemized cart will not be passed to 2CO. Only the product name is passed, which is required by 2CO's new rules. You can comment out by adding // to the beginning of each line, or just delete it.


    k2chris1983: if you have a shared-SSL site you will have to use the non-SSL instructions effectively dsiabling yor SSL, otherwise force cookie use will not work. try it and let me know how it goes.

  3. New pm2checkout v2.1 available. http://www.oscommerce.com/community/contributions,904


    This release adds most of the needed functionality like product description and shipping cost. Some image files have been added to look nice like Paypal_IPN so make sure to update all your files.


    The install.txt file says c_description is blank, but that is wrong so please ignore known issue #2!




    -shipping cost is passed to 2CO

    -changed 'price' variable to 'final_price'

    -c_description is passed properly, minues HTML tags. Length under 255 chars goes into short description, 255+ goes into long description.

    -added credit card logos on checkout a'la Paypal IPN

    -added instructions on enabling/disabling itemized cart




    1. 'Force Cookie Use' required. Sites using a shared-SSL cert will not work.

    Most problems with the contrib are due to cookies not being set up properly.

    I do not know of any workaround for this.


    2. Although the c_prod and related parameters enable auto product creation

    on 2CO, currently c_description fields are blank. I plan to add this in the

    future. [edit: WRONG! It's already added!]


    3. Tangible goods must be set to YES or NO. Mixed tangible/intangible carts

    are not supported, although integration with a downloadable items contrib

    is certainly possible.


    4. Only products already in 2CO's database will show up in the itemized list

    on 2CO's "Order Detail" page. By default, products are auto-created in 2CO's dc

    when purchased in a LIVE transaction. You want either ALL or NONE of your

    products to be in the db. Otherwise if the customer buys 2 items only 1 may

    be displayed. Details below.

  4. I have about 200 products on my catalog and I usually update them 2/3 times a week. Is there a way to export our products table to the 2CO db? I assume we must explort the table to .cvs... But I have no idea how to do it.


    And if the products are being stored after a live purchase... but some will fail to show when not yet added, as this will obviously scare the customers, is there any way to override showing this items to the customers and at the same time, storing each item on the database as 2co requests?




    Only products already in 2CO's database will show up in the itemized list

    on 2CO's "Order Detail" page. By default, products are auto-created in 2CO's dc

    when purchased in a LIVE transaction. You want either ALL or NONE of your

    products to be in the db. Otherwise if the customer buys 2 items only 1 may

    be displayed.


    To ENABLE an itemized cart:

    Use Easy Populate to upload your products to 2CO in .CSV format.


    Then login to 2CO, and click Set Up Products->Upload New Products.

    Follow the instructions and convert the product list to 2CO's format.


    To DISABLE itemized cart:

    in /catalog/includes/modules/payment/pm2checkout.php:

    comment out lines with c_name, c_price, and c_description parameters.

  5. Great work Mark! Easy Populate is the best way to upload all your inventory to 2CO without buying it. Do you mind if I add your instructions to the next update?


    One other thing, if you want to import the actual product description, here's is the code for that! This strips out HTML and only leaves line breaks. Descriptions under 255 chars go into the short desciprtion box. Anything longer goes into the long description.



                    $process_button_string .= tep_draw_hidden_field('c_description_' . $i, $order->products[$i]['name']); // not sure how to input the description here



                    // format product description 
                   $product_id = $order->products[$i]['id'];
                   $product_query = tep_db_query("select products_description from " . TABLE_PRODUCTS_DESCRIPTION . " where products_id = '" . $product_id . "' and language_id = '" . $languages_id . "'");
                   $product_description = tep_db_fetch_array($product_query);
                   $text = $product_description['products_description'];
                   $text = strip_tags($text);
                   $text = nl2br($text);
                   $text = str_replace("<br />","<br>",$text);
                   $process_button_string .= tep_draw_hidden_field('c_description_' . $i, $text);

  6. Mark,


    You are not alone, Farrukh and I had the same problem today. Then it mysteriously went away. It's been extremely frustrating to troubleshoot.


    However, some good did come of it. I've learned the c_prod and associated variables have to be passed once in a LIVE transaction so they are entered into 2CO's database, before they show up in the cart details. So for those of you that do not see the itemized list, it is because you have not had a live sale of that item yet. One way around this is to upload your inventory in a .CSV file. You can find out how to do this by logging into 2CO->Set Up Products->Upload New Products


    If it is inconvenient to add the entire inventory, then it's best to comment out the c_name, c_price, and c_description lines so 2CO does not try auto product creation. This will disable itemized listing, but that is preferable to having only some items listed and others not!


    On a side note, if you want to add the shipping cost line to your checkout, add this line:

    $process_button_string .= tep_draw_hidden_field('sh_cost', $shipping['cost']);

    right above

    $process_button_string .= tep_draw_hidden_field('x_login', MODULE_PAYMENT_2CHECKOUT_LOGIN) .

  7. When you get a Paypal order you should look on the right where the "edit" "delete" "invoice" "packing slip" buttons are. A successful order will say "Status: Completed" if you have received the payment. Otherwise the status will be blank.

  8. One small doubt. Since cookies must be forced... What will happen to buyers that have theyre explorers to block cookies? Will they be able to pay and then the order will not be registered or they won't be able to purchase at all? How can we warn our users about the cookie thing? Cos this will affect also buyers that don't have cookies on for other payments, like Paypal, and Money orders.. (in my case)




    If the customer has cookies disabled they will not be able to login or purchase anything. Since almost 100% of e-commerce sites use cookies this is not a big deal and adds security vs SID. You can bet if someone has a Paypal account they will have cookies enabled.

  9. For the record, I just downloaded and installed the 2.0c 2COv2 contribution, and, while the transaction went through and processed, I also got a single 'Cart' entry when I reached the 2CO payment page -- no itemized list of products.


    I was very, very careful about following the provided installation instrux, since I didn't want to have to do it more than once.


    There's still something missing here, somewhere...?


    I am getting the same thing today. Earlier if I bought 3 items only 2 were listed. Now the itemized list is gone totally.


    I have heard that 2CO is updating and changing some things so expect some weirdness.

  10. Hello arm1tage, thx for the reply, I made the change you suggested but I still get the same error. I have tried turning ssl to TRUE and FALSE but I get the same results with both. The only way it adds a product to the cart is when I change Force Cookie Usage to FALSE!!


    try changing

    define('HTTP_COOKIE_DOMAIN', 'www.deguate.com');
    define('HTTPS_COOKIE_DOMAIN', 'www.deguate.com');



    define('HTTP_COOKIE_DOMAIN', '.deguate.com');
    define('HTTPS_COOKIE_DOMAIN', '.deguate.com');


    since your URL does not have the www prefix.

  11. Same here. We only get a single cart ID with the total amount, even if there are several items in the cart  :'(

    The readme file talk about  HTTPS_COOKIE_DOMAIN but what about HTTPS_COOKIE_PATH ? What are we suppose to put there ?

    define('HTTPS_COOKIE_PATH', '/'); ?


    freee: yes shipping is calculated by osc and has nothing to do with 2checkout. their new requirement is that each order specify the details of each item sold using the c_prod parameter.


    if you do not see the product details in your cart and you have updated to the latest version (v2.0c), then i don't know what the problem is.


    you can check out my LIVE site at http://www.motorbags.com to see the contrib in action. get up to the Order Details screen and see the line by line product list without entering any cc info.

  12. Forgot to mention: I was able to place a demo purchase with Force Cookie Usage set to FALSE but since everybody says it has to be turned to TRUE I guess there is a problem somewhere in my store!


    since you have an SSL store you need to define('HTTPS_COOKIE_PATH', '/');

  13. Eric Webster from 2CO has been kind enough to point out some errors in the contrib, which I have fixed. Today's v2.0c should fix all c_prod related errors.


    Known issues:

    -does not work with downloadable goods

    -reported CAD currency problem (i have not tested this)


    Please try out the new version and let me know. And sorry for all the errors - I am not a programmer, just deperate to get my shop working.



  14. Help! installed the contrib and got the following message during the checkout, at the choose address stage.


    Warning: Cannot modify header information - headers already sent by (output started at /usr/home/durigch/public_html/osc/includes/modules/shipping/zones.php:214) in /usr/home/durigch/public_html/osc/includes/functions/general.php on line 29


    what does this mean and how can I correct it?


    This might mean those files have incorrect syntax or extra spaces at the beginning or end of the file. Make sure the editor you use does not add any white spaces. None of the files in the contrib should cause this.

  15. Even if you change in the 2Checkout LOOK & FEEL and make both URL go to:



    then it will STILL work.


    So I guess no need to make it go to pm2checkout_process.php and THEN to checkout_process.php


    It worked with me


    Yes that method works as long as Direct Return is set to No, but then they have to click the 'Finalize Order' button. If it is set to Yes then the customer will not be returned to the site.


    I prefer setting Direct Return to Yes and directing to pm2checkout_process.php since the customer does not have to click anything to be redirected.

  16. DOH! I need to get more sleep.


    Just realized I read 2Checkout's parameter syntax incorrectly. It's a simple fix to get the detailed order info working. This means the c_prod and id_type info will be submitted properly, so please update to the new pm2checkout.php for compliance.


    Check the contrib section for the updated file. If you have it installed already just replace your /catalog/includes/modules/playments/pm2checkout.php

  17. Also, in demo mode, it still looks for a real credit card number, so entering 4111111.... will not work.  At least I remember having to do that awhile ago on their demo mode.  Try entering a real credit card number and see what happens.


    Just to clarify, a real credit card is not required. Any random 15 or 16 digit number should work.



    Why am I getting "The sale has been rejected" even when passing demo=Y ?


    The likely cause is that a banned credit card is being used for a demo transaction. Demo transactions are still sent through parts of our fraud system, and will therefore get caught with this error. Make sure you are not using all 1's for the credit card number and also make sure that it does not begin with '411'. Using sequential numbers can also cause this error to occur, such as using 123456789. A safe one to use for testing is '597910143452349' or any other random number that fits the above criteria while still consisting of 15 or 16 digits.