for verifying the signature of the URL parameters
# File lib/active_merchant/billing/integrations/directebanking/notification.rb, line 7 7: def initialize(data, options) 8: if options[:credential4].nil? 9: raise ArgumentError, "You need to provide the notification password (SH1) as the option :credential4 to verify that the notification originated from Directebanking (Payment Networks AG)" 10: end 11: super 12: end
# File lib/active_merchant/billing/integrations/directebanking/notification.rb, line 111 111: def acknowledge 112: # signature_is_valid? 113: generate_signature.to_s == params['hash'].to_s 114: end
# File lib/active_merchant/billing/integrations/directebanking/notification.rb, line 14 14: def complete? 15: status == 'Completed' 16: end
# File lib/active_merchant/billing/integrations/directebanking/notification.rb, line 40 40: def currency 41: params['currency_id'] 42: end
# File lib/active_merchant/billing/integrations/directebanking/notification.rb, line 107 107: def generate_signature 108: Digest::SHA1.hexdigest(generate_signature_string) 109: end
# File lib/active_merchant/billing/integrations/directebanking/notification.rb, line 102 102: def generate_signature_string 103: #format is: transaction|user_id|project_id|sender_holder|sender_account_number|sender_bank_code|sender_bank_name|sender_bank_bic|sender_iban|sender_country_id|recipient_holder|recipient_account_number|recipient_bank_code|recipient_bank_name|recipient_bank_bic|recipient_iban|recipient_country_id|international_transaction|amount|currency_id|reason_1|reason_2|security_criteria|user_variable_0|user_variable_1|user_variable_2|user_variable_3|user_variable_4|user_variable_5|created|notification_password 104: PAYMENT_HOOK_SIGNATURE_FIELDS.map {|key| params[key.to_s]} * "|" + "|#{@options[:credential4]}" 105: end
the money amount we received in X.2 decimal.
# File lib/active_merchant/billing/integrations/directebanking/notification.rb, line 32 32: def gross 33: "%.2f" % params['amount'].to_f 34: end
# File lib/active_merchant/billing/integrations/directebanking/notification.rb, line 18 18: def item_id 19: params['user_variable_0'] 20: end
When was this payment received by the client.
# File lib/active_merchant/billing/integrations/directebanking/notification.rb, line 27 27: def received_at 28: Time.parse(params['created']) if params['created'] 29: end
# File lib/active_merchant/billing/integrations/directebanking/notification.rb, line 36 36: def status 37: 'Completed' 38: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.