Results 1 to 7 of 7
  1. #1
    Join Date
    Mar 2009
    Posts
    8
    Plugin Contributions
    0

    Default [Done v1.3.9] Express checkout strange behaviour

    Hi,

    I'm having an issue with the express checkout when I set my products to virtual (which they are). When I click on confirm order I get redirected to paypal, which is normal, I log in, then I get a screen on Paypal that asks to confirm my information, which is only payment method and email address, and click continue. No where on this screen does it show the amount to be paid. Clicking continue, I would have thought would bring to a screen with a pay button, but it takes me back to my site's confirmation page (step 3 checkout page). If I click confirm again the order goes through. I checked the logs and it seems to indeed be doing a transaction but I find this process very odd. It's much smoother if I removed the virtual flag and use free shipping. Then after connecting to paypal I get a screen with the amount to be paid and a "Pay" button, then it takes me directly to the order confirmation page.

    Any ideas on this?

  2. #2
    Join Date
    Mar 2009
    Posts
    8
    Plugin Contributions
    0

    Default Re: Express checkout strange behaviour

    ok well I've hacked a solution here but maybe someone can explain this.

    After tracing through the code I think I've found the problem to be here:

    paypalwpp.php

    function ec_step2_finish

    lines 2012 and 2195, it's the same in two places

    PHP Code:
    if ($_SESSION['paypal_ec_markflow'] == 1) {
     
    $this->terminateEC(''falseFILENAME_CHECKOUT_PROCESS);
    } else {
     
    $this->terminateEC(''falseFILENAME_CHECKOUT_CONFIRMATION);

    So I've basically just commented this out and just use this every time:
    PHP Code:
    $this->terminateEC(''falseFILENAME_CHECKOUT_PROCESS); 
    So far I see no negative side effects. I checked the CURL log and the DoExpressCheckout is successful. So can anyone tell me what 'paypal_ec_markflow' actually means, and why it's set to one when there's shipping involved, and not with virtual products???

    Thanks

  3. #3
    Join Date
    Jan 2004
    Location
    N of San Antonio TX
    Posts
    9,211
    Plugin Contributions
    11

    Default Re: Express checkout strange behaviour

    Before hacking a solution, it might be best to check the forum for the latest PayPal fixes.

  4. #4
    Join Date
    Mar 2009
    Posts
    8
    Plugin Contributions
    0

    Default Re: Express checkout strange behaviour

    I spent a lot of time searching for a proper fix, I'd much prefer that, but I didn't find anything and this seems to work.

  5. #5
    Join Date
    Jan 2004
    Posts
    66,391
    Blog Entries
    7
    Plugin Contributions
    81

    Default Re: Express checkout strange behaviour

    The markflow should *only* be set to 1 when you choose PayPal from the checkout_payment screen, and NOT when you choose it via the Express Checkout button.
    .

    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.

  6. #6
    Join Date
    Mar 2009
    Posts
    8
    Plugin Contributions
    0

    Default Re: Express checkout strange behaviour

    ok, then it seems there is a bug since I am selecting paypal from the checkout_payment screen but markflow isn't getting set.

    I haven't tested express checkout so I'm guessing that might fail with my hack. But I still need to figure out why the markflow doesn't get set when I'm using virutal products.

  7. #7
    Join Date
    Jan 2004
    Posts
    66,391
    Blog Entries
    7
    Plugin Contributions
    81

    Default Re: Express checkout strange behaviour

    A more correct solution to your problem would be to make the following code edit, instead of the ones you reported earlier:

    /includes/modules/payment/paypalwpp.php
    around line 449, add the new line shown:
    Code:
      function process_button() {
        if ($this->in_special_checkout() || $this->enableDirectPayment == false) {
          $process_button_string = '';
          $_SESSION['paypal_ec_markflow'] = 1;
        } else {
          $_SESSION['paypal_ec_markflow'] = 1;
          $process_button_string = zen_draw_hidden_field('ec_cc_type', $_POST['paypalec_cc_type']) .
    .

    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.

 

 

Similar Threads

  1. v139h strange Javascript behaviour
    By skylab001 in forum General Questions
    Replies: 1
    Last Post: 23 Feb 2012, 05:14 AM
  2. Strange Behaviour
    By rogers in forum Setting Up Categories, Products, Attributes
    Replies: 0
    Last Post: 4 Apr 2008, 11:57 AM
  3. strange cursor behaviour in IE
    By niekohle67 in forum General Questions
    Replies: 5
    Last Post: 20 Aug 2007, 07:59 PM

Bookmarks

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
Zen-Cart, Internet Selling Services, Klamath Falls, OR