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
tlconnor-activemerchant-1.20.4 lib/active_merchant/billing/integrations/hi_trust/helper.rb
activemerchant-1.20.4 lib/active_merchant/billing/integrations/hi_trust/helper.rb
activemerchant-1.20.3 lib/active_merchant/billing/integrations/hi_trust/helper.rb
activemerchant-1.20.2 lib/active_merchant/billing/integrations/hi_trust/helper.rb
activemerchant-1.20.1 lib/active_merchant/billing/integrations/hi_trust/helper.rb
activemerchant-1.20.0 lib/active_merchant/billing/integrations/hi_trust/helper.rb
vibedeck-activemerchant-1.18.2 lib/active_merchant/billing/integrations/hi_trust/helper.rb
activemerchant-1.18.1 lib/active_merchant/billing/integrations/hi_trust/helper.rb
fishman-activemerchant-1.18.0 lib/active_merchant/billing/integrations/hi_trust/helper.rb
activemerchant-1.18.0 lib/active_merchant/billing/integrations/hi_trust/helper.rb
activemerchant-1.17.0 lib/active_merchant/billing/integrations/hi_trust/helper.rb
yetanothernguyen-activemerchant-1.16.0 lib/active_merchant/billing/integrations/hi_trust/helper.rb
activemerchant-1.16.0 lib/active_merchant/billing/integrations/hi_trust/helper.rb
gonow-activemerchant-1.15.0 lib/active_merchant/billing/integrations/hi_trust/helper.rb
bitfluent-activemerchant-1.15.1 lib/active_merchant/billing/integrations/hi_trust/helper.rb
activemerchant-kiddy-1.15.0.kiddy.1 lib/active_merchant/billing/integrations/hi_trust/helper.rb
activemerchant-kiddy-1.15.0.kiddy lib/active_merchant/billing/integrations/hi_trust/helper.rb
activemerchant-1.15.0 lib/active_merchant/billing/integrations/hi_trust/helper.rb
activemerchant-1.14.0 lib/active_merchant/billing/integrations/hi_trust/helper.rb
activemerchant-1.13.0 lib/active_merchant/billing/integrations/hi_trust/helper.rb