O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Take My Money

Book Description

Getting paid using Stripe or PayPal is only the beginning of creating a fully-functional e-commerce application. You also need to handle failure cases, inventory management, administration, security, reporting, and be compliant with legal issues. Manage one-time transactions and recurring subscriptions, handle inventory management, issue discounts and refunds, mitigate administration and compliance issues, and test your code to ensure your customers have a smooth, hassle-free experience.

Table of Contents

  1.  Acknowledgments
  2.  Preface
    1. About This Book
    2. About You
    3. About the Project
    4. A Note About the Code
  3. 1. Not Taking Payments on the Web (Yet)
    1. Understanding the Data Model
    2. Building the Shopping Cart Feature
    3. Unit Testing Our Logic
    4. Next Up
  4. 2. Take the Money
    1. What’s a Payment Gateway and Why Do I Need One?
    2. Setting Up Our First Payment Gateway
    3. Charging Cards with Server Authentication
    4. Testing with the VCR Gem
    5. Next Up
  5. 3. Client-Side Payment Authentication
    1. Setting Up Client-Side Stripe
    2. Using the Token on the Server
    3. Testing the JavaScript via Capybara
    4. Next Up
  6. 4. PayPal
    1. Setting Up a PayPal Account
    2. Accepting PayPal Transactions
    3. Handling the PayPal Callback
    4. Developing PayPal Charges
    5. Next Up
  7. 5. Failure Is Totally an Option
    1. Client-Side Validation
    2. Server-Side Failure
    3. Testing for Failure
    4. Running a Background Job
    5. Notification
    6. Next Up
  8. 6. Subscriptions
    1. Creating Subscription Plans
    2. Creating Subscription Customers
    3. Purchasing a Subscription
    4. Setting Up Webhooks
    5. Supporting the Stripe Subscription Life Cycle
    6. Next Up
  9. 7. The Administration Experience
    1. Using Stripe’s Administration Dashboard
    2. Setting Up Your Own Administrative Dashboard
    3. Setting Up a Point of Purchase
    4. Next Up
  10. 8. Administration Roles
    1. Authentication and Roles
    2. Issuing Refunds
    3. Applying Discounts
    4. Next Up
  11. 9. Administration and Data Security
    1. Breaking the Rules
    2. Keeping Data Secure
    3. Two-Factor Authorization
    4. Simulating Users
    5. Blocking Email
    6. Next Up
  12. 10. Reporting
    1. Using ActiveAdmin Reporting
    2. Rolling Your Own Data
    3. Speeding Up Performance and Data Preparation
    4. Next Up
  13. 11. Adding Fees and Calculating Taxes
    1. Adding Nontax Fees
    2. Calculating Taxes
    3. Next Up
  14. 12. Third-Party Sales with Stripe Connect
    1. Creating Affiliate Accounts
    2. Transferring Payments to Affiliate Accounts
    3. Validating Affiliates
    4. Next Up
  15. 13. Going to Production
    1. Going Live
    2. Setting Up SSL/TLS Encryption
    3. Running Automated Security Audits
    4. Database Backups
    5. Running Periodic Tasks
    6. Compliance
    7. The End
  16.  Bibliography