Class: OffsitePayments::Integrations::LiqpayV3::Notification

Inherits:
Notification
  • Object
show all
Includes:
ActiveUtils::PostsData
Defined in:
lib/offsite_payments/integrations/liqpay_v3.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(post, options = {}) ⇒ Notification

Returns a new instance of Notification.

Raises:

  • (ArgumentError)


81
82
83
84
85
86
87
# File 'lib/offsite_payments/integrations/liqpay_v3.rb', line 81

def initialize(post, options = {})
  raise ArgumentError if post.blank?
  super

  post_params = CGI.parse(post).transform_values(&:first)
  @params.merge!(liqpay.decode_data(post_params['data']))
end

Class Method Details

.recognizes?(params) ⇒ Boolean

Returns:

  • (Boolean)


89
90
91
# File 'lib/offsite_payments/integrations/liqpay_v3.rb', line 89

def self.recognizes?(params)
  params.key?('signature') && params.key?('data')
end

Instance Method Details

#accountObject



97
98
99
# File 'lib/offsite_payments/integrations/liqpay_v3.rb', line 97

def 
  params['public_key']
end

#acknowledge(_authcode = nil) ⇒ Object



125
126
127
# File 'lib/offsite_payments/integrations/liqpay_v3.rb', line 125

def acknowledge(_authcode = nil)
  liqpay.match?(params['data'], params['signature'])
end

#amountObject



101
102
103
# File 'lib/offsite_payments/integrations/liqpay_v3.rb', line 101

def amount
  params['amount']
end

#complete?Boolean

Returns:

  • (Boolean)


93
94
95
# File 'lib/offsite_payments/integrations/liqpay_v3.rb', line 93

def complete?
  params['status'].in? ['success', 'sandbox']
end

#currencyObject



113
114
115
# File 'lib/offsite_payments/integrations/liqpay_v3.rb', line 113

def currency
  params['currency']
end

#item_idObject



105
106
107
# File 'lib/offsite_payments/integrations/liqpay_v3.rb', line 105

def item_id
  params['order_id']
end

#methodObject



117
118
119
# File 'lib/offsite_payments/integrations/liqpay_v3.rb', line 117

def method
  params['paytype']
end

#security_keyObject



121
122
123
# File 'lib/offsite_payments/integrations/liqpay_v3.rb', line 121

def security_key
  params['signature']
end

#transaction_idObject



109
110
111
# File 'lib/offsite_payments/integrations/liqpay_v3.rb', line 109

def transaction_id
  params['transaction_id']
end