/payola

Drop-in Rails engine for accepting payments with Stripe

Primary LanguageRubyOtherNOASSERTION

Payola

Gem Version CircleCI Code Climate Test Coverage Dependency Status

Payments with Stripe for your Rails application.

What does this do?

Payola is a drop-in Rails engine that lets you sell one or more products by just including a module in your models. It includes:

  • An easy to embed, easy to customize, async Stripe Checkout button
  • Asynchronous payments, usable with any background processing system
  • Full webhook integration
  • Easy extension hooks for adding your own functionality
  • Customizable emails

To see Payola in action, check out the site for Mastering Modern Payments: Using Stripe with Rails. Read the book to find out the whys behind Payola's design.

Installation

Add Payola to your Gemfile:

gem 'payola-payments'

Run the installer:

$ rails g payola:install
$ rake db:migrate

(Note: do not run rake payola:install:migrations. Payola's migrations live inside the gem and do not get copied into your application.)

Optionally, tell Stripe about your application. Add this as a webhook in your Stripe dashboard:

https://your.website.example.com/payola/events

Additional Setup Resources

One-time payments

Configuration options

Subscriptions

TODO

  • Multiple subscriptions per customer
  • Affiliate tracking
  • Easy metered billing

License

Please see the LICENSE file for licensing details.

Sponsorship

You can sponsor Payola development on Patreon.

Changelog

Please see CHANGELOG.md.

Contributing

  1. Fork the project
  2. Make your changes, including tests that exercise the code
  3. Summarize your changes in CHANGELOG.md
  4. Make a pull request

Version announcements happen on the Payola Payments Google group and @payolapayments.

Author

Pete Keen, @zrail, https://www.petekeen.net