# File lib/active_merchant/billing/gateways/payment_express.rb, line 46
      def purchase(money, payment_source, options = {})
        
        credit_card = payment_source if payment_source.respond_to?(:number)
        
        if credit_card        
          options[:credit_card] = credit_card
        else
          options[:token]       = payment_source
        end
        
        request = build_purchase_or_authorization_request(money, options)
        commit(:purchase, request)      
      end