[Django]-How to debug Django PayPal IPN?

1👍

I recall having hit (something like) this when using django-paypal too. I can’t remember for sure what my cause was, but have you created/migrated the appropriate IPN tables in your database after including the ipn app in your setttings.py?

4👍

In your django settings.py file, set DEBUG = False

Then for any HTTP 500s (incl. for those being returned to PayPal), you’ll be sent a debugging email with all the python stack information.

You’ll need to have Django email already set up for this to work, see http://docs.djangoproject.com/en/dev/howto/error-reporting/ for more info on that

2👍

You can install a Poster Add-on and make a POST to IPN notify_url from the browser. You will get a Response with all errors. Pretty helpful for debugging.

👤Aldo

2👍

I just ran into the same problem and this was what I did wrong. Just in case anyone else is as silly as me…

Do not change the method signature from the wiki’s
def show_me_the_money(sender, **kwargs):
to something like
def show_me_the_money(ipn, **kwargs):

Reason: in paypal.standard.ipn.models.PayPalIPN.send_signals the listeners are being called with a named argument: payment_was_successful.send(sender=self)
Therefore the method has to have an argument called sender.

Leave a comment