class OffsitePayments::Integrations::Citrus::Helper
Constants
- PRODUCTION_URL
- SANDBOX_URL
- STAGING_URL
Public Class Methods
new(order, account, options = {})
click to toggle source
Calls superclass method
# File lib/offsite_payments/integrations/citrus.rb, line 54 def initialize(order, account, options = {}) super add_field 'paymentMode', 'NET_BANKING' add_field 'reqtime', (Time.now.to_i * 1000).to_s end
Public Instance Methods
credential_based_url()
click to toggle source
# File lib/offsite_payments/integrations/citrus.rb, line 40 def credential_based_url pmt_url = @fields['pmt_url'] case OffsitePayments.mode when :production PRODUCTION_URL + pmt_url when :test SANDBOX_URL + pmt_url when :staging STAGING_URL + pmt_url else raise StandardError, "Integration mode set to an invalid value: #{mode}" end end
form_fields()
click to toggle source
# File lib/offsite_payments/integrations/citrus.rb, line 60 def form_fields @fields.merge(mappings[:checksum] => generate_checksum) end
generate_checksum()
click to toggle source
# File lib/offsite_payments/integrations/citrus.rb, line 64 def generate_checksum checksum_fields = @fields["pmt_url"] + @fields["orderAmount"].to_s + @fields["merchantTxnId"] + @fields["currency"] Citrus.checksum(@fields["secret_key"], checksum_fields ) end