Search code examples
phppaypalpaypal-ipn

PayPal IPN Has Stopped Returning Verified Notifications


Evening all,

I have a paypal IPN in place on my sites it has been working solidly for 2 years+ but recently its just stopped working and personally I cannot figure out why.

If I am to visit the paypal_ipn.php file "http://www.top-proxies.co.uk/modules/selected_proxy/paypal_ipn.php" I get a email from paypal stating the following

FROM UKNOWN Failed Item:
Amount and Status: (Fee: ) Date:
Length of Time:
Site URL:
Contact Email:
Txn Id:
From: () To:

which indicates its still working in some respects.

However when someone completes a purchase on my site they payment is made but no IPN verification email comes through to follow and therefore my site will not automatically list the advertisement spot.

Does anyone have any suggestions? No code has been changed recently so has paypal updated their system or anything like that recently?

Added additional information:

    <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
        <div class="form-group">   
            <input type="hidden" name="cmd" value="_xclick">
            <input type="hidden" name="business" value="<?php echo $paypalemail; ?>">
            <input type="hidden" name="lc" value="IN">
            <input type="hidden" name="item_name" value="<?php echo $sitename; ?> Advertise">
            <input type="hidden" name="item_number" value="Proxy Advertisement"> 
            <input type="hidden" name="button_subtype" value="services">
            <input type="hidden" name="currency_code" value="USD">
            <input type="hidden" name="bn" value="PP-BuyNowBF:btn_buynowCC_LG.gif:NonHosted">
            <input type="hidden" name="image_url" value="<?php echo $sitelogo; ?>">
            <input type="hidden" name="return" value="<?php echo $scriptroot; ?>success.php">
            <input type="hidden" name="cancel_return" value="<?php echo $scriptroot; ?>failed.php">
            <input type="hidden" name="notify_url" value="<?php echo $scriptroot; ?>modules/selected_proxy/paypal_ipn.php">
            <br>
            <label>Advertisement Plan:</label>
            <br>
            <input class="form-control" type="hidden" name="on0" value="Length of Time">
            <select class="form-control" name="os0" id="os0" onchange="fun()">
                <?php
                for ($j = 0; $j < count($selected_plans); $j++) {
                    echo '<option  class="form-control" value="' . $selected_plans[$j][2] . ' Days">' . $selected_plans[$j][1] . '</option>';
                }
                ?>
            </select>
            <br>
            <label>Proxy Site URL (with <strong>http://</strong> and <strong>www</strong>):</label>
            <br>
            <input type="hidden" name="on1" value="Site URL">
            <input class="form-control" type="text" name="os1" maxlength="200">
            <br>
            <label>Contact Email:</label>
            <input type="hidden" name="on2" value="Contact Email">
            <br>
            <input class="form-control" type="text" name="os2" maxlength="200">
            <input type="hidden" name="currency_code" value="USD">
            <?php
            for ($j = 0; $j < count($selected_plans); $j++) {
                echo '<input type="hidden" name="option_select' . $j . '" value="' . $selected_plans[$j][2] . ' Days">
                <input type="hidden" name="option_amount' . $j . '" value="' . $selected_plans[$j][3] . '">
                ';
            }
            ?>
            <br>
            <label>Pay Via Paypal:</label>
            <br>
            <input type="hidden" name="option_index" value="0">
            <input type="image" src="https://www.paypalobjects.com/en_US/i/btn/x-click-but23.gif" border="0" name="submit" alt="PayPal � The safer, easier way to pay online."><br>
            <input type="image" src="https://www.paypalobjects.com/en_US/i/bnr/horizontal_solution_PP.gif" border="0" name="submit" alt="PayPal � The safer, easier way to pay online.">
            <img alt="" border="0" src="https://www.paypalobjects.com/en_GB/i/scr/pixel.gif" width="1" height="1">
        </div>
    </form>

Solution

  • After revisiting my code and double checking nothing had been changed it would seem the issue was on the PayPal side! Somehow my PayPal IPN settings had been switched off (Disabled) on my business account. After re entering my IPN address for verification and testing my payments i got the correct response back from PayPal and everything is working again :D

    to find your paypal IPN settings you go to "My Account" > "Profile" > "My Selling Preferences" then select update IPN settings from that page.

    Good Luck hopefully this helps someone!

    Cheers, Ant.