Paypal orders not producing correct file


We have a Magento e-commerce site that's interacts with our Point of Sale program. When an online order is produced, the systems creates an xml file and inserts it into a folder on the web host server and then this file is downloaded into our Point of Sale. The system works correctly when the order is paid for using eWay however there are some inconsistencies when the order created is paid for using PayPal. When a PayPal order is produced, the xml file is sometimes produced and stored in the correct folder however at other times, this xml file is not produced at all. The problem only occurs for PayPal orders, not eWay orders and it only happens sometimes, not all the time.

I know that my question only gives a general description of the problem but I wondered if anyone has come across this issue before and whether any advice could be given as to why it may be happening?

I'd be really grateful for any help.
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Andrew AngellCo-Owner / DeveloperCommented:
What steps have you taken to troubleshoot the IPN's at this point?  You need to see where it's failing, and then you can start to figure out why.

It sounds like you've probably an error in the code that processes transactions, but it only comes up with certain txn_type's or maybe when certain characters are present in the data, for example.  

Check your PayPal IPN History to see if it's showing any details in there.  Also check your web server logs.

One thing you can do, too, is build a basic HTML form with hidden fields that match the data you would get from an IPN on an order that you know failed.  Then you can submit this directly in a browser and see the results on screen, so you'd see any PHP errors that may be happening and causing the failure.

Again, though, the logs should be enough to tell you what you need to know.
gwh2Author Commented:
Thanks for the reply, I might check the PayPal IPN history as you suggested. I'll report back once I've done that.
gwh2Author Commented:
Hi, I found that the receipt of IPN messages was turned off in Paypal so I don't have access to any IPN history, however I was able to access the web server file called payment_paypal_standard.log. I have some information for the transaction that failed but can you let me know exactly what I'm looking for in the log to troubleshoot this issue? I've also got the logs for the two other PayPal transactions that were successful but I'm not sure what I need to look for to compare the successful and unsucessful logs.

Appreciate any further advice.
Rowby Goren Makes an Impact on Screen and Online

Learn about longtime user Rowby Goren and his great contributions to the site. We explore his method for posing questions that are likely to yield a solution, and take a look at how his career transformed from a Hollywood writer to a website entrepreneur.

Andrew AngellCo-Owner / DeveloperCommented:
Does it show whether or not the IPN's were verified/valid or unverified?  I'm thinking maybe you have logic in your code that doesn't generate the XML if the IPN is unverified, for example, and there is something causing certain transactions to return unverified.  Just a guess.
gwh2Author Commented:
Hi, yes it shows the following for all 3 PayPal transactions:

            [payer_status] => verified

So there's no difference between the successful and unsuccessful transactions. I've compared the IPN array generated by the server logs for both the successful and unsuccessful transaction and I can't see any difference.

Is there anything else I could be looking for?
Andrew AngellCo-Owner / DeveloperCommented:
That's not the same thing.  This would be an IPN status, and it's not actually part of the data that comes with the IPN, but instead, a value you get back from their server when you POST the data back to PayPal for verification within your script.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
gwh2Author Commented:
Ok thanks - I don't think I have the skills to troubleshoot this so I think I'd better see if I can find someone who has access to the files and is more skilled in php that I am.

Thanks anyway for your help.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.