Learn Ruby on Rails: Stripe Payment Processing
4.3 (37 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
15,727 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Learn Ruby on Rails: Stripe Payment Processing to your Wishlist.

Add to Wishlist

Learn Ruby on Rails: Stripe Payment Processing

Learn How to Make a Web App That Uses Stripe to Accept One-Off or Subscription Payments.
4.3 (37 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
15,727 students enrolled
Created by Daniel Kalish
Last updated 12/2016
English [Auto-generated]
Price: $70
30-Day Money-Back Guarantee
  • 1.5 hours on-demand video
  • 52 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Use Stripe to Accept Subscription or One off Payments.
  • App Development Through Ruby on Rails.
  • Basic Layout and Formatting with HTML and CSS.
  • Deploy an Application Using Heroku.
  • Automatically Email Receipts Using SendGrid.
  • All Students Will Have Access to Precise and Complete Code Downloads.
  • Learn How to Use Git and Github for Version Control.
  • Up-To-Date Guidance and Code.
  • Streamlined Instruction for Ease and Efficiency.
View Curriculum
  • No Previous Programming Experience Required.
  • Any Computer Can Be Used.

Whatever the brilliant idea, product, or service, an e-commerce website simply won't function without streamlined, intuitive payment processing. In this course we'll be providing an essential breakdown of activating Stripe using Rails to allow you to start receiving income without all the stress of merchant accounts and banks. Stripe is quickly becoming an industry standard for payment processing, and is an effective tool you cannot afford to be without. 

In this course, you will learn the most straightforward way to accept one-off payments or recurring billing with your Rails web applications. You will also learn how to: Implement Bootstrap with HTML templates, add Stripe to your site, email receipts with Sendgrid, build a web application with Ruby on Rails, and deploy your application with Heroku.

Who is the target audience?
  • Beginner and Advanced users alike
  • Web Designers and Developers.
  • Entrepreneurs and Self Starters.
Compare to Other Ruby On Rails Courses
Curriculum For This Course
29 Lectures
Start Here
3 Lectures 10:04
  • An overview, of the website that we will create in this course.
  • Make sure you have rails installed.
  • Follow the installation guide for the operating system you are using.
  • Check what version of ruby you have installed.
  • Check what version of git you have installed.
Preview 02:08

  • Start Terminal.
  • Create a directory.
  • Use "cd" to change the directory.
  • Generate a rails app.
  • Learn the commands to start and stop the Rails server.
  • Create a git repository.
  • Use git to commit code changes.
Preview 03:26

  • Create a new sublime text project.
  • Make a new route. 
  • Create a new controller.
  • Define a new method called home.
  • Create the home view.
  • Save the code changes in git.
Preview 04:30
Launch with Heroku
3 Lectures 08:33
  • Check what version of ruby you're using.
  • Add the postgresql gem to the gemfile.
  • Set sqlite3 as the database for test and development.
  • Set postgres as the production database.
  • Add the rails 12 factor gem.
  • Run bundle install.
Set the App up to Work with Heroku.

  • Sign up for a free Heroku account.
  • Download the Heroku Command Line Interface.
  • In Terminal, login to Heroku.
  • Create an Heroku application.
  • Use git, to push the local app to Heroku’s servers.
  • Go to your new Heroku URL.
Preview 02:08

  • Create a free Github account.
  • Make a new repository.
  • Run git remote add origin.
  • Push your code to Github by running git push -u origin master.
Use Github to Save Code Changes.
Add Twitter Bootstrap
5 Lectures 11:34
  • Add bootstrap’s gem to the gemfile.
  • Have rails install the gems and their dependencies by running bundle install.  
  • Add some css to the project.
Add Twitter Bootstrap

  • To make the app look better, add some Javascript, CSS, and HTML.
  • Download the files from Github.
  • Start meshing the design with the rails app.
  • Structure the home view correctly.

    Make the Homepage Look Better.

    • Make the homepage look more like the design.
    • Commit the code changes to Git.
    Update the Homepage CSS.

    • Make the homepage header image render.
    • Set the header image path.
    • Add a new image tag.
    • Import bootstrap’s Javascript.
    Add an Image Tag.

    • Transfer shared code from home.html.erb to application.html.erb.
    • Move the header content.
    • Push the updated app to Github.
    Update the Layout.
    Use Stripe to Charge Customers
    7 Lectures 27:59
    • Add Stripe’s gem to the rails app.
    • Run bundle install.
    • Add a charges form to the app.
    Add a Credit Card Form.

    • Sign up for a stripe account.
    • Add your Stripe test publishable API key to the rails app.
    • Add a charges controller.
    • Copy the create method from Stripe's example code.
    • Try submitting a payment with Stripe's test card.
    • Create an initializer.
    • Use Embedded Ruby (ERB) to output the value of the Stripe publishable key.
    Make a Charges Controller.

    • Install the gem for Figaro.
    • Run bundle install.
    • Install figaro.
    • Add your Stripe API keys to application.yml
    • Make your first successful Stripe test credit card payment.
    • Push the updated app to Heroku.
    Install Figaro.

    • Start the process of making the homepage look better.
    • Create a hidden field tag for Stripe token and Stripe email.
    • Add a HTML button tag.
    • Add some Javascript.
    • Make sure the charges controller is getting the amount from the form.
    • Push the updated app to Github.
    Modify the Credit Card Form.

    • Start the process of storing all transactions in the Database.
    • Add a table to save purchases.
    • Generate a new model.
    • Remove the test files.
    • Add some new fields to the migration.
    • Add a new method to the purchases controller.
    • Make a new route to show purchases.
    • Create a new view.
    • Display information about the user’s purchase.
    • Push the updated app to Heroku.
    Make the Purchase Last.

    • Test the app on Heroku.
    • Use Amazon S3 cloud service to store an image.
    • Create a bucket.
    • Change the rails app so ,after a purchase is made, an user can download a file.
    • Make the app’s receipt look better.
    Store Images on Amazon S3 and Improve the Receipt.

    • Use an universally unique identifier (UUID) to make the receipt url harder to guess.    
    • Migrate the UUID field to the purchase table.
    • Push the updated app to Github.
    • Push these changes to Heroku.
    Make the Receipt URL More Secure.
    7 Lectures 22:27
    • Get the app ready to send emails with Sendgrid.
    • Setup to email the buyer their downloadable content.   
    • To handle emails locally, add the gem letter opener.
    • Configure letter opener to open the email in the browser.
    • Run bundle install.
    • Push the updated app to Github.
    Sendgrid and Email Settings.

    • After someone makes a purchase, the app, should send them an email.
    • Create a new method.
    • Define a new class.
    • Make a new view.
    • Create a layout for the email.
    • Push the updated code to Github.
    • Push the updated code to Heroku.
    • Check the email address you entered for an email with a link to the download.
    Get Emails Working Locally and on Heroku.

    • To help  see any purchases, add an admin system to the app. 
    • Add the gem for Active Admin.
    • For user authentication, add the gem Devise.
    • Run the generated migrations.
    • Seed the database.
    • Push the updated app to Heroku.
    • Migrate the database changes to Heroku.
    Install Active Admin.

    • Configure the rails app to allow all product purchases to be viewed in active admin.
    • Create seed data.
    Configure Active Admin.

    • Store the seed products in the database.
    • Generate a new model.
    • Use a database migration to create the products table.
    • Run the migration.
    • Seed data into the product’s table.
    Add Products to the Database.

    • Create a new variable to find the product ,in the database, by SKU.
    • Pull product information ,from the database, and display it.
    • Render the product’s title, subtitle, price, and description.
    • Add a product info field to the database.
    • Create a new migration.  
    • Add a column to the products database table.
    • Migrate a new field to the database.
    • Load new product seed data.
    • For Stripe, add a new method to convert the product's price from dollars to cents.
    Display Product Information from the Database.

    • Continue updating the templates to pull product information from the database.
    • Push the updated app to Heroku.
    • Migrate the database changes to Heroku.
    • Reset your Heroku database. 
    • Upload your new seed data to Heroku.
    Update the Templates Then Test on Heroku
    Stripe Subscriptions
    4 Lectures 13:02
    • Create a Stripe subscription plan.
    • Allow customers to subscribe to the plan.
    • Allow customers to be charged for the subscription plan.
    • Change the currency and description of the purchase.
    • Test the subscription plan.
    • Push the updated code to Github.
    • Push the app to Heroku.
    • Reset your Heroku app’s database.
    • Test the app on Heroku.
    • Migrate the updated database structure to Heroku.
    • Add the seed data to the Heroku app’s database.
    • Drag your images into the app's images folder.
    Use Stripe to Accept Subscription Payments.

    • Make a page that displays all of the products from the database.
    • Create a new controller and method.
    • Create a new route for the page.
    • Make a new view.
    • Use Embedded Ruby (ERB) to loop through the products in the database.
    • Render the product images.
    Create a Page That Displays All of the Products.

    • Improve the look of the products page.
    • Modify a template.
    • Push the updated code to Heroku.
    • Migrate the database changes to Heroku.
    • Reset the database and upload the new seed data.
    • Make a new method then, add it to the products route.
    • Create a new template.
    • Fix the product links.
    Add a Page That Displays Individual Products.

    • Set index.html as the homepage.
    • Update the charges controller to make sure that it charges for the correct product.
    Make Sure That the Correct Subscription Is Purchased.
    About the Instructor
    Daniel Kalish
    4.0 Average rating
    282 Reviews
    30,483 Students
    3 Courses
    Web Developer

    I’m a self-taught web developer and veterinarian. I want to use technology to make veterinary medicine more efficient.

    Building something and watching it succeed is extremely gratifying. I’m here to teach you some of today’s most in demand skills. I want you to experience the joy of building something from nothing.

    My background: I have been coding for 9 years. I was first motivated to learn how to program because I wanted to build a super Mario bros fan site. It was a simple static HTML and CSS website. Although that website never got traction my interest in coding did.

    In high school, a friend showed me how to build dynamic websites with a PHP framework. I grew frustrated with PHP because the community was fragmented between many frameworks.
    In university I saw a video where a developer makes a blog with Django, in 15 minutes. I loved the fact that Django is quick and powerful.I love Django because it has a english like syntax and a strong community of developers. After becoming comfortable developing with Django, I volunteered to build websites for friends and family. Eventually I was referred to my first paying client.