Class: ActiveMerchant::Billing::Integrations::Pay19::Return
- Inherits:
-
Return
- Object
- Return
- ActiveMerchant::Billing::Integrations::Pay19::Return
- Defined in:
- lib/active_merchant/billing/integrations/pay19/return.rb
Instance Method Summary collapse
- #account ⇒ Object
- #amount ⇒ Object
- #gross ⇒ Object
- #item_id ⇒ Object
- #message ⇒ Object
- #order ⇒ Object
- #sign ⇒ Object
- #success? ⇒ Boolean
Instance Method Details
#account ⇒ Object
9 10 11 |
# File 'lib/active_merchant/billing/integrations/pay19/return.rb', line 9 def account @params["merchant_id"] end |
#amount ⇒ Object
17 18 19 |
# File 'lib/active_merchant/billing/integrations/pay19/return.rb', line 17 def amount @params['amount'] end |
#gross ⇒ Object
29 30 31 |
# File 'lib/active_merchant/billing/integrations/pay19/return.rb', line 29 def gross @params['amount'] end |
#item_id ⇒ Object
25 26 27 |
# File 'lib/active_merchant/billing/integrations/pay19/return.rb', line 25 def item_id @params['order_id'] end |
#message ⇒ Object
57 58 59 |
# File 'lib/active_merchant/billing/integrations/pay19/return.rb', line 57 def @message end |
#order ⇒ Object
13 14 15 |
# File 'lib/active_merchant/billing/integrations/pay19/return.rb', line 13 def order @params["order_id"] end |
#sign ⇒ Object
21 22 23 |
# File 'lib/active_merchant/billing/integrations/pay19/return.rb', line 21 def sign @params['verifystring'] end |
#success? ⇒ Boolean
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/active_merchant/billing/integrations/pay19/return.rb', line 33 def success? if @params['result'] == "N" @message = "19Pay Error: PAYMENT_FAILED" return false end unless @params['result'] == "Y" @message = "19Pay message: transaction is processing.. code:#{@params['result']}" return false end hash_keys = %w(version_id merchant_id order_date order_id amount currency pay_sq pay_date pc_id result) md5_string = hash_keys.inject([]){|array, key| array << "#{key}=#{@params[key]}"}.join("&") unless Digest::MD5.hexdigest(md5_string+"&merchant_key=#{KEY}") == sign.downcase @message = "19Pay Error: ILLEGAL_SIGN" return false end return true end |