Page 1 of 3 123 LastLast
Results 1 to 10 of 23
  1. #1
    Join Date
    Jul 2007
    Posts
    14
    Plugin Contributions
    0

    red flag Customizing Checkout Success Page Note based on Payment Method?

    Hi, wonder if anyone have any clue how to customize the checkout_sucess page so that different messages can be display upon completing final step - Confirm the Order - based on the payment method processed.

    E.g.

    1. If the Payment Method = Cheque / Money Order
    Message: Your order has been received. Please note that your order will be delivered upon confirmation of payment. Please ensure you quote your order number when making payment.

    2. If the Payment Method = Express Check out with Paypal
    Message: Your order has been received and payment confirmed. Your order will be processed for shipment the next working day.

    3. If the Payment Method = Cash on Delivery
    Message: Your order has been received. We will be in touch with you by the next working day to arrange your delivery appointment.

    Thanks in advance.

    dcmall

  2. #2
    Join Date
    Jan 2004
    Posts
    66,444
    Plugin Contributions
    279

    Default Re: Customizing Checkout Success Page Note based on Payment Method?

    You'd need to set a session variable in the checkout_process header_php.php before the unset() of session-payment information.

    Then read that session variable in the checkout_success header_php.php, and then unset that session variable after reading its value.
    .

    Zen Cart - putting the dream of business ownership within reach of anyone!
    Donate to: DrByte directly or to the Zen Cart team as a whole

    Remember: Any code suggestions you see here are merely suggestions. You assume full responsibility for your use of any such suggestions, including any impact ANY alterations you make to your site may have on your PCI compliance.
    Furthermore, any advice you see here about PCI matters is merely an opinion, and should not be relied upon as "official". Official PCI information should be obtained from the PCI Security Council directly or from one of their authorized Assessors.

  3. #3
    Join Date
    Jul 2007
    Posts
    14
    Plugin Contributions
    0

    red flag Re: Customizing Checkout Success Page Note based on Payment Method?

    DrByte,

    How to I set a session variable in checkout_process header_php.php and how do I read the session variable in the checkout_success header_php.php?

    I know where to open the two files, but when it comes to coding, I really do not know how to set and read the session variable for the above said purpose.

    I know nuts of php. Appreciate if you could give some guidance.

    Looking forward to your prompt guidance...

  4. #4
    Join Date
    Aug 2007
    Location
    Eugene, OR
    Posts
    162
    Plugin Contributions
    0

    Default Re: Customizing Checkout Success Page Note based on Payment Method?

    I also need to do the same. I have searched the forum and found 10 different threads about this topic, but none of them has a real answer. Dr Byte's answer above is the closest I have found, but it sounds very technical, i.e. over my head!

    Any help on this would be greatly appreciated. Please explain in terms suitable for IQ80 reader such as myself.

    Thanks

  5. #5
    Join Date
    Aug 2007
    Location
    Eugene, OR
    Posts
    162
    Plugin Contributions
    0

    red flag Re: Customizing Checkout Success Page Note based on Payment Method?

    Well, I guess I should have just stopped, but I decided to try Dr Byte's instructions. I tried to add a register variable command in the checkout_process header file and an unregister in the checkout_success header file. It did not seem to work since the success page would not appear then. So then I restored my original files, BUT the cart now seems to be broken! The success page will simply not appear (although it worked perfectly before my attempted changes).

    I really am in a state of panic and simultaneous depression now. I just don't know what to do to fix this. The order still is placed and the email is received by both the store owner and the customer and the order is logged into the databse, BUT the success page will not appear.

    Could it be something has been messed up in the database due to my experiments???

    I have a backup of the database and could restore it if I knew how. But I am afraid to even try this for fear of making things even worse.

    Help!

    www.westec-beauty dot com/shop/

  6. #6
    Join Date
    Jan 2004
    Posts
    66,444
    Plugin Contributions
    279

    Default Re: Customizing Checkout Success Page Note based on Payment Method?

    How exactly did you make your changes?
    Did you add any new files?
    How exactly did you "undo" the changes?
    Did you delete any new files you added?
    .

    Zen Cart - putting the dream of business ownership within reach of anyone!
    Donate to: DrByte directly or to the Zen Cart team as a whole

    Remember: Any code suggestions you see here are merely suggestions. You assume full responsibility for your use of any such suggestions, including any impact ANY alterations you make to your site may have on your PCI compliance.
    Furthermore, any advice you see here about PCI matters is merely an opinion, and should not be relied upon as "official". Official PCI information should be obtained from the PCI Security Council directly or from one of their authorized Assessors.

  7. #7
    Join Date
    Aug 2007
    Location
    Eugene, OR
    Posts
    162
    Plugin Contributions
    0

    Default Re: Customizing Checkout Success Page Note based on Payment Method?

    First, I tried this:

    in includes/modules/pages/checkout_process/header_php.php
    I added a line like this: session_register("payment");
    before the unset section

    in includes/modules/pages/checkout_success/header_php.php
    I added a line like this: session_unregister("payment");
    near the end of the file.

    in includes/templates/theme027/templates/tpl_checkout_success_default.php
    I added a line to try display this value...I forget now how I wrote this, but it was some sort of simple php echo type line.

    That didn't work, so then I tried this:

    in includes/modules/pages/checkout_process/header_php.php
    I took out the session_register line that I had added before, and then
    I commented out this line: unset($_SESSION['payment']);

    I don't remember if I did anything to checkout_success/header_php.php this time or if I just left the unregister command in there as before.

    Well...that didn't work either, so I tried to put everything back as I found it, but still the final success page would not display.

    I then went back to my latest backup files (from that same morning) and copied over the files with the backed up versions which previously worked perfectly. Still the success page would not display.

    One possible clue: A payment module (called Alipay in China; similar to Paypal in the USA) that I had already installed and confirmed was working, now is not working properly and gives me an error code "ILLEGAL_SIGN" when I jump to their page after order confirmation. Of course, it never jumps to the success page because of this error.

    Thanks for your help!

  8. #8
    Join Date
    Jan 2004
    Posts
    66,444
    Plugin Contributions
    279

    Default Re: Customizing Checkout Success Page Note based on Payment Method?

    Quote Originally Posted by thomasw98 View Post
    Well...that didn't work either, so I tried to put everything back as I found it, but still the final success page would not display.

    I then went back to my latest backup files (from that same morning) and copied over the files with the backed up versions which previously worked perfectly. Still the success page would not display.
    Did you DELETE any ADDED files that you created by trying all your changes?

    The cause of a page not displaying is 95% because of a PHP syntax error created in one of your files. Usually it's a language file or a template file.
    .

    Zen Cart - putting the dream of business ownership within reach of anyone!
    Donate to: DrByte directly or to the Zen Cart team as a whole

    Remember: Any code suggestions you see here are merely suggestions. You assume full responsibility for your use of any such suggestions, including any impact ANY alterations you make to your site may have on your PCI compliance.
    Furthermore, any advice you see here about PCI matters is merely an opinion, and should not be relied upon as "official". Official PCI information should be obtained from the PCI Security Council directly or from one of their authorized Assessors.

  9. #9
    Join Date
    Jan 2004
    Posts
    66,444
    Plugin Contributions
    279

    Default Re: Customizing Checkout Success Page Note based on Payment Method?

    Quote Originally Posted by thomasw98 View Post
    One possible clue: A payment module (called Alipay in China; similar to Paypal in the USA) that I had already installed and confirmed was working, now is not working properly and gives me an error code "ILLEGAL_SIGN" when I jump to their page after order confirmation. Of course, it never jumps to the success page because of this error.
    I'm inclined to say that this problem is unrelated to your other one ... unless that's the only payment module you're using ... in which case it could very well be the exact cause.
    .

    Zen Cart - putting the dream of business ownership within reach of anyone!
    Donate to: DrByte directly or to the Zen Cart team as a whole

    Remember: Any code suggestions you see here are merely suggestions. You assume full responsibility for your use of any such suggestions, including any impact ANY alterations you make to your site may have on your PCI compliance.
    Furthermore, any advice you see here about PCI matters is merely an opinion, and should not be relied upon as "official". Official PCI information should be obtained from the PCI Security Council directly or from one of their authorized Assessors.

  10. #10
    Join Date
    Jan 2004
    Posts
    66,444
    Plugin Contributions
    279

    Default Re: Customizing Checkout Success Page Note based on Payment Method?

    Quote Originally Posted by dcmall View Post
    Hi, wonder if anyone have any clue how to customize the checkout_sucess page so that different messages can be display upon completing final step - Confirm the Order - based on the payment method processed.

    E.g.

    1. If the Payment Method = Cheque / Money Order
    Message: Your order has been received. Please note that your order will be delivered upon confirmation of payment. Please ensure you quote your order number when making payment.

    2. If the Payment Method = Express Check out with Paypal
    Message: Your order has been received and payment confirmed. Your order will be processed for shipment the next working day.

    3. If the Payment Method = Cash on Delivery
    Message: Your order has been received. We will be in touch with you by the next working day to arrange your delivery appointment.

    Thanks in advance.

    dcmall
    Quote Originally Posted by DrByte View Post
    You'd need to set a session variable in the checkout_process header_php.php before the unset() of session-payment information.

    Then read that session variable in the checkout_success header_php.php, and then unset that session variable after reading its value.
    Quote Originally Posted by dcmall View Post
    DrByte,

    How to I set a session variable in checkout_process header_php.php and how do I read the session variable in the checkout_success header_php.php?

    I know where to open the two files, but when it comes to coding, I really do not know how to set and read the session variable for the above said purpose.

    I know nuts of php. Appreciate if you could give some guidance.

    Looking forward to your prompt guidance...


    Perhaps you'll consider making a donation to the Zen Cart project for this custom code:

    1. edit /includes/modules/pages/checkout_process/header_php.php
    Add the slashes, as shown:
    Code:
    //  unset($_SESSION['payment']);
    2. edit /includes/modules/pages/checkout_success/header_php.php
    after this:
    Code:
    // if the customer is not logged on, redirect them to the shopping cart page
    if (!$_SESSION['customer_id']) {
      zen_redirect(zen_href_link(FILENAME_TIME_OUT));
    }
    SCRATCH THAT ... look for this instead:
    Code:
    require(DIR_WS_MODULES . zen_get_module_directory('require_languages.php'));
    and add this below it:
    Code:
      $payment_instructions_message = 'Thank you for your order';
      if (defined('TEXT_PAYMENT_MESSAGE_' . strtoupper($_SESSION['payment']) ))  $payment_instructions_message = constant('TEXT_PAYMENT_MESSAGE_' . strtoupper($_SESSION['payment']) );
      unset($_SESSION['payment']);
    3. Edit /includes/languages/english/YOURTEMPLATE/checkout_success.php
    Add new defines for each of your required payment modules, following the pattern:
    Code:
    define('TEXT_PAYMENT_MESSAGE_MONEYORDER', 'Your order has been received. Please note that your order will be delivered upon confirmation of payment. Please ensure you quote your order number when making payment.');
    define('TEXT_PAYMENT_MESSAGE_PAYPALWPP', 'Your order has been received and payment confirmed. Your order will be processed for shipment the next working day.');
    define('TEXT_PAYMENT_MESSAGE_COD', 'Your order has been received. We will be in touch with you by the next working day to arrange your delivery appointment.');
    4. edit /includes/templates/YOURTEMPLATE/templates/tpl_checkout_success_default.php
    find this:
    Code:
    <div id="checkoutSuccessOrderNumber"><?php echo TEXT_YOUR_ORDER_NUMBER . $zv_orders_id; ?></div>
    add this on a line below it:
    Code:
    <div id="checkoutSuccessMessage"><?php echo $payment_instructions_message; ?></div>
    Last edited by DrByte; 2 Sep 2007 at 03:47 AM. Reason: correction to step 2
    .

    Zen Cart - putting the dream of business ownership within reach of anyone!
    Donate to: DrByte directly or to the Zen Cart team as a whole

    Remember: Any code suggestions you see here are merely suggestions. You assume full responsibility for your use of any such suggestions, including any impact ANY alterations you make to your site may have on your PCI compliance.
    Furthermore, any advice you see here about PCI matters is merely an opinion, and should not be relied upon as "official". Official PCI information should be obtained from the PCI Security Council directly or from one of their authorized Assessors.

 

 
Page 1 of 3 123 LastLast

Similar Threads

  1. shipping method based on payment method?
    By psr racing in forum Built-in Shipping and Payment Modules
    Replies: 2
    Last Post: 27 Apr 2011, 01:25 PM
  2. Customizing Checkout Success Page Note based on Product Purchased
    By redknights11 in forum Templates, Stylesheets, Page Layout
    Replies: 4
    Last Post: 29 Mar 2009, 07:26 AM
  3. Replies: 9
    Last Post: 13 Dec 2007, 04:45 PM
  4. Customizing checkout success page
    By s_p_ike in forum Addon Payment Modules
    Replies: 2
    Last Post: 16 Oct 2006, 02:59 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
disjunctive-egg