Verifying PayPal IPN fails if there are non-ascii characters

Using request.POST.urlencode() to store the IPN query will cause the IPN to be marked as invalid when it goes to verify the IPN against paypal. When possible, one should use the raw_post_data instead.