Sha256: d442b562e180dc94a5579d580bc71d92b4ab475568b397708f76153fd5e50e02

Contents?: true

Size: 1.73 KB

Versions: 177

Compression:

Stored size: 1.73 KB

Contents

module ActiveMerchant #:nodoc:
  module Billing #:nodoc:
    module Integrations #:nodoc:
      module HiTrust
        class Helper < ActiveMerchant::Billing::Integrations::Helper
          
          # Transaction types
          # * Auth
          # * AuthRe
          # * Capture
          # * CaptureRe
          # * Refund
          # * RefundRe
          # * Query
          def initialize(order, account, options = {})
            super  
            # Perform an authorization by default
            add_field('Type', 'Auth')
            
            # Capture the payment right away
            add_field('depositflag', '1')
            
            # Disable auto query - who knows what it does?
            add_field('queryflag', '1')
            
            add_field('orderdesc', 'Store purchase')
          end
          
          mapping :account, 'storeid'
          mapping :amount, 'amount'
          
          def amount=(money)
            cents = money.respond_to?(:cents) ? money.cents : money 

            if money.is_a?(String) or cents.to_i < 0
              raise ArgumentError, 'money amount must be either a Money object or a positive integer in cents.' 
            end
            
            add_field(mappings[:amount], cents)
          end
          # Supported currencies include:
          # * CNY:Chinese Yuan (Renminbi)
          # * TWD:New Taiwan Dollar 
          # * HKD:Hong Kong Dollar 
          # * USD:US Dollar 
          # * AUD:Austrian Dollar 
          mapping :currency, 'currency'
        
          mapping :order, 'ordernumber'
          mapping :description, 'orderdesc'

          mapping :notify_url, 'merUpdateURL'
          mapping :return_url, 'returnURL'
        end
      end
    end
  end
end

Version data entries

177 entries across 177 versions & 35 rubygems

Version Path
smulube-activemerchant-1.7.1.4 lib/active_merchant/billing/integrations/hi_trust/helper.rb
johnreitano-activemerchant-1.5.10 lib/active_merchant/billing/integrations/hi_trust/helper.rb
activemerchant-1.7.3 lib/active_merchant/billing/integrations/hi_trust/helper.rb
johnreitano-activemerchant-1.5.9 lib/active_merchant/billing/integrations/hi_trust/helper.rb
smulube-activemerchant-1.7.1.3 lib/active_merchant/billing/integrations/hi_trust/helper.rb
glebm-activemerchant-1.7.2.1 lib/active_merchant/billing/integrations/hi_trust/helper.rb
activemerchant-1.7.2 lib/active_merchant/billing/integrations/hi_trust/helper.rb
projectdx_activemerchant-1.7.1.20100817.3 lib/active_merchant/billing/integrations/hi_trust/helper.rb
projectdx_activemerchant-1.7.1.20100817.2 lib/active_merchant/billing/integrations/hi_trust/helper.rb
projectdx_activemerchant-1.7.1.20100817.1 lib/active_merchant/billing/integrations/hi_trust/helper.rb
humanzz-activemerchant-1.7.1.1 lib/active_merchant/billing/integrations/hi_trust/helper.rb
humanzz-activemerchant-1.7.1 lib/active_merchant/billing/integrations/hi_trust/helper.rb
smulube-activemerchant-1.7.1 lib/active_merchant/billing/integrations/hi_trust/helper.rb
smulube-activemerchant-1.7.0.3 lib/active_merchant/billing/integrations/hi_trust/helper.rb
activemerchant-1.7.1 lib/active_merchant/billing/integrations/hi_trust/helper.rb
johnreitano-activemerchant-1.5.8 lib/active_merchant/billing/integrations/hi_trust/helper.rb
smulube-activemerchant-1.7.0.2 lib/active_merchant/billing/integrations/hi_trust/helper.rb
smulube-activemerchant-1.7.0.1 lib/active_merchant/billing/integrations/hi_trust/helper.rb
johnreitano-activemerchant-1.5.7 lib/active_merchant/billing/integrations/hi_trust/helper.rb
smulube-activemerchant-1.7.0 lib/active_merchant/billing/integrations/hi_trust/helper.rb