It's annoying to wait until next episode for production use! :-)
Thanks, Ryan!
It is certainly getting more complex, Ryan, but it looks good. Thanks!
@MTH: If you want people to actually use your product then don't:
1. make something that looks like a spam site.
2. don't spam comments.
To test this locally you could quite easily setup a dynamic dns to point a public domain name to your local environment, such as dyndns.
I've done that on a couple of occasions when working with external services which need to hit my machine as part of the applications natural processes.
It is interesting how other people do these kind of things.
However I am still a bit unsure why you are not using ActiveMerchant ?
Don't you find it makes things easier ?
Thanks, and keep up the good work!
Hamza
@Trasbo You are not right:
1. don't looks like a spam site
2. didn't spam comments.
Anyway, thanks for suggestions, I'll think about it.
@Hamza, agree,
Ryan, please, show us how to use ActiveMerchant
Thanks
@MTH: I must disagree with you. E.g. Take a look at this site: http://flockr.com/ (misspelling of flickr.com)
1. It has no logo, just a text based representation of the domain name.
2. It has a monotone typography, e.g. Arial/sans-serif only.
3. It doesn't contain any useful information or any useful features.
This is exactly three convergences of spam sites, and your site fulfills them.
And I still think that you're comments here can be considered as spam, because they only seem to have one purpose: to promote your site.
If none of this is the case, please receive my apologies. But could you explain what exactly makes your site and comments non-spam?
I wrote this earlier:
"1. make something that looks like a spam site."
Of course, that should've been:
1. make something that DOES NOT look like a spam site.
Apologies... :)
David,
I'll respond to you by email.
I'm very appreciate Ryan, and don't want to start flame here.
Thanks.
I think recurring billing would be an interesting and useful topic. I know that certain payment gateways support it, but it can be complicated. You would need a background task to scan periodically and make charges...
Thanks Ryan and keep up the good work.
Hey,
I'm working on an e-shop (php but nevermind), and wanna ask something.
Is it safe enough to check the notification for the amount paid to ensure that payment was not tampered?
Hi Ryan,
Paypal's Order Management integration guide says you need to use a "shared secret" or a "postback". I did not see you use either.
See page 26th of the guide: "After your server receives an Instant Payment Notification, you must confirm that the notification is authentic. This is known as notification validation."
Can you comment on this? Am I missing something?
Thanks,
John
No questions, no suggestions, no complaints, just THANKS!
Great Tutorial Again!
@Ryan:
If you continue to support us with this high quality screencasts, I'll maybe use the learned things to open my own business ;)
Happy New Year to everyone! (not yet but in a few hours ;) )
Happy New Year, Ryan!
Thank you for all your work this year.
Please, continue on the next year.
Thanks thanks thanks!!!
Hello!
Thanks for this tutorial, it is really great, but i am somehow stuck on the serialize part....
In a LOG i can see i get all the information from PayPal, but serialize is somehow failing.
Anyone else with a same problem?
What could be a trick?
Thanks
Hey Ryan,
I have taken what you have done here (great workup, by the way!) and have translated it to use Google Checkout using the google4r-checkout gem. It is really great! Let me know if you want me to pastie you the source for a Railscast episode in this series :)
Thanks again!
Hey Ryan:
Would you mind addressing how to validate non-model backed form components? I'm specifically talking about forms where you use a model to save stuff like the customer's name and phone number, but you don't want to save sensitive data like their credit card number to the database for security reasons.
The same question was raised in a different context by creatop in the comments of Episode 37: "Nice, but what about more complicated non-model forms with many fields with validation required?"
It seems like a pretty common scenario to me - but for some reason there is absolutely no documentation on it (or if there is, I've wasted the last five hours for nothing...haha).
Happy New Year !
I owe you not a beer, but a bottle of fine single malt. Or i might just go and buy a few of your commercial screencasts.
Keep up the good work !
@Hamza, I plan to cover ActiveMerchant in future episodes.
@zero0x, right, this is one of the security issues I plan to cover in the next episode.
@Josh, that sounds great. I don't plan to cover Google Checkout in this series, but maybe if there's enough demand I'll make an episode for it later.
@Patrick, using ActiveRecord's validations on a non-database backed model can be difficult. I am delaying talking about this issue until Rails has some better support for this built in. But in the meantime you may want to check out some external validation plugins. Sorry I don't know of the best one off the top of my head.
I personally do not run into this issue because I prefer to keep a record of user input. So, every model that has a decent size form is backed by a database.
Great screencast, Ryan!
Paypal kind of bums me out. I dislike the idea of ipn. For MassPay transactions, I really wish there was a query/request you could send to get the status of payment, but unfortunately I haven't been able to find it.
@Dan: it exists and it is compulsory for validating a purchase! It's just that Ryan didn't get into that yet. I guess he'll talk about it in the next episode.
At this stage of the app you still cannot mark a cart as being purchased/paid.
FYI Paypal provides on their developer website, a Ruby on Rails app in which you can dive in to understand the payment process, but beware it requires a lot of cleaning up.
People interested in PayPal for Rails may want to check out the Spree[1] commerce project which has excellent PayPal support.
There's also a nice extension[2] that provides integrates support for Paypal Website Standard.
[1] http://spreehq.org
[2] http://github.com/Gregg/spree-pp-website-standard/tree/master





