का उपयोग करके पेपैल आईपीएन कॉलबैक को संभालना मैं एक रेल ऐप में पुनरावर्ती भुगतान को संभालने के लिए paypal-recurring gem का उपयोग कर रहा हूं। मेरा अधिकांश कोड इस उत्कृष्ट Railscast से है, लेकिन मैं आईपीएन कॉलबैक स्वीकार करने और किसी प्रासंगिक डेटा को स्टोर करने के लिए भुगतान_ नोटिफिकेशन मॉडल भी जोड़ना चाहता हूं। यह Railscast नोटिफिकेशन सेट अप करने के तरीके पर चला जाता है। हालांकि, मुझे अपने भुगतान नॉटिफिकेशन मॉडल में पेपैल-आवर्ती मणि आईपीएन कॉलबैक भेजने का तरीका समझने में कठिनाई हो रही है।रेल - पेपैल-आवर्ती मणि
मैं अपने भुगतान नॉटिफिकेशन मॉडल में आईपीएन कॉलबैक को सही तरीके से लिखने के लिए ipn_url कैसे सेट कर सकता हूं। अब तक मैंने कोशिश की है:
1) विकल्प) या payment_notifications_url
2) समाधान की कोशिश कर के तहत प्रक्रिया विधि को ipn_url: "http://my-app-name.com/payment_notifications"
जोड़ा जा रहा है (यह GitHub issue page
3) का उपयोग करते हुए Paypal की झटपट के तल पर सुझाव "Http://my-app-name.com/payment_notifications" को भेजने के लिए भुगतान अधिसूचना (आईपीएन) सिम्युलेटर, लेकिन मुझे एक त्रुटि मिलती है: आईपीएन वितरण विफल। HTTP त्रुटि कोड 401: अनधिकृत
संपादित
मैं सफलतापूर्वक मेरी payments_notifications_url को IPN के वितरण अनुकरण कर पाए हैं। अब मुझे यह पता लगाने की जरूरत है कि आवर्ती मणि को आईपीएन भेजने के लिए कैसे इंगित करें।
किसी भी पॉइंटर्स की सराहना की जाएगी। नीचे मेरे कुछ वर्तमान कोड है। अगर मैं किसी भी प्रासंगिक भागों को भूल रहा हूं, तो कृपया मुझे बताएं।
PaypalPayment मॉडल
class PaypalPayment
def initialize(subscription)
@subscription = subscription
end
def checkout_details
process :checkout_details
end
def checkout_url(options)
process(:checkout, options).checkout_url
end
def make_recurring
process :request_payment
process :create_recurring_profile, period: :monthly, frequency: 1, start_at: Time.zone.now
end
def cancel_recurring
process :cancel
end
private
def process(action, options = {})
options = options.reverse_merge(
token: @subscription.paypal_payment_token,
payer_id: @subscription.paypal_customer_token,
description: @subscription.plan.name,
amount: @subscription.plan.monthly_price,
currency: "JPY"
)
response = PayPal::Recurring.new(options).send(action)
raise response.errors.inspect if response.errors.present?
response
end
end
PaymentNotifications नियंत्रक
class PaymentNotificationsController < ApplicationController
protect_from_forgery :except => [:create]
def create
PaymentNotification.create!(:params => params, :status => params[:payment_status], :transaction_id => params[:txn_id])
render :nothing => true
end
end
क्या आप कृपया मेरी मदद कर सकते हैं, मैं पेपैल सदस्यता को रद्द करने के तरीके पर थोड़ा उलझन में हूं। http://stackoverflow.com/questions/21372793/link-to-paypal-to-cancel-paypal-recurring-rails –