Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
A Ruby gem to simplify the use of Ogone online payments service.
Ruby

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib
test
.DS_Store
.document
.gitignore
Gemfile
Gemfile.lock
LICENSE.txt
README.md
Rakefile
VERSION
ogone-rails.gemspec

README.md

Ogone for Rails

What is it

A Ruby gem to simplify the use of Ogone online payments service.

Usage

Installation

gem install ogone-rails
# or include in a gemfile
gem 'ogone-rails'

Configuration

Define ogone parameters in a yaml config file:

    # config/ogone.yml
    development:
        pspid: "hoetmaaiers"
        sha_in: "0123456789abcdefghijklmnopqrstuv"
        sha_out: "vutsrqponmlkjihgfedcba9876543210"
        currency: "EUR"
        language: "nl_NL"
        mode: 'test'
    production:
        pspid: "hoetmaaiers"
        sha_in: "0123456789abcdefghijklmnopqrstuv"
        sha_out: "vutsrqponmlkjihgfedcba9876543210"
        currency: "EUR"
        language: "nl_NL"
        mode: 'live'

Deprecated in version >= 0.1.3, configure ogone-rails in an initializer:

    # initializers/ogone.rb
    ogone_config = YAML.load_file('config/ogone.yml')[Rails.env].symbolize_keys
    OgoneRails::config (ogone_config)

Parameters

required

  • PSPID
  • sha_in
  • sha_out

optional

  • currency, default: "EUR"
  • language, default: "nl_NL"
  • mode, default = "live"

Helpers

New syntax

Generate an ogone_form whith the new syntax.

Full example

ogone_form_tag({:id => "form"}) do 
    form_content = ogone_fields({  
        :parameter => value
        ...
      })

    # add custom submit
    form_content << '<input type="submit" value="pay now" />'
end

ogone_form_tag example

ogone_form_tag({ :html_attribute => "value" }) do 
    ...
    # everything in here must be in one variable
    form_content = "…"
    form_content << "…"       
    ...
end

ogone_fields example

Generate hidden input fields with ogone parameters.

ogone_fields({
    :parameter => "value",
    ...
}

Parameters

  ogone_fields_options = {
    # General parameters
    :order_id           => 'orderID',
    :amount             => 'amount',
    :customer_name      => 'CN',
    :customer_email     => 'EMAIL',
    :customer_address   => 'owneraddress',
    :customer_zip       => 'ownerZIP',
    :customer_city      => 'ownertown',
    :customer_country   => 'ownercty',
    :customer_phone     => 'ownertelno',
    # Feedback url's    
    :accept_url         => 'accepturl',
    :decline_url        => 'declineurl',
    :exception_url      => 'exceptionurl',
    :cancel_url         => 'cancelurl',
    # Look and feel     
    :title              => 'TITLE',
    :bg_color           => 'BGCOLOR',
    :text_color         => 'TXTCOLOR',
    :table_bg_color     => 'TBLBGCOLOR',
    :table_text_color   => 'TBLTXTCOLOR',
    :button_bg_color    => 'BUTTONBGCOLOR',
    :button_text_color  => 'BUTTONTXTCOLOR',
    :font_family        => 'FONTTYPE',
    :logo               => 'LOGO'       
  }

No worry, old syntax is still enabled...

ogone_form({
    :paramater => "value"
}, { :html_attribute => "" })

Check Ogone feedback

Create a new object to check the feedback Ogone gives you:

# app/controllers/feedback_controller.rb
@check = OgoneRails::CheckAuth.new( request )

Check valid authorization:

@check.valid?
#return true or false

Get parameters:

@check.get_params

… returns the Ogone feedback in a hash format. The keys are made more readable then Ogone provides them: …

{
    :order_id => 46185, 
    :amount => 299.38, 
    :currency => "EUR", 
    :payment_method => "CreditCard",
    :acceptance => "test123", 
    :status => "Authorized", 
    :card_number => "XXXXXXXXXXXX1111",
    :pay_id => "14838904", 
    :error => nil, 
    :brand => "VISA",
    :sha_sign => "51AF71351E79DD0186816289AD53C57213978E32"
}

Copyright

Copyright © 2012 Robin Houdmeyers

Something went wrong with that request. Please try again.