Ruby on Rails
रेल में भुगतान सुविधा
खोज…
परिचय
यह दस्तावेज़ आपको एक पूर्ण उदाहरण के साथ पेश करने का दिखावा करता है, कि आप रूबी ऑन रेल्स के साथ विभिन्न भुगतान विधियों को कैसे लागू कर सकते हैं।
उदाहरण में, हम स्ट्राइप और ब्रेंट्री को दो बहुत प्रसिद्ध भुगतान प्लेटफार्मों को कवर करेंगे।
टिप्पणियों
स्ट्राइप के साथ कैसे एकीकृत करें
हमारे Gemfile
धारी रत्न जोड़ें
gem 'stripe'
initializers/stripe.rb
फ़ाइल जोड़ें। इस फ़ाइल में आपके स्ट्राइप खाते से जुड़ने के लिए आवश्यक कुंजियाँ हैं।
require 'require_all'
Rails.configuration.stripe = {
:publishable_key => ENV['STRIPE_PUBLISHABLE_KEY'],
:secret_key => ENV['STRIPE_SECRET_KEY']
}
Stripe.api_key = Rails.configuration.stripe[:secret_key]
स्ट्राइप के लिए एक नया ग्राहक कैसे बनाएं
Stripe::Customer.create({email: email, source: payment_token})
यह कोड दिए गए ईमेल पते और स्रोत के साथ स्ट्राइप पर एक नया ग्राहक बनाता है।
payment_token
क्लाइंट-साइड से दिया गया टोकन है जिसमें क्रेडिट कार्ड या बैंक खाते जैसी भुगतान पद्धति शामिल है। अधिक जानकारी: धारीदार.जेएस क्लाइंट-साइड
स्ट्राइप से एक योजना कैसे पुनः प्राप्त करें
Stripe::Plan.retrieve(stripe_plan_id)
यह कोड स्ट्राइप से अपनी आईडी द्वारा एक योजना प्राप्त करता है।
सब्सक्रिप्शन कैसे बनाएं
जब हमारे पास एक ग्राहक और एक योजना है तो हम स्ट्राइप पर एक नई सदस्यता बना सकते हैं।
Stripe::Subscription.create(customer: customer.id, plan: plan.id)
यह एक नई सदस्यता बनाएगा और हमारे उपयोगकर्ता से शुल्क लेगा। यह जानना महत्वपूर्ण है कि स्ट्राइप पर वास्तव में क्या होता है जब हम किसी उपयोगकर्ता को किसी योजना की सदस्यता देते हैं, तो आपको यहां अधिक जानकारी मिलेगी: स्ट्राइप सब्सक्रिप्शन लाइफटाइम ।
एक भुगतान के साथ उपयोगकर्ता को कैसे चार्ज किया जाए
कभी-कभी हम अपने उपयोगकर्ताओं को केवल एक बार चार्ज करना चाहते हैं, इसके लिए हम अगला काम करेंगे।
Stripe::Charge.create(amount: amount, customer: customer, currency: currency)
उस स्थिति में, हम अपने उपयोगकर्ता को दी गई राशि के लिए एक बार चार्ज कर रहे हैं।
आम त्रुटियों:
राशि को पूर्णांक रूप में भेजा जाना चाहिए, इसका मतलब है कि 2000 मुद्रा की 20 इकाइयाँ होंगी। इस उदाहरण की जाँच करें
आप किसी उपयोगकर्ता से दो मुद्राओं में शुल्क नहीं ले सकते। यदि उपयोगकर्ता को अतीत में किसी भी समय EUR में शुल्क लिया गया था तो आप उपयोगकर्ता को USD में शुल्क नहीं दे सकते।
आप स्रोत (भुगतान विधि) के बिना उपयोगकर्ता से शुल्क नहीं ले सकते।