Simple IPN: Free Paypal IPN PHP Script for Digital Download Products

 

 

[ DOWNLOAD SIMPLE IPN ]

I was running a class for my Netpreneurs Online Classroom and we got to the part where we are suppose to learn how to deliver our downloadble digital products.

I don’t want to make this complicated for my students. I want to make this simple, but at the same time offers some form security from online thefts. So I started thinking of a simple script that should be able to do the following:

  • Expiring download link
  • Expiring download page
  • Minimum setup
  • No database required
  • Uses Paypal IPN
  • Emails the customers with their download info
  • Customizable download page, thank you page and email
  • Multiple files product package
  • Allows Paypal Sandbox testing
  • No need to create the Paypal Button form - will generate for you
  • Don’t have to understand Paypal IPN - just know that it’s more secure
  • Strict verification process - verifying price, Paypal email address and currency

HOW TO USE / INSTALLATION

  1. Update settings.php with your products info and Paypal details.
  2. Upload the files your chosen directory
  3. From your sales page, link your order button to:

    ipn.php?buy

    DONE!

  4. Optionally, modify the template files to change the look and feel of the download page and thank you page.
  5. Optionally, send me $10 to remove the little ads credit on the download page and thank you page. Details below.

FILES

  • ipn.php - handles IPN and buy button creation
  • settings.php - your product & Paypal settings
  • dl.php - handles file download
  • page.php - handles download and thank you page
  • tpl_tqpage.html - thank you page template
  • tpl_dlpage.html - download page template
  • functions.php - functions required
  • style.css - optional stylesheet
  • sample.pdf - sample download file
  • sample.mp3 - sample download file
  • XXXXXXXXXXXXXXXXX.php - generate customer info file

CHANGING SETTINGS.PHP

Most of the variables in settings.php are self-explanatory.

CUSTOMIZATION

You can customize the look and feel of the script. To change the download page, edit tpl_dlpage.html.

The following variables are available for the DOWNLOAD PAGE:

  • {PAYPAL TXN ID} - transaction ID
  • {CUSTOMER NAME} - customer name
  • {CUSTOMER BUSINESS NAME} - business name, if any
  • {CUSTOMER PAYPAL EMAIL} - customer’s Paypal email
  • {PAYPAL PURCHASE DATE} - purchase date
  • {EXPIRE DATE} - expired date (in unix timestamp)
  • {DOWNLOAD PAGE URL} - download page URL
  • {DOWNLOAD TIME LEFT} - time left in hours
  • {DOWNLOAD TIME} - time set in hours
  • {PRODUCT PRICE} - price paid
  • {PRODUCT NAME} - product name
  • {SUPPORT EMAIL ADDRESS} - your support email address
  • {DOWNLOADS1} - lists downloadable files style 1
  • {DOWNLOADS2} - lists downloadable files style 2
  • {DOWNLOADS1|expire message} - optional expire message
  • {DOWNLOADS2|expire message} - optional expire message

The thank you page is the page the customer will arrive at when the click on Return To Merchant at Paypal.com. You can setup a squeeze page there, using the following variables in redirect URL or custom fields.

To edit the THANK YOU page, edit tpl_tqpage.html. The following variables are available for you in the thank you page template:

  • {PAYPAL TXN ID} - transaction ID
  • {CUSTOMER NAME} - customer name
  • {CUSTOMER BUSINESS NAME} - business name, if any
  • {CUSTOMER PAYPAL EMAIL} - customer’s Paypal email
  • {PAYPAL PURCHASE DATE} - purchase date
  • {PRODUCT PRICE} - price paid
  • {PRODUCT NAME} - product name
  • {SUPPORT EMAIL ADDRESS} - your support email address
  • {DOWNLOAD PAGE URL} - download page URL

An email will be sent out to customers after the purchase. You can customize this email from settings.php.

DOWNLOAD LIST STYLE

To list out downloadable files, you can use the following template variables.

  • {DOWNLOADS1} - lists downloadable files style 1
  • {DOWNLOADS2} - lists downloadable files style 2
  • {DOWNLOADS1|expire message} - optional expire message
  • {DOWNLOADS2|expire message} - optional expire message

{DOWNLOADS1} will output the files in this manner:

<ul id='dlist'>
<li>Sample Audio MP3 <small>[ <a href='dl.php?id=6V001313X66714025&file=0'>DOWNLOAD</a> ]</small></li>
<li>Sample PDF eBook <small>[ <a href='dl.php?id=6V001313X66714025&file=1'>DOWNLOAD</a> ]</small></li>
</ul>

{DOWNLOADS2} will output the files in this manner

<ul id='dlist'>
<li><a href='dl.php?id=6V001313X66714025&file=0'>Sample Audio MP3</a></li>
<li><a href='dl.php?id=6V001313X66714025&file=1'>Sample PDF eBook</a></li>
</ul>

When the download link has expired, the expired message will be put out in a <p> tag, with ID "expired". Here’s an example:

<p id='expired'>Your download has expired</p>

You can use the ID’s “dlist” and “expired” to style your download page with CSS.

MULTIPLE PRODUCTS

While Simple IPN can work with multiple files in your product package, Simple IPN is not designed to cater for multiple products.

To use Simple IPN on your other products, copy the files of Simple IPN into a new folder and define your settings in the settings.php file.

Just like how you previously link to ipn.php?buy, do the same for this new product. Make sure you link to the right file from the right folder.

CREDITS

This script is given to you free of charge. I do however request that you leave the small ad credit on the Download Page and the Thank You Page intact.

SUPPORT

I don’t plan to spend a lot of time on support for this little script, unless you are paid user. And that also does not include customization, add-ons, feature requests, etc.

If you need help with Simple IPN, my advice to you is to first go through this page again. And from time to time, I may add updates to this page. Secondly, you may want to read the comments below.

You can also write your own comments there.

And lasty, if you don’t mind, show me where you are using this script.

UPDATE

18 September 2009 - Found that most of the problems users are facing when Transaction File is not created, is because they are using PHP4 while SimpleIPN was coded for PHP5. I changed the codes to be working with PHP4 instead now. You can download the new compilation and give a try.

Another problem with emails not being sent, it could be because the web hosting has some rules about sending email where the From email is not hosted by the server. To be safe, only use email address that is managed by the server for $support_email_address.

8 March 2010 - I found that the Thank You Page would now work if you have Auto Return turned on in your Paypal Profile. You need to turn it off, or have it disabled. Read more about Auto Return

[ DOWNLOAD SIMPLE IPN ]

 

REMOVING THE AD CREDIT - $10 ONE-TIME FEE

If you want to remove the little ad credit from the script, all I ask is just a small $10 fee. With this, you will also get the full raw source code to the script. You may use the script in any way you want.

Proceed to the link below to buy:

http://www.minisitegallery.com/simpleipn/ipn.php?buy

p.s. ~ this is a real live example of Simple IPN

 

