Class Index [+]

Quicksearch

ActiveMerchant::Billing::Integrations::Nochex

To start with Nochex, follow the instructions for installing ActiveMerchant as a plugin, as described on www.activemerchant.org/.

The plugin will automatically add the ActionView helper for ActiveMerchant, which will allow you to make the Nochex payments. The idea behind the helper is that it generates an invisible forwarding screen that will automatically redirect the user. So you would collect all the information about the order and then simply render the hidden form, which redirects the user to Nochex.

The syntax of the helper is as follows:

  <% payment_service_for 'order id', 'nochex_user_id',
                                :amount => 50.00,
                                :service => :nochex,
                                :html => { :id => 'nochex-form' } do |service| %>
  
     <% service.customer :first_name => 'Cody',
                        :last_name => 'Fauser',
                        :phone => '(555)555-5555',
                        :email => 'cody@example.com' %>
  
     <% service.billing_address :city => 'Ottawa',
                               :address1 => '21 Snowy Brook Lane',
                               :address2 => 'Apt. 36',
                               :state => 'ON',
                               :country => 'CA',
                               :zip => 'K1J1E5' %>
  
     <% service.invoice '#1000' %>
     <% service.shipping '0.00' %>
     <% service.tax '0.00' %>
  
     <% service.notify_url url_for(:action => 'notify', :only_path => false) %>
     <% service.return_url url_for(:action => 'done', :only_path => false) %>
     <% service.cancel_return_url 'http://mystore.com' %>
   <% end %>
  

The notify_url is the URL that the Nochex IPN will be sent. You can handle the notification in your controller action as follows:

  
  class NotificationController < ApplicationController
    include ActiveMerchant::Billing::Integrations
  
    def notify
      notification =  Nochex::Notification.new(request.raw_post)
      
      begin
        # Acknowledge notification with Nochex
        raise StandardError, 'Illegal Notification' unless notification.acknowledge
          # Process the payment  
      rescue => e
          logger.warn("Illegal notification received: #{e.message}")
      ensure
          head(:ok)
      end
    end
  end

Public Class Methods

notification(post, options = {}) click to toggle source

Simply a convenience method that returns a new ActiveMerchant::Billing::Integrations::Nochex::Notification

    # File lib/active_merchant/billing/integrations/nochex.rb, line 78
78:         def self.notification(post, options = {})
79:           Notification.new(post)
80:         end
return(query_string, options = {}) click to toggle source
    # File lib/active_merchant/billing/integrations/nochex.rb, line 82
82:         def self.return(query_string, options = {})
83:           Return.new(query_string)
84:         end

Disabled; run with --debug to generate this.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.