ساده کردن پرداخت ها با Pay Gem: راهنمای استفاده از Stripe در Rails

Summarize this content to 400 words in Persian Lang
یکپارچه سازی پرداخت می تواند هنگام ساخت برنامه های وب چالش برانگیز باشد. جم Pay مدیریت اشتراک و پرداخت را در برنامه های Rails بسیار آسان می کند. برای مدیریت پرداخت ها، برنامه ها را با Stripe، Paddle، Braintree یا Lemon Squeezy ادغام می کند. در این مقاله یکی را مرور می کنیم و در عمل نحوه عملکرد آن را توضیح می دهیم و سپس با استفاده از یک مثال ساده آن را تنظیم می کنیم.
پرداخت چیست؟
The Pay Gem کتابخانه ای برای رسیدگی به پرداخت ها و اشتراک ها در Rails است. بسیاری از وظایف رایج را انتزاع می کند، مانند:
ایجاد و مدیریت سوابق مشتری در Stripe.
رسیدگی به اشتراک ها، فاکتورها و روش های پرداخت.
مدیریت وب هوک ها برای به روز رسانی پرداخت در زمان واقعی.
به جای نوشتن کد سفارشی برای تعامل با Stripe API، Pay یک رابط Rails-friendly ارائه می دهد که باعث صرفه جویی در زمان و کاهش پیچیدگی می شود.
پرداخت چگونه کار می کند؟
Pay با مدلهای Rails شما ادغام میشود تا پرداختها و اشتراکها را انجام دهد. به عنوان مثال، می توانید یک رابطه pay_customer را به مدل User خود اضافه کنید و به هر کاربر اجازه دهید پرداخت های خود را مدیریت کند. Pay همچنین به وبقلابها از Stripe گوش میدهد، بنابراین وقتی پرداختها انجام میشود یا اشتراکها تغییر میکنند، برنامه شما بهروزرسانی میشود.
تنظیم پرداخت برای Stripe
در اینجا نحوه شروع به کار آمده است:
1. Gem را نصب کنید
Pay را به Gemfile خود اضافه کنید و آن را نصب کنید:
gem ‘pay’
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
را اجرا کنید bundle install دستور نصب آن:
bundle install
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
2. Pay را پیکربندی کنید
مولد را اجرا کنید تا انتقالات و پیکربندی Pay را تنظیم کنید:
rails generate pay:install
rails db:migrate
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
ایجاد شده را ویرایش کنید config/initializers/pay.rb فایل برای فعال کردن Stripe:
Pay.setup do |config|
config.adapters = [:stripe] # Add Stripe as the payment adapter
config.default_product_name = “My Awesome App”
config.default_plan_name = “default-plan”
end
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
کلیدهای Stripe خود را در متغیرهای محیط یا credentials.yml.enc:
stripe:
public_key: pk_live_12345
secret_key: sk_live_12345
webhook_secret: whsec_12345
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
3. Pay را به مدل های خود وصل کنید
در مدل کاربر خود، را اضافه کنید Pay::Billable ماژول با استفاده از pay_customer روش:
class User < ApplicationRecord
pay_customer
end
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
این به کاربران اجازه می دهد تا روش های پرداخت، اشتراک و فاکتورها را داشته باشند.
4. Stripe Webhooks را راه اندازی کنید
برای مدیریت بهروزرسانیهای بلادرنگ از Stripe، یک نقطه پایانی وب هوک راهاندازی کنید. این دستور را اجرا کنید:
rails generate pay:webhooks
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
این باعث ایجاد یک Pay::Webhooks::StripeController که رویدادهای Stripe را پردازش می کند. URL وب هوک را در داشبورد Stripe، معمولاً در:
https://your-app.com/pay/webhooks/stripe
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
مثال: ایجاد اشتراک
در اینجا یک مثال ساده از نحوه ایجاد اشتراک آورده شده است:
1. یک دکمه برای پرداخت اضافه کنید
از نظر شما، فرمی برای جمع آوری روش پرداخت اضافه کنید:
<%= form_with url: stripe_payment_method_path, method: :post do %>
id=”card-element”>
type=”submit”>Submit Payment
<% end %>
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
Stripe ابزارهای جاوا اسکریپت را برای مدیریت امن فیلدهای ورودی کارت فراهم می کند.
2. یک روش پرداخت را به کاربر پیوست کنید
در کنترلر:
class StripeController < ApplicationController
def create_payment_method
current_user.payment_processor = :stripe
current_user.payment_processor.save_payment_method(params[:payment_method_id])
redirect_to subscriptions_path, notice: “Payment method saved!”
end
end
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
3. یک اشتراک ایجاد کنید
اکنون می توانید یک اشتراک برای کاربر ایجاد کنید:
class SubscriptionsController < ApplicationController
def create
current_user.payment_processor.subscribe(plan: “default-plan”)
redirect_to dashboard_path, notice: “Subscription created!”
end
end
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
چگونه پرداخت کارها را ساده می کند
بهجای تعامل مستقیم با Stripe API، Pay کارهای سنگین را انجام میدهد. آن:
روش های پرداخت را ذخیره می کند و مشتریان را به صورت خودکار در Stripe ایجاد می کند.
صورتحساب مکرر را از طریق روشهای اشتراک خود مدیریت میکند.
اطمینان حاصل می کند که وب هوک ها برنامه شما را بدون کد سفارشی به روز می کنند.
نتیجه گیری
جواهر Pay ادغام Stripe با Rails را ساده می کند. با انتزاع کردن وظایف رایج پرداخت، به شما امکان می دهد به جای جزئیات پردازش پرداخت، روی ویژگی های برنامه خود تمرکز کنید.
اگر با پرداخت در Rails شروع میکنید، از Pay استفاده کنید—این برنامه برای صرفهجویی در وقت و پاکتر کردن کد شما طراحی شده است.
یکپارچه سازی پرداخت می تواند هنگام ساخت برنامه های وب چالش برانگیز باشد. جم Pay مدیریت اشتراک و پرداخت را در برنامه های Rails بسیار آسان می کند. برای مدیریت پرداخت ها، برنامه ها را با Stripe، Paddle، Braintree یا Lemon Squeezy ادغام می کند. در این مقاله یکی را مرور می کنیم و در عمل نحوه عملکرد آن را توضیح می دهیم و سپس با استفاده از یک مثال ساده آن را تنظیم می کنیم.
پرداخت چیست؟
The Pay Gem کتابخانه ای برای رسیدگی به پرداخت ها و اشتراک ها در Rails است. بسیاری از وظایف رایج را انتزاع می کند، مانند:
- ایجاد و مدیریت سوابق مشتری در Stripe.
- رسیدگی به اشتراک ها، فاکتورها و روش های پرداخت.
- مدیریت وب هوک ها برای به روز رسانی پرداخت در زمان واقعی.
به جای نوشتن کد سفارشی برای تعامل با Stripe API، Pay یک رابط Rails-friendly ارائه می دهد که باعث صرفه جویی در زمان و کاهش پیچیدگی می شود.
پرداخت چگونه کار می کند؟
Pay با مدلهای Rails شما ادغام میشود تا پرداختها و اشتراکها را انجام دهد. به عنوان مثال، می توانید یک رابطه pay_customer را به مدل User خود اضافه کنید و به هر کاربر اجازه دهید پرداخت های خود را مدیریت کند. Pay همچنین به وبقلابها از Stripe گوش میدهد، بنابراین وقتی پرداختها انجام میشود یا اشتراکها تغییر میکنند، برنامه شما بهروزرسانی میشود.
تنظیم پرداخت برای Stripe
در اینجا نحوه شروع به کار آمده است:
1. Gem را نصب کنید
Pay را به Gemfile خود اضافه کنید و آن را نصب کنید:
gem 'pay'
را اجرا کنید bundle install
دستور نصب آن:
bundle install
2. Pay را پیکربندی کنید
مولد را اجرا کنید تا انتقالات و پیکربندی Pay را تنظیم کنید:
rails generate pay:install
rails db:migrate
ایجاد شده را ویرایش کنید config/initializers/pay.rb
فایل برای فعال کردن Stripe:
Pay.setup do |config|
config.adapters = [:stripe] # Add Stripe as the payment adapter
config.default_product_name = "My Awesome App"
config.default_plan_name = "default-plan"
end
کلیدهای Stripe خود را در متغیرهای محیط یا credentials.yml.enc
:
stripe:
public_key: pk_live_12345
secret_key: sk_live_12345
webhook_secret: whsec_12345
3. Pay را به مدل های خود وصل کنید
در مدل کاربر خود، را اضافه کنید Pay::Billable
ماژول با استفاده از pay_customer
روش:
class User < ApplicationRecord
pay_customer
end
این به کاربران اجازه می دهد تا روش های پرداخت، اشتراک و فاکتورها را داشته باشند.
4. Stripe Webhooks را راه اندازی کنید
برای مدیریت بهروزرسانیهای بلادرنگ از Stripe، یک نقطه پایانی وب هوک راهاندازی کنید. این دستور را اجرا کنید:
rails generate pay:webhooks
این باعث ایجاد یک Pay::Webhooks::StripeController
که رویدادهای Stripe را پردازش می کند. URL وب هوک را در داشبورد Stripe، معمولاً در:
https://your-app.com/pay/webhooks/stripe
مثال: ایجاد اشتراک
در اینجا یک مثال ساده از نحوه ایجاد اشتراک آورده شده است:
1. یک دکمه برای پرداخت اضافه کنید
از نظر شما، فرمی برای جمع آوری روش پرداخت اضافه کنید:
<%= form_with url: stripe_payment_method_path, method: :post do %>
id="card-element">
<% end %>
Stripe ابزارهای جاوا اسکریپت را برای مدیریت امن فیلدهای ورودی کارت فراهم می کند.
2. یک روش پرداخت را به کاربر پیوست کنید
در کنترلر:
class StripeController < ApplicationController
def create_payment_method
current_user.payment_processor = :stripe
current_user.payment_processor.save_payment_method(params[:payment_method_id])
redirect_to subscriptions_path, notice: "Payment method saved!"
end
end
3. یک اشتراک ایجاد کنید
اکنون می توانید یک اشتراک برای کاربر ایجاد کنید:
class SubscriptionsController < ApplicationController
def create
current_user.payment_processor.subscribe(plan: "default-plan")
redirect_to dashboard_path, notice: "Subscription created!"
end
end
چگونه پرداخت کارها را ساده می کند
بهجای تعامل مستقیم با Stripe API، Pay کارهای سنگین را انجام میدهد. آن:
- روش های پرداخت را ذخیره می کند و مشتریان را به صورت خودکار در Stripe ایجاد می کند.
- صورتحساب مکرر را از طریق روشهای اشتراک خود مدیریت میکند.
- اطمینان حاصل می کند که وب هوک ها برنامه شما را بدون کد سفارشی به روز می کنند.
نتیجه گیری
جواهر Pay ادغام Stripe با Rails را ساده می کند. با انتزاع کردن وظایف رایج پرداخت، به شما امکان می دهد به جای جزئیات پردازش پرداخت، روی ویژگی های برنامه خود تمرکز کنید.
اگر با پرداخت در Rails شروع میکنید، از Pay استفاده کنید—این برنامه برای صرفهجویی در وقت و پاکتر کردن کد شما طراحی شده است.