273 Responses to “Simple IPN: Free Paypal IPN PHP Script for Digital Download Products”

  1. The Easy Way To Protect Your Digital Download With Paypal IPN -- MiniSiteGallery.com said:

    [...] - August 18, 2009: I just created Simple IPN, a free Paypal-IPN PHP script. Click here to read more about it. [...]

  2. Glen said:

    Hi,

    The script is a great idea, but can be a pain for the average person to edit the various elements of the script, since many people are not savvy in that area.

    IMO, I think you bundle the script with a GUI that the user can work through easily to modify the various element.

    It’s like putting together a price of software.

    Then I think you could ’sell it’ for a good price, because there would be good value in that

  3. Garret said:

    I agree with Glen. I’ve got years of building commercial and non -commercial scripts. The gui would make all the dif in the world.

  4. admin said:

    Geln, Garret … the settings.php is quite simple actually. Give it a try and then send me another comment, OK. With Simple IPN, you don’t need to bother with database setup, no messy Paypal Button form creation, etc… just that little settings.php.

    Of course, I still agree with Garret, a GUI would make a difference in the world.

    Maybe a newer update/version.

  5. Free Paypal IPN script for digital products - for everyone! - WarriorForum - Internet Marketing Forums said:

    [...] script, writing docs, etc… and now you can get it for free. Just download it from my website: Simple IPN: Free Paypal IPN PHP Script for Digital Download Products — MiniSiteGallery.com Feedbacks, comments, help… we can discuss it here or you can add comments to my [...]

  6. Steve said:

    Hey, thanks for sharing this cool script with us :)

    I am going to use this to sell my ebook!

  7. Alan said:

    Okay Glen and Garret you better move on over because this FREE Simple Pin does wonders for a lot of us that are still behind you on the upward path to becoming like you!

    Well perhaps it doesn’t go that far but I do know that it is going to be an enormous help for at least this one person.

    many thanks for supplying it in the first place and for keeping the cost at a place where it doesn’t prevent us from gaining the benefit in the first place.

    I will send you the link to my first product so that you can test out the customization I have to do.

  8. Kidino said:

    Thanks for the glowing support Alan. And Glen and Garret, don’t be taken back by Alan or anything. I know you are just giving good recommendations and I value it.

  9. Simple IPN: Free Paypal IPN PHP Script for Digital Download … « AdsBidWorld said:

    [...] Here is the original:  Simple IPN: Free Paypal IPN PHP Script for Digital Download … [...]

  10. Blog Perniagaan Internet said:

    Hello.. thank God coz you share this great script with us. Thanks again.. ;-D

  11. Simple IPN: Free Paypal IPN PHP Script for Digital Download … | Top Digital Products UK said:

    [...] Go here to read the rest: Simple IPN: Free Paypal IPN PHP Script for Digital Download … [...]

  12. Sahed said:

    I’m use paypal ipn script on my website http://www.nagayaaffiliate.com The product automatc send to customer email with expr time. The script can use multpl prodct.

  13. Kidino said:

    OK guys, I hope this commenting will not start any script is better than this script. I know the shortcomings of this script and it is for a reason. If you want a full-blown system, then get DLGuard (which I also use).

    Simple IPN is meant to be simple, easy to use and FREE.

    If you want that, take it….

  14. mike beckloff said:

    I am making this comment to further notify you that I do not wish to receive your emails, cancel any membership and do not charge me any fees . Thanks Mike Beckloff

  15. ASU Service said:

    Thank you for the script! I haven’t installed it yet but it appears to be much more powerful than similar scripts costing $25 or more.

  16. Kidino said:

    Alright! A real testimonial. Cool. Mind sharing a sample download page? ;) You know that you can style your download page ANY WAY YOU WANT, right? And with CSS, it doesn’t even have to look like what I compiled for you.

  17. Steve Diamond said:

    Hi. Great giveaway! Thanks a lot!

    When you say that after paying the $10 fee “You may use the script in any way you want,” does that include rewriting it, rebranding it, and selling it?

  18. Kidino said:

    Hello Steve. Thanks for asking. Maybe I should be a lot clearer on that. I don’t mind if you get the $10 version and use it on as many sites you want, on as many clients’ sites you want, modify it your way, in any way…

    But when it’s rewriting, rebranding and reselling…

    Hmm… so what’s the answer for this?

    The lazy part of me says, “the heck, just don’t care”

    The greedy part of me says, “hey, you are entitled to some compensation”

    What do you think??

  19. Muaz said:

    Assalamualaikum mr kidino ,

    I have installed the script and test it live but its seem not working very well , script send email of download detail but when i clicked the download link it show ” Purchase Details Not Found. Contact Administrator. “

  20. Kidino said:

    @Muaz - It could be that the IPN failed to create the customer details. In most cases, when you upload the script to the server, the script already has write permission to the folder. Try chmod 777 the folder where you uploaded the script.

    Since this is new, I’d be happy to troubleshoot this for you. I could add this to the docs too. Check your email about details on how to contact me… I sent you one.

  21. Buy Master Resell Right products at very low price said:

    Thank you. Visit our site Http://Products.money-making-kew.com

  22. Steve Diamond said:

    Kidino, here’s what I think about reselling it. If I do get to that point I’ll set you up as an affiliate with a JV-level commission. I’m not contemplating a high price tag, so don’t get too excited about the possibilities. But I certainly think you deserve a cut.

  23. Didier said:

    Thank you Kidino.

    I purchased the source code version to support your efforts.

    Didier

  24. Kidino said:

    @Didier - Thanks!

    @Steve Diamond - Thanks too! I understand.

  25. pjCheviot said:

    Hi Kidino

    I have purchased the unbranded script - what a great piece of code!

    I think it may be an idea to leave the “branded” code facility in there - so that people could add their own pop-up message - rather than deleting it? Just a thought!

    Thanks again for the source code! Great Stuff!!

    Regards
    pj

  26. TX CHL Instructor said:

    I initially had problems with the paid product download. It said there was no record of the transaction. Turned out I was just too impatient; I went back a few minutes later to try again (wanted to document the exact error message) and it worked. Got a good download.

    You might want to put a short pause in the script so that the DB can update from PayPal, or put in a warning that it may take a minute or two for the transaction to complete.

    I’m mainly interested in examining your script because I’m in the process of teaching myself PHP (been a C++ programmer for 3 decades now), and I’m looking for ideas for improving the simple PHP script I wrote to handle class registration for my CHL classes (http://www.chl-tx.com). $10 is a real bargain to look at known working code that does something similar to what I want. Examining other’s code is the fastest way to come up to speed in any programming language.

    Depending on how much time I can shake loose for this, I may want to collaborate with you on some PHP projects.

  27. Kidino said:

    Thanks for the feedback Howard. Yeah, I suppose there was a bit of a delay with the IPN. Paypal was not fast enough to send the notification to the IPN handler, so the customer got the thank you page before the Paypal can send the notification for the handler to create the customer’s detail file.

    In my earlier development, I had something like this in the thank you page “Our system is still processing your order. Once it is done, you can download your purchase from {DOWNLOAD PAGE}”.

    Maybe I should put that there… :)

    Yeah, looking forward to working with you on PHP. And I agree with you, when you are a programmer (any language), the fastest way to learn another language is to look at examples, etc…

    When it comes to the web, I think PHP is best.

  28. Jerry Leventer said:

    Looks great, Kidino. This will be helpful for a lot of people.

  29. admin said:

    Yep. Thanks for dropping by, Jerry.

  30. Peter Koning said:

    Will this support a 3rd party affiliate tracking system where an affiliate gets a unique link to the sales page and the sale tracking code can be added to the confirmation page?

    Let me know and I’ll tweet/blog this for you Kidino.

    Cheers.

  31. Kidino said:

    Hello Peter. Of course it supports 3rd party affiliate systems. Since you have access to customize the Thank You Page and the Download Page, you can put the affiliate system’s code there. Oh, you also get transaction ID variable and amount, if that is need too in the affiliate system code.

  32. Nick Tart said:

    Hey Kidino,

    This seems like an awesome script, but I can’t get it to work properly. I can get through the PayPal transaction just fine, and then I click “Return to Merchant Site” and it takes me to the “Thank you for purchasing…” page. Dandy!

    But when I click “Click here to proceed to the download page.” it just says “Purchase Details Not Found. Contact Administrator.” I saw in a previous comment that you recommended chmod 777 the simpleipn folder. But I don’t know how to do that.

    Also, I purchased it in production mode and have yet to receive the automated email.

    Do you have any suggestions? They would be much appreciated!

    Thanks,
    Nick

  33. Matt said:

    Hi Iszuddin,

    What a great freebie script you are providing here. It looks much more powerful than some of the paid IPN scripts I’ve seen.

    Also, I agree with Glen and Garret. An Admin/Setup GUI would make a world of difference for this cool little script. I think they do realize that editing the settings.php script itself is pretty straight forward and easy to understand, however, there’s a vast majority of folks out there that simply hate editing scripts manually and/or are simply too intimidated by the code and become confused as to what they are supposed to do.

    Providing a simple setup GUI would address this issue and make your little Simple IPN script quite saleable. It really wouldn’t even be very difficult to do. But if you really can’t be bothered to write the setup wizard, there are tools that can code it for you. One such tool is available at:

    http://www.apphp.com/php-easyinstaller/index.php

    I know there are other, similar scripts that do the same thing but that was the one I could think of off the top of my head.

    Anyway, thanks for the cool script.

    Matt

  34. Kidino said:

    @Matt - Thanks for sharing this Matt. I will look into it. Among the reasons why I am not so keen on developing a GUI is I don’t want to make the script big. Wanna keep it small… but I will look into your recommendation.

    @Nick - Referring to my reply to TX_CHL, I suspect that there’s a delay in the IPN data. What you can do is don’t give the link to the download page in the thank you page. The customer will get an email when the IPN data is processed. You can easily remove the link to the download page in the tpl_tqpage.html

    I will look into your purchase and will get back to you.

  35. Matt said:

    Hi again,

    I understand you don’t want to make the script big and I don’t blame you there. No need to bloat it up with a bunch of unnecessary code. But I don’t really think it would make it much bigger than it already is.

    Basically, you would just write one more file called setup.php which would provide simple instructions on how to set it up and give the user a GUI interface to change all the settings in settings.php w/o having to manually edit the file in notepad.

    In other words, they would upload the script and point their browser to setup.php which would list all the customizable variables in settings.php and provide a text input to type in your custom info. There would be a button at the bottom of the page to save the new settings. Upon clicking the button, the new info would be written to the settings.php file. The setup.php file would then be deleted so no one else could change the settings.

    Anyway, if you would like to see an example of what I’m talking about, I could upload a script that does this and send you a link via email so you can see for yourself what I mean.

    Let me know if you’d like to see an example.

    Matt

  36. Telephone Investigations – Reverse Phone Search Databases | Business Telephone System said:

    [...] Simple IPN: Free Paypal IPN PHP Script for Digital Download Products [...]

  37. Kidino said:

    Hey Matt, thanks for the feedback. I was thinking of doing something like that. Well, maybe in the next update. That will be a cool addition, eh ..??

  38. Nick Tart said:

    Just to update everyone… I had a problem with this script but this problem was fixed by capitalizing a few letters. Make sure you pay attention to case-sensitivity and the script will work great!

    I recommend it to anyone who asks!

    Thanks for your help, Kidino.

  39. Matt said:

    Kidino,

    Yes, that would be a very cool update. In fact, in the next week or two I may go ahead and just purchase the code and write the setup myself if I can find the time. Right now, I simply cannot afford to get side tracked with it. But in a week or so I may be able to free up some time to work on it. :o)

    Matt

  40. Kidino said:

    Yeah Nick. Thanks for the update. It appears that your email address at Paypal is CASE SENSITIVE. In most cases it’s in all lower case.

  41. Kidino said:

    Sure Matt. No problem.

  42. galihrock said:

    i cant find this files (XXXXXXXXXXXXXXXXX.php) on this script. so it doesnt work..

    when its take to thank you page and i click the download link. its appear :

    “Purchase Details Not Found. Contact Administrator.”

    can u help me?

  43. Kidino said:

    galihrock, one of the two is happening…

    - the IPN data hasn’t arrive yet
    - the ipn.php cannot write to your folder

    with the IPN data, you cannot do much about that. but if it’s the write permission, try giving the folder where you uploaded the files an at least a 666 permission.

  44. Kidino said:

    A QUICK UPDATE: INSTALL GUI COMING SOON… :)

  45. Wang Qianjun said:

    I want to know whether we could use this script for other payment handling panel beyond paypal. We hope to use Alipay (http://www.alipay.com) , one of biggest payment handling panel in China to receive payment for our paid ebook. Could we install and set this script on our web site to handle ebook delivery and aviod ebook copy with thanks?

  46. Kidino said:

    Alipay heh? Well this was created to work with Paypal’s IPN system only.

  47. Free Paypal IPN Script - Viloria.net said:

    [...] one I tested is called Simple IPN, and it works quite well with digital download [...]

  48. Paula said:

    What a great addition to anyone’s toolbox!!

    Thanks for a great script and for giving it away!!

    I must buy the full source code to play around with!!

    Thanks again
    Paula

  49. Reins said:

    Hi,
    Wonderful script. Unfortunately I have been trying to make it work but I cant.
    I keep getting the “Purchase Details Not Found. Contact Administrator.” message.
    I have changed the folder´s permission containing the ipn file to 777 and still not working. Any ideas?
    Thanks.

  50. Kidino said:

    There’s one thing that you can try. Make sure your paypal email is all in lowercase. Don’t do something like MyEmail@Domain.com … instead do myemail@domain.com

    I believe IPN sends data all in lowercase. But if your paypal email address you set in settings are in upper-lower case, then it will not match. Purchase data will not be saved.

  51. Reins said:

    Thanks, I checked the settings file, paypal email is in lower case, but I keep getting same error messsage.

  52. Reins said:

    I just realized the “XXXXXXXXXXXXXXXXX.php” file is not being generated, that might be why this is not working. Any idea how to solve this. Regards.

  53. Kidino said:

    the XXXXXXXXXX file is not being generated either when1) the IPN data cannot be verified 2) ipn.php does not have write privilege 3) connecting to Paypal for IPN verification failed.

  54. lieven said:

    Has anyone tried this with Hostgator hosting?
    the xxxxx.php is not genereated … :(

  55. Paula said:

    I am with Hostgator - and it works perfectly - sorry!! Would the hosting matter?

    Have you seen the thread above yours re the 3 reasons it could be?

    Regards
    Paula

  56. Kidino said:

    First of all, sometimes I write with Kidino, sometimes with Admin. Both are me.

    And Paula, thanks so mentioning that things are working fine with Hostgator. By right, you shouldn’t have problems with any CPanel-based hosting, which Hostgator is. I’ve also tested it on Dreamhost — no problem.

    But I haven’t tested it on a Windows-based hosting. So Windows hosting should beware.

  57. Bernd L said:

    As Musaz said:

    I receive this message after having made a test transaction via test accounts (sandbox). This ist echoed on my Homepage, when the test buyer is sent to download the digital producht

    Purchase Details Not Found. Contact Administrator.

    The chmod of the download folder is 755. Folder withe 777 are not allowed by the host, but normally 755 does ist.

    I hope that you are willing to give me a hint how to workaround this result of your great script!? :-)

    Regards and Thank you from
    Germany

  58. Cheyne said:

    Great script, im having the issues of the file not being generated either, I understand the issue and ill try to debug it myself.

    No need for a GUI, that will just add more complication to an already elegant script , its very simple to setup as it is. My thoughts are that if your that IT illiterate that you cant edit a few simple variables then you really shouldn’t be attempting payment gateways. I certainly wouldn’t want someone building my secure payment systems who cant edit a script file.

    The script can be setup without any prior PHP experience, and the author has done a great job in detailing the variables.

    If I can solve the file write / IPN auth issue, ill pay for a copy of the script for sure.

    Cheers

  59. Cheyne said:

    Still got major problems with the script … All works fine, cept the file isnt generated.

    CHModded everything to 755 , and that still wont work.

    My host wont allow CHMOD 777, when I do it, they wont allow the page to be opened. So thats off.

    Does anyone have this working with 755 ?

    Would appreciate some email support if you’ve got time.. Im an experienced engineer, so no hand holding is needed, just a heads up or some tips on what I should try.

    IPN seems to be working ok … Even forced one out of PayPal , but nothing generates.

    Cheers

  60. Kidino said:

    Actually, you don’t really need a full 777. Even a 666 is enough. 755 won’t work because it does not grant write permission. Try 766 if you can get that to work. Or at least 666.

  61. Cheyne said:

    Called my host , they say 755 is all they will allow .. Very annoying , I cant get this working, the files arent generated.

    Looks like I cant use this script … dammit

  62. Cheyne said:

    There is an alternative solution you may want to consider in further releases.

    For those with the permission errors who are unable to write files to the file system, you may want to have an option to store the transaction number along with the timp stamp into a database instead of creating a file.

    Users download from something like download.php?id=xxxxx , this xxxx is then queried against the database for its presence, and its expiry, if all checks out, present the download, otherwise present the expiry (or non existent) number.

    If you would consider sending me a free copy of your script with the open source, ill look at developing the code my self, and ill supply it back to you, as you’ve already done the hard work.. It just needs some modifications for the permission impaired :)

  63. Kidino said:

    Hello Cheyne, yes. We can do that. But the initial idea was to keep this simple and not have to setup a DB. :) Try asking your host if there’s anything that they can help to solve this. Tell them that a script needs to create files in the folder. Ask them if they have any solutions. Where do you host BTW?

  64. Cheyne said:

    Hey Kidino,

    Already asked, and nope, they wont budge. I told them what I was trying to do, they couldnt care less.

    Yep, fully understand your avoiding databases, and im not suggesting you change your script, I was just just saying that I would like to use your script, although I cant, I can how ever re-write it to work from a database which would solve my problem.
    You dont have to use it, but you may chose to offer it to anyone else who has the same issue as me. (Looks like you’ve got a few).
    I wouldnt mind keeping my purchaser details in a database anyway and was going to look into that.

    Im in Australia, its not a big name host.

    Anyway, you’ve got my email from this post, if your feeling kind enough to send me a copy , ill email back to you what ever I come up with … Use it or dont use it , its up to you.

    Cheers

  65. Tim Toy said:

    Hello Kidino,

    First of all thanks for this great script. Secondly I have an observation/suggestion on the error :

    “Purchase Details Not Found. Contact Administrator.”

    while testing this script in Paypal sandbox, I noticed this problem which is mentioned by some friends above.

    But I also noticed that if you wait for a minute and again refresh this error page, the proper download page with all the file links appears. So it seems that basically the problem relates to late arrival of IPN clearance from Papal.

    I think one probable work around can be to insert a one minute countdown timer on the thank you page and instruct the buyers to click on the download link only after the finishing of the countdown timer (so as to allow for the late arrival of IPN notification from Paypal.) This way we can substantially reduce the occurrence of this error.

    Just a thought. What do you think?

  66. Kidino said:

    Hello Tim, an alternative I mentioned earlier was to update the thank you page and tell them to wait for the download email. :)

  67. Adam said:

    Also having problems generating the page, I have other PHP writing code just fine its very strange, my Paypal account is all in lower case and everything else looks good in the settings.

    This is exactly what I wanted just need to get it to work.

    Looking forward to new versions

    Thanks

  68. Adam said:

    ok after some work I had to end up removing my PHP installation and my website off IIS, I got it generating the pages now and files are able to be downloaded just fine, so if anyone has trouble and permissions are fine maybe try that.

    But there is no email being sent other then the paypal one.

    Is there anything special needed to be done to make that happen?
    or need to use the IPN settings under paypal?

  69. Dragan said:

    Downloaded the script, everything seemed fine, but always, ALWAYS getting this same error!

    “Purchase Details Not Found. Contact Administrator.”

    I tried everything suggested here in the comments, nothing worked. Since I have two servers, I tried on both of them, hoping I’m missing something with the first one, and again the same message.

    “Purchase Details Not Found. Contact Administrator.”

    One of the servers is on dreamhost, that you said you checked and made it work there. Well, still same error!

    All your answers were pretty vague about this same error being reported over and over again. It’s like you are dismissing this error happening to anyone.
    There must be a solution. Was happy to buy script and refer to many other people I know will need it, but this just doesn’t fly. Apart from that, lost half a day that will never come back :(((

    Off to find a working solution. Cheers!

  70. Kidino said:

    Hmm, MiniSiteGallery.com is on DreamHost and is working well (try the $10 :P). Well, I just got a baby yesterday and the mommy’s still at the hospital. Will be fetching her and the baby later this afternoon. So I hope you understand with the delay on this…

    Dragan, if you sent this message using a valid email address, I will get back to you on this. And looking forward to helping you with SimpleIPN setup on DreamHost.

  71. Dragan said:

    Thanks for the answer!

    Congrats on your new addition to the family!!! ;)

    I just love your script and would really like to make it work! Hopefully, we’ll figure it out. My email adress is valid.

    Cheers, D.

  72. Dragan said:

    I tried to figure out what was wrong with the script some more time and I think there is 2 scenarios where this would work, without showing the infamous Purchase Details not Found message.

    1) Make the xxxxxxxx.php be created in a different empty folder since some hosting providers (obviously) dont allow you to run a script (ipn.php) from a chmod 0777 folder (that’s kinda logical, no?) :)))
    2) Take the IPN txn_id and add it into database and then use it from the DB instead of the file.

    Still don’t know how to make 1) or 2). :))))

    Any programmers out there can help with a possible solution on this?. Must be a very simple solution, altho I’m missing something obviously + I’m not a programmer :))

  73. Kidino said:

    Dragan, I believe you got my other email. I am here to help you out with this since you are on DreamHost.

    By the way, I don’t plan on adding the DB feature to SimpleIPN as my objective is really to make this easy to use. Adding the DB will require users to setup another thing - DB.

  74. David said:

    First off, let me say thank you for writing this script.

    I am using Sandbox to test out the script and while I am able to purchase the file, I never get an email. Is it because I am using Sandbox?

    Additionally, when I go to the Thank You message from Paypal’s “Return To Merchant” button, I click the download link and get the same message as others:

    “Purchase Details Not Found. Contact Administrator.”

    I tried the CHMOD 777 but I am wondering if this is all happening because I am using Sandbox. I would understand why the email may not coming in (because I am using Sandbox) but the download link should be still working I imagine. Or maybe not…..Do you recommend I try it with my real PayPal account and not with Sandbox? Thanks Again.

  75. Reins said:

    FYI, I did two real paypal try outs and I couldn´t make it work anyways.

  76. Kidino said:

    @David, email should come even if you are on Sandbox, especially if you made trial accounts with real email address. Can you tell me more about your host?

    @Reins, tell me more about your problems.

  77. TimR said:

    I tried everything and still no email and link on thank you page throws the “details not found” error. Could it be that somehow the PHP files got corrupted?
    I enabled IPN on paypal with URL …/ipn.php
    is there any other setting to enable/disable on paypal or website for this to work?
    Thank you for this great tool ! I just wish I could make it work.

  78. David said:

    host is aplus.net, mid level shared hosting account, unix, what else would you like to know? what could be “off” with the hosting so I know what to ask them?

  79. Adam said:

    I also have had no luck with emails after changing my SMTP service and even reinstalled PHP nothing works. “Am on IIS6 and windows server 2003″ PHP 5.2.6

    The error from my new SMTP server is this

    MailEnable: Message could not be delivered to some recipients.
    The following recipient(s) could not be reached:

    Recipient: [SMTP:]
    Reason: 501 Invalid Address

    I looked the error up it might have something to do with permissions but phpBB the webmail client I use and my normal emails send and receive just fine. also I have given the folder full permissions to everyone just in case it was that. well any ideas to fix would be helpful

    Thank you.

  80. Kidino said:

    @Adam, this has never been tested on a Windows/IIS platform. The script uses mail(), which could be a problem.

    @Others, I’ve been working with Dragan and it appears that it might not even be a permission problem. If you are testing this with Sandbox and getting errors, make sure you use verified Paypal test accounts. Otherwise test this live and use some other people’s Paypal email to test.

    By the way, still checking problems with Dragan if I might find anything else.

  81. admin said:

    Found that most of the problems users are facing when Transaction File is not created, is because they are using PHP4 while SimpleIPN was coded for PHP5. I changed the codes to be working with PHP4 instead now. You can download the new compilation and give a try.

    Another problem with emails not being sent, it could be because the web hosting has some rules about sending email where the From email is not hosted by the server. To be safe, only use email address that is managed by the server for $support_email_address.

  82. Reins said:

    Will try with the new version and let you know. Thanks.

  83. TX CHL Instructor said:

    I found a tool that looks like it would be useful for playing around with this script. It’s called XAMPP, and it’s an open-source tool suite that lets you run a web server with PHP and MySQL on your machine so you can test scripts before you upload them to your host. Just google xampp. Be sure to make a note of the FAQ and installation pages (I just copied them locally). It took me several tries, but I managed to get it up and running on my laptop, and I’m now able to do testing of new ideas in PHP without having to build an elaborate test script to run on my host.

    BTW, I saw some folks who had some problem with their hosting and file permissions. I really think that using a database is the way to go, and I may be re-doing the script to use MySQL.

    Shameless commercial plug: I have a hosting service at http://www.hostpci.com

  84. Jas said:

    I’m confused - after I edit the php files accordingly, I store them on my webspace (not sure exactly where to store them either), then what? what link do I use for each of my products? and is there anything else I need to do?

  85. Jas said:

    oh, and do I need to enter an IPN URL in PayPal?

  86. Dragan said:

    Hi guys,

    Last night Kidino troubleshoot the problems on my server where I tried to use this script (resellerzoom) and after hours of careful testing, he found a solution that will possibly solve all the “purchase details” errors and problems for many of you.

    We come to understand that there is a whole set of issues and rules around IPN and different hosts, and quite possibly, they should be demystified with the new script release! :))

    Kidino, wanted to say thanks for everything you done man and for being patient enough to solve this problem. The script is definitely the best possible and most good looking solution I’ve seen around. As you could see from my previous posts here, at first I was frustrated that I couldn’t make it work, so I was going around looking for solutions!

    None of them were classy as simpleIPN, thats why I was so determined to make it work. Thanks to Kidino, that happened last night, and quite possibly this new found information will help improve the script and make it work by default for many of you!

    Kidino, you are the man, and thank you for sharing this script with us! You deserve the best there is!
    After all the research and lack of good IPN paypal functional scripts, making this work was a real prize!

    Thanks, D.

  87. admin said:

    @TX CHL - thanks for your input. Yep, XAMPP is a cool tool. I have it in my localhost. But when it comes to e-commerce payment testing, you need to test it online though…

    @Jas - no need to write the IPN URL. Just edit the settings.php and then from your sales letter, link the order button to ipn.php?buy. You can store the files in any folder.

    @Dragan - thanks for the input. And thanks for allowing me to test it on your web hosting. We sure solved a lot of things, and surprisingly, a lot of them are not even permission issues.

    Most of the things are 1) PHP4-PHP5 issues. 2) mail() issues where the web hosting would not allow sending emails where the from is not hosted/managed by the server. Read update above.

  88. Tim said:

    Still doesn’t create page . no email is sent. I thought it was FrontPage 2003 but removed FP server extensions and still doesn’t work.
    Should the files be uploaded to the root directory?
    thanks

  89. Tim said:

    Still doesn’t create page . no email is sent. I thought it was FrontPage 2003 but removed FP server extensions and still doesn’t work.
    Should the files be uploaded to the root directory?
    thanks

  90. Tim said:

    I have to say this!!!!
    Kidino, the script is great.
    after hours of troubleshooting the code…. (good way to learn some PHP)
    my problem was that PayPal was using an OLD EMAIL ADDRESS, therefore the confirmation was comming with the old email address which was different than the one I set in settings.php…… there is a routine in the code that handles this but does not send you a message that there was an error in the validation.
    That’s why the link didn’t work and the email never sent… the program stops right there after creating the fake link and nothing else is created (xxxxx.php page, email, DL page..)
    check the confirmation page from PayPal for old email addresses and use the same one on settings.php….

    Kidino, you have some competition from ngcoders but your application is by far the best!!
    Thanks for the great work

  91. Tim said:

    Well, as competition goes, well, I am aware of those. Not really trying to compete with others though. Just thought this is something I should share around. Will check the code again regarding your error.

  92. W said:

    Hi Kidino, I have a small question.

    So after setting op the files on your website, how do you prevent that people directly surf to your protected file http://www.minisitegallery.com/simpleipn/sample.pdf ?

    I want to make sure that nobody can just give the link to others, letting them have a free download.

    Thanks in advance!

  93. Kidino said:

    @W - Did you read the settings and watch the video yet? The files does not have to be at a published web area. It can be under the web root folder.

  94. W said:

    Aha! Wow thanks, I’m sorry I did not get that directly, but that would solve all my problems indeed.

    Thanks so much for your reply =)

  95. W said:

    Hi Kidino, I still have a problem :( Don’t worry, I will pay the 10$ when it works, I must be doing something wrong.

    Do I have to insert something in my paypal.com IPN settings - link? Because right know it is not yet active.

    Right now when paypal sends me to the Download page, and I click the link I get “Purchase Details Not Found. Contact Administrator.”
    My pdf file is in a root folder, my sipmleipn folder is public.

    Je vous remercie de tout mon coeur.

  96. Wang Qian Jun said:

    Dear Kidino,

    Could you pls help me design one script for Alipay just like Paypal IPN script with thanks? We are selling ebooks and hope to have one script to finish digital delivery just your script. Pls see the alipay http://www.alipay.com and give me response whether you could make it. Thanks.

    Hope to hear from you soon’!
    Wang Qian Jun

  97. W said:

    I read all the above messages. Sorry I didn’t do that before!

    So my folder has 777 persmission, my “page.php?dl-6EB106728M8996143″ (exapmle) codes work perfect,
    my email arrives with the link,
    but I still get the “Purchase Details Not Found. Contact Administrator.”

    My host is asmallorange, pretty good. I have no idea why this will not work :( any ideas? (I have tested live too)

    Sorry for bothering, but thank you very very much!

  98. Kidino said:

    Sometimes it takes a while for the IPN to arrive.

  99. W said:

    Hm, but even after hours it’s not there. I’m right that I don’t have to put something in my paypal IPN settings?

    What would cause the IPN to not arrive?
    Thanks again.

  100. Adam said:

    I have tested the SimpleIPN script and have overcome many problems such as the page not being generated and not receiving emails.

    For PHP 5.2.9 I have used IIS 6 and Apache.

    Apache used the 2.2 DLL it worked fine with emailing and generating.

    IIS 6 had problems with the emails so had to change this PHP.INI ” sendmail_from = My Email ”

    PHP 5.3.0 Apache Did not like the 2.2 DLL

    IIS Fastcgi did not want to co-operate with the script at all giving debug erros.

    Pretty much its been said before if your hosting company is not giving you the right permissions or your PHP is not configured correctly you will get ““Purchase Details Not Found. Contact Administrator.”

    If your email are not being set try adding the line in PHP
    ” sendmail_from = My Email ”

    Also I have a question for you Kidino would it be ok if I ask it in email?

  101. W said:

    Thanks for the reply Adam. My emails are working great, just the dl page does not.

    How did you configure your PHP settings correctly? I mean what do you have to change there?

    Thanks!

  102. W said:

    You probably mean the 777 permissions … but that’s already there. Damn I don’t want to give up, but I tried so much :(

  103. W said:

    You probably mean the 777 permissions … but that’s already there. Damn I don’t want to give up, but I tried so much :(

  104. Kidino said:

    @W - Contacted you via email.

  105. Adam said:

    Kidino if possible could you contact me via email I have a purchase question (A brief one) that needs answering

    @W
    Great to hear you emails are working, the PHP settings I have are almost stock with a few extensions loaded and some locations specified.

    What hosting provider do you use?(Assuming its not local) if you do not have direct access to the machine via SSH / Remote Terminal. Setting up PHP will be done with the Cpanel/Plesk or whatever Tool they give you if that is the case they should be able to help you with setting permissions.

    I could maybe take a look to see what the problem might be with your PHP settings if you are still having further trouble with it.

  106. Setting up paypal with your website said:

    [...] Re: Setting up paypal with your website ey … can I plug my free Simple IPN Simple IPN: Free Paypal IPN PHP Script for Digital Download Products — MiniSiteGallery.com [...]

  107. Download Page Protection - Is It This Simple - Page 2 said:

    [...] Re: Download Page Protection - Is It This Simple Just an option, do check my free Simple IPN Simple IPN: Free Paypal IPN PHP Script for Digital Download Products — MiniSiteGallery.com [...]

  108. I NEED HELP ON HOW TO SET UP A WEBSITE WITH DOWNLOAD PAGE said:

    [...] Re: I NEED HELP ON HOW TO SET UP A WEBSITE WITH DOWNLOAD PAGE ey … can I plug my free Simple IPN Simple IPN: Free Paypal IPN PHP Script for Digital Download Products — MiniSiteGallery.com [...]

  109. Keven said:

    Hi Kidino, when I change the permissions of the directory that your scripts reside in (we’ll call it ’store’) to 777, I suddenly get a 500 server error whenever I call load /ipn?buy. Called the host and they apparently won’t let the .php files run in a 777 directory. When I set the permissions back to 755, everything works with paypal, but I never get any .php files written to the directory, so I of course get the same error everyone else sees. Is there any sense in modifying the scripts to try to write the temporary files to a sub dirrectory with 777 so that my scripts in the 755 directory can still run? Just grasping for a possible way to work around the apparent host restrictions. Thanks for your time!

  110. Joe said:

    Why is it when I have followed all of the directions ala updating settings, uploading file to my website ala earthlink. and making a button on my sales page to link to inp.php?buy
    When I try the button or work with the link directly I received a pop up window saying “FILE DOWLOAD…Do you want to open or save this file” What am I doing wrong.

  111. Francesco said:

    Hi, I’ve some problem with generation fiel XXXXXXX.php.

    The folder n my site has a all permissions. For tested i’ve created a file and correctly created.

    The setting in setting.php is correct.

    The IPN in sendbox is valid

    When I tested click to the button return to mercha… for download the result is:

    Purchase does not match product details.
    Debug Mode. Here are IPN data and transaction result.

    ===================================
    DOWNLOAD PAGE: http://www.plsql.it/simpleipn-open/page.php?dl-2V282393AH0801002

    Paypal IPN VERIFIED

    PRODUCT DETAILS CHECK
    |francesco_foti@hotmail.com| : |francesco_foti@hotmail.com|
    |1.00| : |01.00|
    |EUR| : |EUR
    |Pending| : |Completed|

    Purchase does not match product details

    Help me. Thanks

  112. Kidino said:

    OK, there are two issues with the above.

    1 - 1.00 does not match with 01.00, I think the 01.00 is yours. Check that in the settings and fix it. Make it to 1.00.

    2 - The status does not match. Sometimes on a Sandbox, when the test email account is not a verified account, you will get a Pending status.

  113. Francesco said:

    Hi I’ve modify but the result is the same.

    this is my log:

    Purchase does not match product details.
    Debug Mode. Here are IPN data and transaction result.

    ===================================
    DOWNLOAD PAGE: http://www.plsql.it/simpleipn-open/page.php?dl-4KP38061RF001112X

    Paypal IPN VERIFIED

    PRODUCT DETAILS CHECK
    |francesco_foti@hotmail.com| : |francesco_foti@hotmail.com|
    |1.00| : |1.00|
    |EUR| : |EUR
    |Pending| : |Completed|

    Purchase does not match product details

    POST DATA
    transaction_subject: Sample Product
    txn_type: web_accept
    payment_date: 05:24:29 Sep 29, 2009 PDT
    last_name: User
    residence_country: US
    pending_reason: unilateral
    item_name: Sample Product
    payment_gross:
    mc_currency: EUR
    payment_type: instant
    protection_eligibility: Ineligible
    payer_status: verified
    verify_sign: AFcWxV21C7fd0v3bYYYRCpSSRl31ARxTHGZtZDWxlNI7V.AfPC2gnPru
    txn_id: 4KP38061RF001112X
    payer_email: france_1254146928_per@hotmail.com
    test_ipn: 1
    tax: 0.00
    first_name: Test
    receiver_email: francesco_foti@hotmail.com
    quantity: 1
    payer_id: DNNWCR5CBZ8P4
    item_number: SPL101
    payment_status: Pending
    handling_amount: 0.00
    shipping: 0.00
    mc_gross: 1.00
    custom:
    charset: windows-1252
    notify_version: 2.8
    merchant_return_link: Return to Merchant

    The status does not match. But in Sandbox are two days enad the status always is pending

    In my account test I’ve recevied the mail:

    Sep. 29, 2009 05:34:21 PDT | Transaction ID: 8EY66622HY765333W

    Hello Test User,

    You sent a payment of 1.00 EUR to francesco_foti@hotmail.com

    It may take a few moments for this transaction to appear in your account.

    —————————————————————-

    Merchant:
    francesco_foti@hotmail.com

    Instructions to merchant:
    You haven’t entered any instructions.

    ———————————–
    Purchase Details
    ———————————–

    Description: Sample Product, Item#: SPL101
    Unit price: 1.00 EUR
    Qty: 1
    Amount: 1.00 EUR

    Subtotal: 1.00 EUR

    Total: 1.00 EUR

    Payment: 1.00 EUR

    From amount: $1.40 USD
    To amount: €1.00 EUR
    Exchange rate: 1 USD = 0.714285 EUR

    When return in my site the result is the same and the email don’t arrive to my account: francesco_foti@hotmail.com

    Thanks for all I hope to resolve.

    Thanks

  114. Francesco said:

    Is it possible to have a reply???!!!!!???

    1) The permission on my directory is ok.
    2)The formta money in setting file i s correct.
    3) The url return in paypal i s ok …(/ipn.php)

    I’ve verified that when I pay in sandbox I receveid a mail but non receveid mail in my account with link for download. I’ve paid for what?

    is is possible contact you with email thanks?

  115. H-J P said:

    Dear Sir,
    I´ve purchased your product and it works in sandbox on my server.
    With my regular paypal-account there is no email and no download page created.
    I´d be glad to get any help for solution

  116. Barry said:

    Hi.

    Any progress on that GUI mentioned was coming soon in a previous post?

  117. Francesco said:

    Hi,
    thanks for all very thanks. (sorry for my english)

    I’ve modified only this setting in this mode:

    My page setting.php is

    $debug = 1;
    $paypal_sandbox = 1;
    //this is a business email in sandbox
    $paypal_email_address = ‘foti.business@hotmail.com’;
    /7this is a support email
    $support_email_address = ‘francesco_foti@hotmail.com’; // your email address for support

    My ipn.php ,tpl_dlpage.html, tpl_tqpage.html, function.php, and page.php I haven’t modify. I must modify something?
    I did everything described in the example.

    In sandbox I’ve seen that the IPN si valid, but the problem is the return page. I must setting the url return in sandbox tpl_tqpage.html o ipn.php ?

    There is something that I must setting?

    Is it possible have an example for all page that I must modified?

    If you want I give you a password of test my site, there is no problem is only for test.

    My link test in my site is

    http://www.plsql.it/simpleipn-open/ipn.php?buy

    The user and password for buy is
    user: foti.personale@hotmail.com
    password: SBS01mig.

    Thanks for all

  118. Manolo said:

    Hi Kidino,

    First: Congratulations for your new baby! I hope you get a good night’s sleep every now and then! By blessings to your family.

    Second: Thank you very much for being so generous and sharing this powerful tool. $10 is still a bargain!

    I just have one simple question.

    I’ve installed it and it works great all the way (Hostgator hosting): Reading IPN, sending emails, smooth transaction, getting ty page and dl page, BUT…

    The downlaod links are not working. I get the message:

    “Download file ID 0 is not valid. Please contact webmaster.”

    What should I fix? I tried adding the full dl link (including http) in the settings.php file.

    I hope you get the time to read this…

    Rgds,

    Manolo

  119. Manolo said:

    Two suggestions:

    1. The option to add a 3rd email address, in order to subscribe customers to any newsletter with any Autoresponder service.

    2. To limit the number of IP’s for every customer. That way the link gets shared less.

    Just my 2 cts.

    Rgds,

  120. Francesco said:

    Hi,
    I’ve modified a ipn.php:

    first
    $fp = fsockopen ($paypal_ipn_url, 80, $errno, $errstr, 30);
    now
    $fp = fsockopen ($paypal_ipn_url, 443, $errno, $errstr, 30);

    The result I think is good:
    Debug Mode. Here are IPN data and transaction result.

    ===================================
    DOWNLOAD PAGE: http://www.plsql.it/simpleipn-open/page.php?dl-0G2724353D5534527

    POST DATA
    transaction_subject: Sample Product
    txn_type: web_accept
    payment_date: 09:58:00 Oct 03, 2009 PDT
    last_name: Foti
    residence_country: IT
    pending_reason: unilateral
    item_name: Sample Product
    payment_gross:
    mc_currency: EUR
    business: francesco_foti@hotmail.com
    payment_type: instant
    protection_eligibility: Ineligible
    payer_status: verified
    verify_sign: AcB-sRCzd0QMTVJSN4Aeoi-ylYaRAUqj8QlfKLKFaJH-hDisC4J5aXXb
    txn_id: 0G2724353D5534527
    payer_email: foti.personale@hotmail.com
    tax: 0.00
    test_ipn: 1
    first_name: Francesco
    receiver_email: francesco_foti@hotmail.com
    quantity: 1
    payer_id: RC2Y8JAASF7HQ
    item_number: SPL101
    payment_status: Pending
    handling_amount: 0.00
    shipping: 0.00
    mc_gross: 1.00
    custom:
    charset: windows-1252
    notify_version: 2.8
    merchant_return_link: Torna al commerciante

    But the download page don’t exist (in my folder site is all ok permission and all)

    when I copy a link in browser I have this result

    Purchase Details Not Found. Contact Administrator.

    and the page “….page.php?dl-0G2724353D5534527″ for example don’t created and email don’t send.

    Thanks for all.

  121. Francesco said:

    Another thing:

    I’ve two account business and personal in sandbox.

    1. execute a ipn.php?buy
    2. Loggin in sandbox
    3. I do a payment.
    4. The result page is this:

    Debug Mode. Here are IPN data and transaction result.

    ===================================
    DOWNLOAD PAGE: http://www.plsql.it/simpleipn-open/page.php?dl-1GC691144F652144R

    POST DATA
    transaction_subject: Sample Product
    txn_type: web_accept
    payment_date: 10:13:43 Oct 03, 2009 PDT
    last_name: Foti
    residence_country: IT
    pending_reason: unilateral
    item_name: Sample Product
    payment_gross:
    mc_currency: EUR
    business: francesco_foti@hotmail.com
    payment_type: instant
    protection_eligibility: Ineligible
    payer_status: verified
    verify_sign: AFcWxV21C7fd0v3bYYYRCpSSRl31AXA8OcXUwiiCzIropy4SzaMUcGI2
    txn_id: 1GC691144F652144R
    payer_email: foti.personale@hotmail.com
    tax: 0.00
    test_ipn: 1
    first_name: Francesco
    receiver_email: francesco_foti@hotmail.com
    quantity: 1
    payer_id: RC2Y8JAASF7HQ
    item_number: SPL101
    payment_status: Pending
    handling_amount: 0.00
    shipping: 0.00
    mc_gross: 1.00
    custom:
    charset: windows-1252
    notify_version: 2.8
    merchant_return_link: Torna al commerciante

    5. A email arrive in my sendbox account test personal with information for download but in the email tha I’ve set in the file setting.php ($support_email_address = ‘plsqlpl@plsql.it’;) i don’t receveid nothing is normal?

    6. Is normal that I can’t a download in the link that I’ve posted?

    Thanks for all and sorry for all

  122. Kidino said:

    WOW, I am getting a lot of response today. Really does makes my day. For Manolo, when you get unknown File ID, that’s normally the problems with the file settings.

    For the rest, I need to get back to you later though.

    Just some news, I am releasing the installer interface, hopefully this week.

  123. Kidino said:

    By the way, I found that most problems that you guys get when the emails are not sending and file is not created, it’s because the purchase is coming from an unconfirmed email account. So you get a status = Pending and Pending Reason = unilateral.

    Will check more about this though. But so far, I’ve read that nothing was paid for that kind of payment.

    And when people pay with eCheck instead, you too get a status = Pending. IPN will send data again when the eCheck clears. And ipn.php will process it.

    But maybe the script needs a little adjustment at the thank you page.

  124. Francesco said:

    Ok Kidino, I hope to resolve all.

    I must attend now???

    thanks for all.

  125. Francesco said:

    Hi kidino,
    this is strange because my two account business and personal are verified.

    When I do a payment email to my account in sandbox arrive, and my IPN is verified and in test in sandbox is good,

    But the email doesn’t arrive e the file didn’t created (my permission is good and folder is ok and the url return in the business is ok the llink to thankyou page)

    Thanks for all

  126. Manolo said:

    Hi Kidino,

    Well, it’s Saturday…ALL of us should have plenty of time to address this issues!

    Thanks for your repply, please tell me what to check in order to fix it. I’ve followed instructions almost 10 times now.

    One more update:

    i was testing it with my wife’s real paypal account and it was ok. But when i tried directly with several international credit cards (all of them have been used to pay with paypal checkout before), it says:

    “The card you entered cannot be used for this payment. Please enter a different credit or debit card number.”

    This cards are from El Salvador (VISA and AMEX). never had problems with them before.

    Please check that out, it can be a major sells buster.

    rgds,

    Manolo

  127. Manolo said:

    This is for PAULA,

    Hi Paula, I see you aer hosting with Hostgator as well. I need to contact you so I can ask you some questions about the problems I’m having.

    Please contact me at manolosal @ hotmail. com

    Rgds,

  128. Mepoet said:

    I’ve had all the problems listed above also and tried all the solutions and have all the failures. One thing that happened though is that after 4 purchases in 3 days on paypal, ( at 10 cents each) I finally started receiving both merchant and customer mail from paypal. I changed nothing, so the problem, at least in my case, is that paypal simply was not sending the email to to the merchant EVEN THOUGH the email was verified.

    I am hosted on hypermart but I am going to start an account on Hostgator now. Thanks for the heads up, Paula ( are you single :-) . If that doesn’t work I will try Dreamhost. And thanks Kidino Admin for everything. You’re a genius. Hopefully you won’t hear from me again about problems, only success ( and $10 :-P )

    Since I have never been able to get far enough to see the ad credits on the download page, I don’t know what they look like. But even with a $10 payment I doubt if I’ll want to remove them because I think everyone should know where to get their own Simple IPN.

  129. Mepoet said:

    :-(
    I have read and reread and followed all instructions and suggestions, watched the video several times, even changed hosts to Hostgator. I still can not get the simple ipn to work. Any permissions other than 755 throw an error. And of course I get the “Purchase does not match product details” message.
    PAULA
    MANOLO
    please tell the secret to making simple ipn work on Hostgator

  130. Manolo said:

    @Mepoet:

    Just make sure your domain is fully functional with HGator (not the temp domain, but your actual domain). 755 is working great for me.

    Review every character you have typed: prices, commas, etc. Or try to start all over again.

    Hope you fix it.

    Rgds,

  131. Mepoet said:

    my actual domain is fully functional. I made a directory in public_html on Hostgator named shopcart and uploaded all simple-ipn files, I edited settings.php correctly, definitely, no mistakes. in fact I didn’t change anything but the email addresses and the price. And I receive email from paypal BOTH as seller and purchaser. The price displayed in paypal and in emails is correct. So there’s no mistake in what I edited.

    The shopcart directory was automatically set to 755. I can’t understand how 755 works for you. Kidino said it won’t work. And it doesn’t for me. I tried all the other permission combinations in all posts above for the shopcart directory and they all throw an error. Are you sure your directory is in public_html and 755?

    From my index page I linked to ipn.php?buy .Clicking the link goes to paypal but as usual gets the Purchase does not match product details on the DL page.

    Did you change any of the actual file permissions, like the Thank you page??
    What am I doing different from you did? Any help is greatly appreciated.

  132. Mepoet said:

    Kidino, After many frustrating attempts, and detailed instruction from Manolo, who says his simple ipn worked on hostgator… I still can not get it to work on my Hostgator. I don’t mind paying $10, even more, I’m ready and happy to do it, and I already got in trouble with my server for sending so many email to friends telling them what a great script this is, I am not a novice, but something is stopping me from getting this to work. Will you let me give you my password and then you set up simple INP on my hostgator account?
    Desperately Seeking Simple.

  133. Mepoet said:

    Thanks to Kidino simple IPN now works on my hostgator account. Regarding your thoughts on an ad on expired download links, Since the DL page must be deleted manually or with a cron job, I suggest putting another inp.php?buy link on the expired download for a ONE TIME OFFER for a second product at a discount. For example, my simple IPN directory is ipn01. If I make another directory ipn02 with the one time product in it, the link on the ipn01 download page could be /ipn02/ipn.php?buy and would take the customer back to paypal to purchase again.

  134. Kidino said:

    @Mepoet - Yep, that could work.

    You can install as many /ipn folders as you want. Name it anything you want “buy”, “order”, “sale”, “nothingrelatedatall”…

    And you can always customize the Download Page by editing the tpl_dlpage.html … Put ads on your download page, put optin form, put links to other websites, put links to affiliate websites, you can do anything you want.

    But as for the limited time offer thingy, or the one-time offer mechanism, you’d have to figure that one out yourself.

    I don’t have anything to help you with a one-time offer. Google for that, I am sure you’ll find something.

  135. Steve said:

    Great script!

    What PayPal product is required? Can I use this with PayPal’s Website Payment Standard, or do I need Website Payment Pro, etc?

    Thanks - Steve

  136. admin said:

    This is for PayPal’s Website Payment Standard ONLY!!

  137. Steve said:

    Perfect … Thanks for confirming Website Payment Standard!
    Cheers - Steve

  138. H-J P said:

    It doesn´t work on my puretec-account in production mode. Do I have to wait for changes in thankyou-page?
    Help

  139. Kidino said:

    Some extra details would help…

  140. H-J P said:

    Downloadpage and email is not created. This is the IPN-dump:

    We cannot verify your purchase
    Debug Mode. Here are IPN data and transaction result.

    ===================================
    DOWNLOAD PAGE: http://caprificus.de/simple/page.php?dl-1PG40803MA5032228

    INVALID: We cannot verify your purchase

    POST DATA
    transaction_subject: Sample Product
    txn_type: web_accept
    payment_date: 06:41:30 Oct 09, 2009 PDT
    last_name: Probst
    residence_country: DE
    item_name: Sample Product
    payment_gross: 0.01
    mc_currency: USD
    business: contact@davidwaddell.eu
    payment_type: instant
    protection_eligibility: Ineligible
    payer_status: verified
    verify_sign: AQU0e5vuZCvSg-XJploSa.sGUDlpAD5UPyRV-KQMT14S7rzEKMlbocRD
    txn_id: 1PG40803MA5032228
    payer_email: prodent@t-online.de
    tax: 0.00
    first_name: Hans-J�rg
    receiver_email: contact@davidwaddell.eu
    quantity: 1
    payer_id: 5MKH3B28E2SDN
    receiver_id: FZMGKG6E5L3A6
    item_number: SPL101
    payment_status: Completed
    handling_amount: 0.00
    mc_fee: 0.01
    payment_fee: 0.01
    shipping: 0.00
    mc_gross: 0.01
    custom:
    charset: windows-1252
    notify_version: 2.8
    merchant_return_link: Zurück zu david waddell

  141. Darrel said:

    Got it working until the point where I go to download the pdf file. When I hit the link is says “Purchase Details Not Found. Contact Administrator”

  142. Kidino said:

    That’s the case where the script didnot or failed to create the transaction file. Hmm… at this point, I can’t determine what’s wrong though…

    It could be…
    - permission
    - extra blank spaces in variables in settings.php
    hm… could be a number of things…

  143. Mepoet said:

    @ Kidino and all :-)

    I could not get simple IPN to work on my previous website, hypermart.net . I could not get it to work on hostgator.com which uses a cpanel, until Kidino helped me. The program definitely works in the “live” mode now, at least with the sample pdf and mp3. I have not uploaded my real products yet but I am in the process.

    I just tested it in live mode myself using the same setting Kidino edited in my settings.php and everything was fine except merchant and purchaser did not receive email generated by the simple ipn. *note to Kidino, I re-created and used the same mepoet address you created for me. I am assuming the missing customer email is paypal or hostgator’s fault, or even my fault. I will investigate that more.

    I don’t really care if the mail works, because the merchant
    ( me) got a message from paypal, and the customer (me) was able to download. Everybody (me) is happy, everybody got what they wanted, and the result is the same even if the devil is in the details.

    HOWEVER…out of curiosity I tried it in “test” mode just a few minutes ago, and it does NOT work in test mode. :-) Error message Purchase does not match product details.

    This must look familiar to almost everyone here.
    Wouldn’t it be ironic if everyone who is having the “Purchase does not match product details” error would go live, and it WORKED ! :-). For me, testing simple IPN was like beating a dead horse. It would never work no matter what I did.

    I am not going to worry about “test” mode anymore. It works well enough “live” to receive payment and deliver a product and that’s all I really care about. After I upload my actual products I assume it will work as well as it does with the sample products.

  144. Paula said:

    Well, I’ve read many comments here on how the script doesn’t work - but I’d like to say AGAIN - it works PERFECTLY for me - in both Sandbox AND Live modes.

    I have had some problems with file names etc - but ALL of these were MY MISTAKE - i.e. not having the correct download path OR mis-spellings. Easily corrected!

    Take care with your “settings.php” editing and ensure that when in Sandbox you have ALL of the correct emails setup (both Buyer AND Seller) and that you are logged into Sandbox Developer before you test - you will not receive a confirmation email from Sandbox unless your Sandbox BUYER email address actually exists!! Also ensure that your Sandbox Accounts are properly enabled and Payment Review is Disabled.

    Sandbox also has a tendency to be “slow” on occasions and therefore the IPN can take more than a few seconds to come through - you may not be able to access the download file immediately from the Thank You Page - but by the time the Buyer confirmation email is received - the Download Link should work. I haven’t had a problem with this “live”.

    Good luck with it all - for a FREE script I think this is fantastic - THANK YOU KIDINO !

  145. Kidino said:

    Thanks Paula.

    Things to look out for …

    - Some web hosting does not allow emails to be sent out where the From is not an email account inside the server. Choose your support email wisely.

    - Make sure you define your variables correctly. Things like extra blanks will cause error because your server will check for something like “your@email.com ” while IPN will return “your@email.com” — that will not match and will cause error.

  146. Mepoet said:

    Thanks for the info. In my case, simple IPN works in the live mode using the original product variables( sample.mp3 and sample.pdf) . Not receiving email from Hostgator was my fault because I did not forward my hostgator email to another outside email address or set up webbased email account.

    BUT simple IPN should also work in test mode because I did not change anything in settings.php from when it works live.
    I should still get correct download links, but instead I get the famous “Purchase does not match product details” error.

    Do you think this error is caused because hostgator had no outside address to forward hostgator email to?

  147. david said:

    is there an ipn notification url i need to put in while using this script. I tried setting this up but am not getting any emails with my download link.

    my knowledge of this stuff is limited. thank you!

  148. Kidino said:

    You do not need to define anything else other than those in the settings.php. As you can see, you link your order button (or link or what ever) directly to ipn.php?buy … ipn.php will generate the Paypal Buy Button and sends it automatically. All URLs and details needed for the Buy Button will be derived from your server info and your settings.php

    No Paypal Notify URL needed to be defined.

  149. Francesco said:

    Hi Kidino,
    have you seen my problem? Is it all ok yes/no…. :)

    The problem is that when the buyer has terminated the transaction and click on button for return to page on my site (the page for ipn return is thankyoupage) I have this message
    :” Invalid Page request2

    What I do. I have done many tests bt the result is the same.

    Thanks for all Kidino

  150. Francesco said:

    Hi Kidino, nly my problem is page return. this is a sample:

    http://www.plsql.it/simpleipn-open/page.php?thankyou&tx=56M51568ME635843U&st=Completed&amt=0.01&cc=EUR&cm=&item_number=SPL101

    This is te url return after payment the result is
    Invalid Page request

    For me is a url not exact but is all dynamic. Which is the problem?

  151. david said:

    I have tried this multiple times now, following the directions given. I am not getting emails sent to me with the download link. What could I be missing?

  152. Mepoet said:

    @ Kidino and Paula,
    I would like to add my voice to say the script works PERFECTLY. IT DOES !
    At least in ‘live’ mode. paypal_sandbox = 0; // 1 for test more, 0 for production mode

    PREVIOUSLY
    I tested on hypermart.net AND Hostgator.com till I was blue in the face, and test mode did not work once. Just so you know, I was a cgi-perl programmer for 10 years, so following instruction was no problem. I didn’t make any mistakes. I was able to make a sandbox purchase on both servers, but never get a good download link. Kidino was kind enough set SIMPLE IPN up on Hostgator for me. To repeat, it works PERFECTLY…in live mode but not in test mode.

    TODAY
    I went back to hypermart and set up SIMPLE IPN and used ‘live’ mode. It works PERFECTLY.
    This is just my opinion, but I think 99% of those you who followed directions correctly are wasting your time testing in sandbox because no matter what you do, it isn’t going to work after the purchase. You will never get a good download link in test mode.

    If I had simply gone live on hypermart instead of trying to make the test mode work, I could have saved myself a week of aggrivation and about $50, and been selling in 15 minutes. That’s my experience. “Test” it live with a 10 cent product.. A word to the wise GO LIVE ! SIMPLE IPN WORKS PERFECTLY !

    PS, Paypal informed me I can have 3 accounts: a personal account , a Premier account , and a Micropayments account for sales under $12 http://micropayments.paypal-labs.com Paypal takes 5% + $0.05 USD as opposed to 2.9% + $0.30 USD for your standard Premier account..

  153. Francesco said:

    Is there someone?

  154. Francesco said:

    Hi Kidino, only my problem is page return. this is a sample:

    url in paypal for return page is
    http://www.plsql.it/simpleipn-open/page.php?thankyou

    after that I’ve bought
    this is the link (the amil arrived and the link is correct) but

    http://www.plsql.it/simpleipn-open/page.php?thankyou&tx=56M51568ME635843U&st=Completed&amt=0.01&cc=EUR&cm=&item_number=SPL101

    The resukt is after payment is
    Invalid Page request

    For me is a url not exact but is all dynamic. Which is the problem?

    I’ve seen in the page.php this string

    if ($_SERVER['QUERY_STRING'] == ‘thankyou’)

    is not true for me

    infact the procedure go to else

    else

    { die(”Invalid Page Request.”); }
    }
    echo $page_html;

    Help me Thanks

  155. Francesco said:

    help me thanks

  156. Francesco said:

    Hi.

    Finally I’ve resolved.

    I had two problem on button return thankyou page.

    The result was a Invalid Page request or blank page or thankyou page with POST variable blank.

    I’ve set the IPN with url http://mydomain/tpl_tqpage.html

    and removed a PDT url.

    Now is all ok.

    Thanks for all

  157. Kidino said:

    Francesco, changing return_url to tpl_tqpage.html is not a good idea. tpl_tqpage.html is supposed to be a template and not to be used directly.

  158. . o O ( DLGuard – Download page protector, create expiring download links Reviewed: Scam or Serious? ) said:

    [...] may also want to check out: Simple IPN: Free Paypal IPN PHP Script for Digital Download …MasonWorld Late Night Internet Marketing - http://www.masonworld.com/The WordPress Wizard Found a [...]

  159. Francesco said:

    Hi Kidino,
    the name of the page will be tpl_tqpage.html, the name is the same.

    I’ll remove a link for download I’ll restyle a page because for me is only a information and a thankyou page.

    The link for download will be send to email only. Is correct?

    Another page that I change will be a download page.

  160. Mepoet said:

    The DLGUARD is not a scam, but seems to me a serious, major ripoff at $147 and can only be used on two web sites. Thumbs down !!
    There are plenty of similar programs out there but I prefer Simple IPN anyday…because it really is simple.

  161. david said:

    hey Kidino, if you could email me that would be great. I am still having some troubles getting this to work and would love your insight.

    thank you!

  162. Mepoet said:

    FIREFOX trouble.
    Someone downloaded my files but said their Firefox browser does not let them see the file extension and stored the files without an extension. Firefox does not even give them a choice to “save as. This is really bad because they don’t know if they are downloading a pdf or an mp3, etc “. So I inserted this javascript ‘Get browser’ into the
    like this, right here of the tpl_dlpage.html download page to test if they are using Firefox. This works for me:

    hopefully you can see this code instead of it actually checking your browser. CODE:

    if (/Firefox[\/\s](\d+\.\d+)/.test(navigator.userAgent)){ //test for Firefox/x.x or Firefox x.x (ignoring remaining digits);
    var ffversion=new Number(RegExp.$1) // capture x.x portion and store as a number
    if (ffversion>=3)
    document.write(”You’re using FF 3.x or above, AND ADD YOUR COMMENTS HERE “)
    else if (ffversion>=2)
    document.write(”You’re using FF 2.x AND ADD YOUR COMMENTS HERE “)
    else if (ffversion>=1)
    document.write(”You’re using FF 1.x AND ADD YOUR COMMENTS HERE “)
    }
    else
    document.write(”AND ADD YOUR COMMENTS HERE “)

    *note, you can delete the last part if you don’t want to make a comment if it is NOT firefox.
    This part
    }
    else
    document.write(”AND ADD YOUR COMMENTS HERE “)

    but make sure you leave the exit from the script

  163. Mepoet said:

    Apparently you can not see the CODE to insert into the tpl_dlpage.html download page head, which is the the words
    head
    in brackets
    and the end word
    /head
    which is also in brackets
    nor the words

    script language=”JavaScript type=”text/JavaScript”
    which uses quotation marks and is also in brackets
    nor the end of the script
    /script
    which is also in brackets.
    Sorry, I hope I have not confused you.

  164. Mepoet said:

    @ Kidino, sorry to mess up the blog. I didn’t know if I could show actual javascript in it. Maybe you should remove my last three posts so as not to confuse anybody I have also been calling less than sings brackets, yipes !

    Apparently I can also not put javascript in full quotes in this blog .
    it is supposed to be
    less than sign script language= quote JavaScript unquote space type=”text/JavaScript”>
    For some other reason the last part comes out alright. It is only the first ‘less than sign’, and middle ‘quote’ marks that are missing

  165. Jean said:

    I have tried this with a real paypal account (not test mode), and my email is that from the server, but I still receive no emails and when I try to download the file, I see this: “Purchase Details Not Found. Contact Administrator.”

    I have not changed anything other than the paypal and email address, everything else is the exact same as the file, even down to the sample mp3. I cannot understand why this is still not working and I’m getting frustrated. Can someone please help?

    Thanks

  166. Jean said:

    Oh yea,

    I have php 5 and I’m using ixwebhosting for my hosting..linux server

  167. Mepoet said:

    @jean
    I had the same problem. If I remember it was because I was using the wrong directory. I had put my samples in a different directory and forgot to point to it. I fixed that and everything works.
    I noticed earlier in this blog that Kidino said he originally wrote the script for php5 but changed it to php4. So I reset my host preferences to php 4. But I don’t think that is your problem.
    if you have come to the pulling the hair out stage I will try to help. mg67 - mail at yahoo dot com. That’s a dash. I don’t worry about giving this email out because it is a disposable addy, and easily deleted or replaced if I get spamed or mail bombed.
    @kidino, it’s fine with me if you remove my pervious posts about Firefox so they won’t confuse anybody :-)

  168. Mepoet said:

    @jean
    grrrr I just can’t seem to post anything well :-) my CORRECT addy is mg67mail-box at yahoo dot com

  169. Pete Clark said:

    It appears to me that in the current download, the customer info file is never created, unless the program is run in Debug Mode.

    In Debug Mode, ipn.php is called as the return file, the file which is called when the buyer clicks on the return button in PayPal, and (if the query string is not “buy”, which it won’t be when coming back from PayPal), then the Customer Info File is created.

    In non-Debug mode, page.php is called, and page.php does not create the Customer Info File.

    It works in Debug Mode, but not in non-debug mode.

    Or have I missed something here? I am short of time, and could be wrong…

  170. Pete Clark said:

    OK, I have it working now, quick fixes, loads of tidying to be done everywhere. This works in non-debug mode, I haven’t tested it in debug mode, as I don’t seem to need it…

    In page.php, I changed the line
    if $_SERVER['QUERY_STRING']
    because my development set up puts session data in the GET..

    if (substr($_SERVER['QUERY_STRING'],0,8)==’thankyou’) {

    Then following that…
    //// FROM ipn.php ////////////////////////////////////////////////////////

    // assign posted variables to local variables
    // Check if the Customer Info File already exists…
    if (!file_exists($_POST['txn_id'].’.php’)) {
    // If it doesn’t exist, create it, with the code from ipn.php
    /*……………………………………………*/
    $this_file=’page.php’;
    if ($paypal_sandbox == 1) {
    $paypal_url = “www.sandbox.paypal.com/cgi-bin/webscr”;
    $paypal_ipn_url = “www.sandbox.paypal.com”;
    } else {
    $paypal_url = “www.paypal.com/cgi-bin/webscr”;
    $paypal_ipn_url = “www.paypal.com”;
    }
    /*……………………………………………*/

    $item_name = $_POST['item_name'];
    — and all the rest of the code from ipn.php, as far as —
    if ($debug == 1) {
    fclose($fpx);
    echo “Debug Mode. Here are IPN data and transaction result.\n”;
    echo “\n”;
    echo $ipn_log;
    echo “\n”;
    }
    and add a } to match the “if file exists” at the top.

  171. Anon said:

    Just in case you haven’t had a thank you in a while.

    Thanks very much, this script was easy to setup and very useful.

  172. Chris said:

    Has anyone come across and solved the email issue? I am using a server email account and still not getting the email message….
    thanks

  173. Chris said:

    I switch servers and the email functionality is now working….weird…i wish i know how to solve the problem on my regular server. Great script by the way!!!!

  174. Matt said:

    You may just need to restart the email service on the server where it isn’t working. Especially if it is a cPanel host. I’ve had this happen to me with many scripts and in MOST cases restarting the email server solved the problem.

  175. Jeff said:

    Hi
    I have 3 basic questions, a need for some simplification for those of us non-programmers out here trying to use your script.

    1) I know you can alter the download & thank you pages - do you have to, or will the included dl.php & page.php files work as is without any further alterations?

    2) Which pages from the simple ipn download need to be uploaded to my site (besides the files I intend to sell)? I would think just the settings.php, dl.php, & page.php. Is this correct?

    3) What is the function & use of the ipn.php page? Can you just use a “buy now” button from the paypal site instead? If the ipn.php script is needed, how to you get it to run?

    Thanks a lot, in advance, to all those helpful souls answering. I respectfully salute your advanced technical knowledge!

  176. Kidino said:

    @Jeff

    1 - the thank you page and the download page cannot work without the HTML template. So yes, you have to.

    2 - You need to upload all the files except for the README text file.

    3 - Nope. You cannot use your own Buy Now button from Paypal. ipn.php generates that required code for the Buy Now button for you with some extra info like the URL where Paypal can send IPN data, the URL for the return page (aka thank you page) when purchase is done, etc…

  177. foo yinhan said:

    subject

  178. Dustin said:

    I’ve been having trouble getting this to work when NOT in sandbox mode. It appears that the problem is with added tax. Something to consider in future versions of the script :)

  179. Dustin said:

    To anyone else who has a similar problem with tax, you can add the following lines of code to ipn.php at the end of the “// assign posted variables to local variables
    ” section (line 66):
    $tax_amount = $_POST['tax'];

    $product_price = $product_price + $tax_amount;

    $product_price = number_format($product_price, 2);

  180. Kidino said:

    Thanks for the code. I may move this to a dedicated website and thinking about open source options…

  181. Trick Cow said:

    Just wanted to say - excellent script! I really appreciate the time you put into your project and your seemingly endless free support.

    I’m not complaining, but I wish there were a simple way to modify it to support multiple products. Maybe I’m missing something but I can only point my PayPal IPN Settings to one(1) ipn.php … therefore I can’t, according to your above instructions, copy simpleipn and just modify the settings. Maybe someone can enlightenment me? :)

    Anyhow, Thank you. The script installed perfectly for me and runs like a charm for one of my digital products.

    ***** 5 Star Script *****

    Thanks!

  182. Matt said:

    Trick Cow,

    The script doesn’t currently support multiple products per installation. However, you can simply install the script to another folder to add a new product. Unfortunately, you will have to have a fresh install for each new product (unless of course, you do a package of products) and/or download area.

    This seems to be an issue with even paid versions of paypal ipn scripts. I’ve installed countless scripts that use paypal IPN and the vast majority of them only support one download page and/or subscription fee, etc.

    There are a few out there that support multiple products, but I haven’t found a free one that does yet.

    Good LUCK!

    Matt

  183. foo yinhan said:

    how to use

  184. Steve K said:

    I am need of some help.

    I cannot make Simple IPN work, in either version (free and paid).
    Regardless of what I’ve tried, and I tried all the suggestions in this ‘forum/blog’, I still get the “Purchase does not match product details” error message. I went as far as changing only the PayPal EMail Address in the settings.php file. I still get the same error message.
    My host is Hostmonster and they’re saying that nothing is wrong with their system.
    I’m not a programmer so please take that into consideration.

    HELP!

    Thanks, Steve

  185. shaedowrose said:

    First I AM thrilled and the ease, simplicity and efficiency of this script and what it accomplishes.

    I was wondering if you still check FB as that is where I first went to contact the author.

    in under 15 minutes I was able to generate the entry side and the exit side in the style of the site I AM producing for my client.

    all I need now is to get the PayPal order to display the download page and I believe it is working and ready for release!

    it probably already has done that, I just need to find where the email was sent in the test!

    Again, Bless you for sharing such a Marvel and let me know how to get you your money and I look forward to a casual correspondence as well!

  186. Kidino said:

    OK, an update with some issues I found with recent users. You want to make sure you are accepting payments with a VERIFIED Paypal account. Otherwise, this could cause Status: Pending and Pending Reason: Unilateral.

    Simple IPN only process orders with Status: Completed. Even if the customer uses e-Check, Paypal will send IPN data again and Simple IPN will process it when it completes and customer will get email again.

    @shaedowrose

    Read the short manual and see how you can customize both Thank You page and Download page by editing the templates. Thank you page template is tpl_tqpage.html and Download page template is tpl_dlpage.html. There are variables that you use to display customer’s purchase info such as transaction ID, customer’s name, etc…

  187. Kidino said:

    I found this and I found it interesting.

    http://www.scriptlance.com/projects/1256483820.shtml

    The project creator wants Simple IPN to make download page expire in 6 months. The simplest way to do this is just set $expire_in_hours to 1440. 24 hours multiply by 60 days is 1440 hours. Just change that in settings.php

  188. Kidino said:

    @Pete Clark

    Not sure about your code there. About file not created in Debug mode, that’s not true. Yes, in Debug mode, return url is set to the IPN and not in production mode. But Paypal will still send data for ipn.php to process because we set notify_url to ipn.php.

    In Debug mode, return url is set to the ipn.php and not the thank you page is because to let programmers see what ipn.php is doing and what data Paypal is sending to it.

    And in Debug mode, the script will also dump data into ipnlog.txt for later checking.

  189. Steve K said:

    Tried you suggestion of using verified paypal accounts for testing. Results are still the same. I am still getting the “Purchase does not match product details.” with “payment_status: Pending” and “pending_reason: paymentreview”

    HELP. Still need your expertise.

  190. Steve K said:

    Followup to previous posting:
    If Payment Review is enabled for the seller’s account PayPal will generate the “pending_reason: paymentreview” error. Once disabled Simple IPN appears to work in PayPal’s Sandbox.

    Will do more testing to verify that everything is working.

  191. Steve K said:

    Another followup:
    Switched seller’s email from PayPal Sandbox account to live email account and now I get “pending_reason: unilateral”, which according to PayPal is due to the use of unconfirmed or unverified email account.
    Email account being used is confirmed and verified in both PayPal’s Sandbox and in live PayPal.
    Several websites suggest issue maybe with the script itself.

    Any suggestions?

  192. Paula said:

    Hi Steve K

    It seems strange that you cannot seem to get your setup to work - the script certainly does work as several people here have testified.

    It seems from your earlier post that your Sandbox setup works, so it would then follow that there is something within your live Paypal which is causing the “pending” status. What type of accounts are you using as a) your seller and b) your buyer when testing live? Are both accounts verified?

    If I can help at all - I will try.

  193. shaedowrose said:

    Yes those were both easily set and beautiful

    As yet I have not seen the actual email sent to the customer to ensure it works, how do I get a copy of that going thorugh the sandbox so I can verify it is correct?

    The only email displayed in the sandbox email tray for the test account it set-up is PayPals version, I need to see ours then I can take this live.

  194. Paula said:

    Hi shaedowrose

    For you (the buyer) to receive an email from Paypal Sandbox - that email address must exist and be set up on your site

    e.g. “buyer_1234567890_per@yoursite.com” - must exist for the email to be received. Anything other than that will bounce, unless you have a catchall account @yoursite.com

    Hope that helps

  195. Steve K said:

    Hi Paula,

    Discovered a new wrinkle: Emails are getting to the buyer’s email address with functional links but the buyer is receiving two identical emails about 6 or 7 seconds apart.

    Is this some quirkiness to Sandbox or is this something that needs more attention?

    Also, seller is receiving payment notification emails only within the Sandbox but not to the outside (gmail) address.

    Both emails are live and are outside the Sandbox.

    Any ideas?

    Thanks, Steve

  196. Paula said:

    Hi Steve K

    I am possibly not grasping your comments here, but Sandbox emails are completely separate from any “live” emails i.e. those outside Sandbox, and therefore the two methods of using this script rely on two entirely separate actions.

    One is within Sandbox (with a buyer e.g. buyer_1234567890_per@yoursite.com & seller e.g. seller_1234567890_biz@yoursite.com) and, of course you must be logged into Sandbox Developer to enable it. These email addresses must exist in your mail program for them to receive the necessary confirmations.

    The Other, entirely separately use, is the Live use of Paypal (with a buyer e.g. paypalbuy@yoursite.com & seller e.g. paypalsell@yousite.com). This is what your customer will see when actually buying your product.

    In all - that is FOUR email addresses to cover the TWO separate actions. You cannot mix and match.

    A) Does the script work for you in Sandbox? If not, what are you getting/not getting through and what, if any, error messages do you get?

    B) Does the script work in Live Mode? If not, what are you getting/not getting through and what, if any, error messages do you get?

    Sorry if I am confusing things even more - but by checking each action separately this may help to sort out your problem.

    As I say, I will try to help if I can.

    Regards
    Paula
    Money From Traffic Team

  197. Kidino said:

    Double email could only be sent when in debug mode.

  198. Jeff said:

    Hi
    Still trying to make sense of everything. Wondering about the permission settings. I have all the permisions set for 666, except the test mp3 & pdf, which are set to 644. Is this set correctly?
    Thanks,
    Jeff

  199. Fabo said:

    Question

    I believed I’ve done everything correct but (In Debug Mode) when I test it out everything works but the download.

    Keep getting this message
    Purchase Details Not Found. Contact Administrator.

    Is it because I’m in Debug mode or what? Please Help

  200. Fred said:

    Hello,
    I have “Invalid Page Request.” once payment is done when redirecting to page.php?thankyouxxxx ???
    Have you got an idea ?

  201. Fred said:

    Pfff.It doesn’t work this stuff !

  202. Fred said:

    OK I can make it work :)
    It works great in fact…I buy the script right now !

  203. Dan said:

    I LOVE this script, it’s gonna save me hours of leg work. One question, you’ll see I set up TWO different iterations of your script:

    http://thefoldrock.com/album

    - The first sends the buyer the whole album, and that one is working amazing.

    - The second is designed to send the buyer an MP3 bonus track immediately upon purchase, and the other half of the order is a physical autographed CD that I need to send them; BUT, I don’t seem to be receiving shipping addresses on my orders since I installed this script. Any ideas?

  204. Kidino said:

    Dan, the idea with this is for digital products. So I don’t set the shipping address. But if you feel like hacking it, you just need to look into ipn.php and look for the part where it creates the Paypal button codes. You need to have something like

    I think currently it is set to 1, where no shipping is required. If you set it to 0, it’s optional.

  205. Jeff said:

    Hi
    Still wondering about the permission settings. I have all the permisions set for 666, except the test mp3 & pdf, which are set to 644. Is this set correctly?
    Thanks,
    Jeff

  206. Jeff said:

    Hi
    Still wondering about the permission settings. I am still in the dark if these are set correctly. I have all the permisions set for 666, except the test mp3 & pdf, which are set to 644. Do these have to be set to 777? If so, which ones get reset?
    Thanks,
    Jeff

  207. Christopher said:

    Hello Kidino and the rest of the family.
    I’ve been reading all the posts and learning a bunch. I bought the scripts and I’m just new at learning all this. I have programmed in ‘c’ for many years and love it.
    I love the work you have done Kidino and thanks for being so outlandishly patient with all of us. You are amazing. I can’t figure out the html code for the link from my web site to paypal or to the ipn.php. I’ve tried a lot of different things. If I could get some code to link my buy button to whereever it’s suppose to point, i’d be grateful. I used a generated paypal segment. Didn’t work. I used a simple link from my button to the directory where the ipn.php file is located. Don’t think anything made it to paypal. When I bought the code for $10.00 I was given a perfect example of how the code works. I am really excited about the simplicity of this script. Does my heart good. I wouldn’t even mind if others sent me their button code. Paula, you seem to have been able to put it all together. Keep up the good work. Kidino congradulations on the new addition to your family. Thank you for your excitement and good energy. Thanks to everyone in advance. My email address is
    whereisamerica@gmail.com
    Christopher

  208. Paula said:

    Hi Christopher,

    Thanks for the mention!

    All I did was follow the simple instructions -

    HOW TO USE / INSTALLATION

    1. Update settings.php with your products info and Paypal details. (EDIT SETTINGS.PHP TO SUIT YOUR PRODUCT)
    2. Upload the files to your chosen directory (ON YOUR WEBSITE)
    3. From your sales page, link your order button to: ipn.php?buy

    (A SIMPLE LINK LIKE THIS WILL DO e.g.


    Make sure you have a suitable paypal image stored on your site.

    DONE!

    The three stages above are all you will need to get your basic script to work.

    Any other changes are just cosmetic to the “thank you page” and the “download page” - and these are just HTML templates.

    Hope that clarifies things a bit more.

  209. Kidino said:

    From your sales page, you just need to link the button to “ipn.php?buy” … that’s it. If the sales page and Simple IPN is not in the same folder, make sure you add some folder info or just use the full URL… ie http://yourwebsite.com/ipn/ipn.php?buy

  210. Christopher said:

    Well my dear friends:
    I am getting closer to my goal. I have learned so much today. So far here is what I have learned.
    1. Forget the Sandbox. For me there are just tooooo many variables to play with. Tooo many hours trying to please paypal sand box on email addresses, banks and credit cards …

    2. I discovered that by copying the Kidino files directly into my website directory and made NO changes to the permissions that they all worked fine. I am testing in real time and it’s fun. I dropped the price of my invoicing software to $1.00 and so far it is working great. I think I have 50 cents in my debit card account. It’s been a lot of fun. The emails are coming thru and everything. My only problem is at this point and I’m not asking for help. I’d rather spend the time and figure it out. The links to the download are haywire. Some crazy error. So don’t try to get my software for 1.00 cuz you’ll get ripped off. LOL I’ll let you know when it’s ready and then …..
    Thanks Kidino for such awesome ingenuity. Think about it…no database. I love the simplicity. Exactly what I was looking for. Kudos to Paula. Thanks for your good energy and faith in us. Just simple and straight forward.
    Working in the sandbox bout drove me up the wall though, til I decided that there ain’t no one in the sandbox with any real money so why am I wasting my time here. I’ll figure it out and it was much simpler in the real world…
    More later when my download links deliver.
    All my best and just be patient…it all works out.
    Christopher

  211. Paula said:

    Hi Christopher

    I have to agree with you on Sandbox - it is a developer’s tool, and unless, like us, you are using it for testing lots of other products/developments then it is just not worth setting up for a “one-off”.

    Best to get yourself two separate Paypal accounts and use live testing with those.

    Good luck with your efforts - you will get there - I am sure!!

  212. Christopher said:

    Well, It wasn’t hard to figure out. I am getting my downloads, emails and everything. This is truly cool. Thanks Kidino for your patience and kindness. I had so much fun learning and experimenting. For some reason my server requires that all the files…even the inventory zip files be placed in the same directory as the website. … I tried several different options on the settings.php for pointing the source line to the product when it was in another directory/folder on the server side.
    I tried the whole enchilada … ‘http://www.invoicingfordummies.com/download/invoice.zip’
    I tried ‘/download/invoice.zip’
    Nothing seemed to work except
    ‘invoice.zip’….and thanks. IT works very smooth. Thank you again.

    Just curious if anyone out there has been able to have their product downloaded from a sub-folder/directory and if so how does the source line read in ’settings.php’
    All my best and have loads of fun.
    Christopher

  213. Jhonattan said:

    Hi!

    Thank you for this wonderfull script!! it took me weeks to finally find this simple script that i needed, thank you so much, i got everything running smooth, there is only one minor thingy, i hope you can help me! when i download my product, it doesn’t automatically show the extension of the file, is there a way of having all filetypes downloadable with the full filename? like .mp3, .pdf etc..? Payment is going your way.. thank you!

  214. Jhonattan said:

    Hi! it’s me again :), i solved my problem! for all you other people who get the same problem like i did, the solution is to NOT have blank spaces in your filename.

    So if you have a filename called ‘AlfaBeta.mp3′ and a filename ‘MyEbook.pdf’ don’t describe it like ‘Alfa Beta.mp3′ or ‘My Ebook.pdf’. this script ROCKS!!

  215. don said:

    I am testing the script for a ebook. It seems to be working fine until I click the email link to the download page. When I try to download and open the pdf file my adobe acrobat program opens but I receive an error stating there is an issue with the file (but I can download the file via ftp and it opens-so there is no issue with the file itself).
    Thanks.

  216. Kidino said:

    @don Hmm … try uploading the file again, one more time. Or try downloading it again… also check the original source.

    @Jhonattan - hmm … i just simply put ‘../../’ in front of the file name to show that it’s at another folder above the script folder.

  217. Don said:

    I tried the ‘../../’ and that did not work I tried doing a simple .jpg download and that didn’t work. Here is what I received when I tried opening the pdf:

    Adobe Reader could not open sample.pdf because it is either not a supported file type or because the file has been damaged (for example, it was sent in an email attachment and wasn’t correctly coded).

    I have included the link to the download page so you can see for yourself. Maybe it is just an issue with my system.

  218. Kidino said:

    This could be the place where you got things confused. There are two places where you need to set the file name. One is the “filename” and the other is “source”.

    Filename is the name of the file that your customers will be downloading.

    Specifying the filename, you don’t need the location… hence, no need for “../../” or anything like that. Just the filename.

    Source is the actual source of the file, where the script will take its content and deliver it to your customers. You have to point this to an actual file that exists in your server.

    If you get confused about this, watch the video again, fullscreen and in HD.

  219. Kidino said:

    By the way, I am just so grateful that we’ve had over 2200 downloads since Aug ‘09. I may just spin this off into a website of its own and release this as LGPL.

    Feeling really great seeing all the websites using my script. Found near 100 websites so far…

  220. Don said:

    I watched the video again and I’m not following something I guess.

    Here is what I have in the setting.php file:

    $product_files = array(
    ‘name’ => ‘Party Thru College’, ‘filename’ => ’sample1.pdf’, ’source’ => ’sample1.pdf’
    );

    This works. But suppose I want to place the file in a folder one up on the order page here for example:

    http://www.partythroughcollege.com/partyfile

    what should I set source to?

  221. Kidino said:

    $product_files = array(
    ‘name’ => ‘Party Thru College’,
    ‘filename’ => ’sample1.pdf’,
    ’source’ => ’../path/to/other/folder/sample1.pdf’
    );

  222. SeoPadawan said:

    Hey Kidino,

    I’ve come across a lot of cool php scripts and yours is definitely in the top 5 :)

    Thanks for sharing with us.

    Jamal aka SeoPadawan

  223. Kidino said:

    Thanks Jamal.

  224. Alastair said:

    Hi Iszuddin,

    Script seems very cool. Two questions - would you consider adding facily for unique licence key delivery (a simple text database would be sufficient)? Secondly, if not, could we modify the script to add such functionality? What software licence are you releasing this under?

    Cheers,
    Alastair.

  225. Kidino said:

    I didn’t really research much about open source license when I did this. but now that I have, I officially announcing this .. this is released under MIT License.

    Alaistair, so far I don’t have plans to develop that feature. but if you want to sponsor it, I could spend some time. but you have to agree that the codes will also be released under MIT License.

  226. jony said:

    first thanks for the script but this script was bad news for me i having problems with the email i dont know what the problem is it just the script stop sending email and even after i reupload the new file it is not working i try to fix that for full day and no luck also i tried to make it to send email for me to and no luck it stop sending email for some reason so there is problem with the email beside that the script is good

  227. Lee said:

    Hey Kidino,

    I am wanting to implement the feature almost exactly as Alastair described. I have a table structure as well as a function to generate unique keys already to go. I just need to find time to pair the two together.

    So rather than me spending time to develop that functionality I would like to sponsor you to develop it. Could you get in touch with me to discuss details?

    Thanks Kidino,

    -Lee

  228. [WTB] help with Paypal ipn digital download script « The Digital Point said:

    [...] [WTB] help with Paypal ipn digital download script hey i need help i bought this script http://www.minisitegallery.com/blog/simple-ipn.html [...]

  229. [WTB] help with Paypal ipn digital download script « The Digital Point said:

    [...] [WTB] help with Paypal ipn digital download script hey i need help i bought this script http://www.minisitegallery.com/blog/simple-ipn.html [...]

  230. foo yin han said:

    i dont understand how to use

  231. John said:

    has anyone got this to work with alertpay?
    First time I have ever looked in to something like this and could use a little help in setting up…

  232. Jon said:

    I’d like to reiterate what Paula stated above. While in the sandbox, log into both buyer and seller account. Doing this and making sure my settings.php reflected the paypal seller TEST account, it worked fine in dev. Even the email was correctly sent out. By logging into both accounts I had ZERO problems. Before I set the correct paypal seller test account - I was also receiving the infamous “purchase details” error message. I have NOT set CHMOD 777 and I’m using hostgator.

    Thank you so much for making this script available. I’ll be making a donation after my first sale :-)

  233. Greg Ponchak said:

    I know pretty much all of the comments have been about getting this script to work and the “purchase details” error, but I’ve read through it all and cannot get it working for the life of me. I’ve checked the settings.php file over and over, i’ve tried changing the file permissions, still…I keep getting that error.

    If you could email me and help me out, that would be great. I’d be happy to pay the licensing fee.

    Thanks,
    Greg

  234. Abdul said:

    Thanks for the script but why does it take me to paypal sandbox?? when i enter the url

  235. Kidino said:

    @Abdul - check the settings.php and toggle for testing/sandbox off

    @Greg - I can’t right now because I have a lot at hand. But perhap some previous users can help Greg here. Maybe Greg needs a manual installation help…

    BTW Greg, what hosting are you on right now. WIndows/Linux. I haven’t test this on Windows hosting.

  236. Greg Ponchak said:

    I completely understand. It is quite alright. It would be great if someone else could help though!

    I am on Bluehost which I’m 99% sure is Linux.

  237. Dainis W. Michel said:

    If I have to put the PDF file on my server at let’s say domain.com/downloads/ebook.pdf, does this script allow me to keep folks from accessing that link directly?

    Best,
    Dainis

  238. Paula said:

    Dainis

    The file - as you have it - will still be accessible directly, however that direct link never appears as part of the scripts actions. It is not revealed at any time.

    By naming the actual file something obscure and having a blank index.htm file in your /downloads directory to stop people viewing the files in there - will make it virtually impossible for anyone to “guess” the proper location of your download.

    Remember you can use a more memorable name that your customer will see in “name” and “filename” and use a hard-to-guess name for “source”

    Hope that makes sense.

    Paula

  239. Paula said:

    Hi Greg

    Are you getting that error using Paypal Sandbox or Live Paypal (or even both)?

    I will try to help if I can - no promises!!

  240. Greg Ponchak said:

    Paula-

    That would be great if you could help :).

    I have just tried in Paypal Sandbox as I don’t really have much money to spend by trying it on live Paypal. Should I try this somehow?

  241. Gabi said:

    Hello, nice script but I have the same error as Francesco: Invalid Page Request. after paypal redirects to my page.
    I did not find a solution in the coments area.
    I want to buy it but I want it to work.

    Thank you

  242. Kidino said:

    UPDATE:

    I added shipping option in the settings. There’s a new variable where you can set get_shipping_address. 1 - yes, 0 - no, 2 - optional. You will see the result in your Paypal transaction. The shipping details aren’t save into the transaction file though…

  243. Ghillie Suits said:

    This is a great script. Thanks for sharing. I’m also getting a Download file ID 0 is not valid error. I’ll go through the comments and see if there is any solution?

  244. Scottsdale Personal Trainer said:

    Thank you for this program, I was trying to figure out how to sell my training ebooks on my site and this is exactly what I needed!!! You rock!!!

  245. Mariano said:

    Hello, First of all congratulations on your awesome script!
    Im trying to set it up for a test to download different files.
    But I have different items setup in paypal, and in the script there’s place for only one paypal item (line 14 of the script), how should I add more papyal items? there’s place for adding more files and filenames, but not different paypal items (with different paypal codes).
    Your help with this matter will be super appreciated.
    Thank you very much!

  246. Kidino said:

    @Mariano - the Paypal Item can be anything. Normally being used as product # or model # or anything like that. Just to help you with referring back to the product… just put in anything you feel suitable.

  247. Aperio said:

    @Mepoet — hope you still check in here from time to time, because your post gave me the solution. I was having that same problem as so many others in receiving the “Purchase Details Not Found” error message. It was an error on my part and NOT the script in regards to the sandbox developer seller and purchaser emails… I suspect this may be a problem for many of the others as well.

    So a quick recap for anyone else getting that message and you have already checked folder permissions and you are sure everything else is set correctly (i.e. file paths, lowercase for emails, etc).

    * Create a sandbox acct with an email other than your normal email address.

    * Create a test seller account and a test buyer account

    * When in test mode, plug in the sandbox seller account into settings.php and make your test purchase using the test purchaser account you created.

    Bada bing!

    @Kidino.. you are awesome sauce for this script!

  248. Sascha Junnek said:

    This code includes a code injection security vulnerability in dl.php (http://en.wikipedia.org/wiki/Code_injection#Include_file_injection)!

    Please fix it as described here:
    http://www.warriorforum.com/programming-talk/114968-free-paypal-ipn-script-digital-products-everyone.html#post1787720

  249. Kidino said:

    Thanks Sascha for highlighting this. With regards to that problem, it has been fixed. You can download the new version now.

    :)

  250. mepoet said:

    should those of us running an older version install only the dl.php …. or reinstall the entire Simple IPN script?

  251. Kidino said:

    OK … sorry. maybe I should be more clear.

    The files that you need to change are

    - dl.php
    - page.php

    Download the new one and replace those two

  252. Marius said:

    Hey guys!

    In test/sandbox mode should the script send the emails with the sample attachments to the test client email address? Because, from what I’ve noticed, nothing happens… And I’m getting that popular error… Purchase Details Not Found. Contact Administrator stuff.

    What i’ve done:
    - the folder was uploaded to the server and it has 777 attributes.
    - the e-mail addresses were both real ones and preconfigured by the sandbox but nothing got to them (not from the script at least)
    - i’ve edited the settings.php file and set the $paypal_email_address to the one I used to set up the test account.

    Am I missing something here?

    This seems to be a great script. If it would only work…

    thanks!

  253. Aperio said:

    @marius - not to buttinski with your question here.. but i fought long and hard before finally getting everything to work. Some things to double check..

    1. Make sure both the buyer and seller accounts are ones you’ve set up in the sandbox - not actual paypal accounts. The seller sandbox acct is the one put into settings.php and the buyer sandbox account is the one you will use when you do the test purchase.

    2. Make sure those accounts are set up as verified accounts and have payment review disabled (the payment review was an unknown stumbling block for me for a while).

    3. The emails get sent to your actual developer login i believe.

    4. Make sure you are actualy logged into the sandbox site when you run the tests.

    Not sure if any of those points may fix your troubles, but worth a shot to outline them just in case.

  254. Marius said:

    @Aperio thanks for the response!

    Ok, so I’ve checked the things you told me to check and the only thing that wasn’t already there was the payment review disabled wich in my case was actually enabled.
    Unfortunetly, that didn’t have any effect whatsoever…
    The only thing I have left to do it to go blind as Mepoet suggests here and give it a go live on my website. I hope I won’t have too many complaints.
    Keep your fingers crossed :)

  255. Marius said:

    Ok, so I’ve done what I said. I’ve gone blind and uploaded the script to my website. Apparently it works, there is no more urchase Details Not Found. Contact Administrator. Thank God!

    So here’s an advice to all of you that are still testing in Sanbox: DON’T! Just install it.

    But in my case there is a problem: it’s not sending any e-mails.
    Any advice on that ?

    Thanks!

  256. MarkMan said:

    Ola, what’s up amigos? :)
    In first steps it’s very nice if someone supports you, so hope to meet friendly and helpful people here. Let me know if I can help you.
    Thanks in advance and good luck! :)

  257. Silvershot said:

    Im currently making a new website that hosts peoples files for them and allows them to collect the money without any interference from me. Im currently in the testing stages at the moment.

    This script works like a charm *AFTER* setting the folder permissions to 777! its easy!

    Also, dont bother with the thankyou page details, PayPal cant clear it fast enough and the details are never created. The best thing to do is to just make a thank you page that states that there is an email on the way.

    Thanks so so much, im gonna give you a big shout out on the site and a like to this page when i get it all sorted!

    THANKS!

  258. Kidino said:

    With regards to the thank you page, you can always change it by changing the thank page template

  259. Silvershot said:

    Ok, for some reason its just stopped working and now i get this error:

    No web page was found for the web address: http://website/folder/folder/dl.php?id=3WR854951M139400P&file=0

    the file size is 72mb, does that have anything to do with it?

    Im frustrated cuz its worked once, then never worked again!

    please help me :(

  260. Silvershot said:

    I just tried changing the download source to:

    ../../FILE.ZIP

    and

    /folder/folder/FILE.ZIP

    both return:

    Download file ID 0 is not valid. Please contact webmaster.

    I cant see what is wrong and its very annoying to see that other people have got it working with ease.

    Heres my settings.php

    ‘jadeeastar.zip’, // normal name of the file
    ‘filename’ => ‘jadeeastar.zip’, // filename the customer will gets
    ’source’ => jadeeastar.zip’ // actual location of the file
    // does not need to be the same filename
    // location can elsewhere too like:
    // ’source’ => ‘../../store/sample.mp3′
    );

    //$product_files[] = array( DEFINE ANOTHER PRODUCT
    // ‘name’ => ‘Sample PDF eBook’,
    // ‘filename’ => ‘workbook.pdf’,
    // ’source’ => ’sample.pdf’
    // );

    $email_subject = ‘Your Purchase: {PRODUCT NAME} ({PRODUCT CODE})’; // subject line for your email

    // email body. you cannot have anything, even blank spaces after EOT

    $email_body = <<

  261. Silvershot said:

    if i type in the filename.zip in the URL bar, it will download it with the ID in the URL bar, somewhere it isnt making the link to the file :(

  262. Silvershot said:

    Is no1 available for help :(

    Ive tried everything, multiple times :’(

  263. Kidino said:

    @Silvershot, I am sure you received my email

  264. Dayseeker said:

    Hi,Kidino, i have the same problem as Silvershot , could you help me out?

  265. Frikdel said:

    Does someone fixed the Download file ID 0 error ?
    Please help

  266. Shawn said:

    Would there be an easy way to mod this so that the end purchased file is attached to the confirmation email sent to the buyer…rather than giving a link to a page?

  267. Kidino said:

    NOTE: I just found out that there must’ve been some changes in Paypal. Your thank you page will not work if you have Auto Return turned on in your Paypal profile.

  268. Kidino said:

    @Shawn - file attachment, you may need to edit functions.php yourself. There’s a function called send_customer_email. Can’t really help you with this but this URL may help.

    http://www.webcheatsheet.com/PHP/send_email_text_html_attachment.php

  269. Kidino said:

    @Frikdel - you need to make sure that the source for your file is correct.

  270. mepoet said:

    I have examined my paypal profile but I can’t find a reference to “Auto Return turned on in your Paypal profile”
    Under what heading in the paypal profile is it?

  271. admin said:
  272. mepoet said:

    Auto return. Thanks for the heads up.
    As usual Paypal has not given the complete instructions. The incomplete instructions say to log in, click the Profile subtab under My Account, then click Website Payment Preferences link under Selling Preferences.
    For those who follow instruction literally the problem is, you won’t see Selling Preferences under the Profile subtab.You will see “more options”. Click “more options” and then you will see Website Payment Preferences.

  273. David said:

    Hi

    I am testing the script but it returns the following after clicking the pay link - Any help here? Thank you!

    What follows is the complete page output with error messages (in view source mode)

    <body
    Notice: Undefined variable: debug in \\NAS43ENT\domains\t\themusicindex.com\user\htdocs\commerce\pages\html\ipn.php on line 23
    onload=”form1.submit()”>

    Notice: Undefined variable: debug in \\NAS43ENT\domains\t\themusicindex.com\user\htdocs\commerce\pages\html\ipn.php on line 39

    Notice: Undefined variable: debug in \\NAS43ENT\domains\t\themusicindex.com\user\htdocs\commerce\pages\html\ipn.php on line 47

     
     
     

    Notice: Undefined variable: debug in \\NAS43ENT\domains\t\themusicindex.com\user\htdocs\commerce\pages\html\ipn.php on line 56
    Please wait while we transfer you to Paypal.

Leave a Reply