Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

atos

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

atos

  • 0.0.1
  • Rubygems
  • Socket score

Version published
Maintainers
1
Created
Source

Atos, a Ruby on Rails gateway for SIPS/ATOS french online payments API

Usage

  1. Drop the files given by your bank in your /lib dir, so it should look like this :
    /lib
      /atos
       /bin
         request
         request_2.4.18_2.96
         ....

     /param
       certif.fr.014295303911111
       parmcom.014295303911111
       parmcom.*
       pathfile
  1. From your controller, call the API like this :
    @request = Atos.new.request(
      :merchant_id            => '014295303911111',
      :amount                 => '1500',
      :customer_id            => 'YOUR_CUSTOMER_ID',
      :automatic_response_url => 'http://YOUR_SITE.com/ANY/LISTENING/URL/YOU/WANT',
      :normal_return_url      => 'http://YOUR_SITE.com/NORMAL/RETURN/URL',
      :cancel_return_url      => 'http://YOUR_SITE.com/CANCEL/URL'
    )
  1. And then show the @request in your view (it's an HTML form)

----- Let the customer pay on the bank platform, then listen to its response ----

  1. Now, you can catch the DATA parameter in response by listening to the 'automatic_response_url' you gave above
  response = Atos.new.response(params[:DATA])
  1. Finally, you get a hash in 'response', that follows the API specs :
    {
      :code
      :error
      :merchant_id
      :merchant_country
      :amount
      :transaction_id
      :payment_means
      :transmission_date
      :payment_time
      :payment_date
      :response_code
      :payment_certificate
      :authorisation_id
      :currency_code
      :card_number
      :cvv_flag
      :cvv_response_code
      :bank_response_code
      :complementary_code
      :complementary_info
      :return_context
      :caddie
      :receipt_complement
      :merchant_language
      :language
      :customer_id
      :order_id
      :customer_email
      :customer_ip_address
      :capture_day
      :capture_mode
      :data
    }

Notes

  • merchant_id, amount, customer_id, automatic_response_url, normal_return_url and cancel_return_url are required to push a request, but you can freely add others (shopping cart, customer email...), according to the API docs.

  • Default language is set to 'fr' and currency to 'Euro', simply pass your own 'locale/currency' in the request to override.

  • I prefer conventions over configuration, but you can also override with your own path dirs while instanciating the Atos class. You just add one step to the shortand way :

    @request = Atos.new(
      :root_path     => '/where',
      :request_path  => '/where/ever',
      :response_path => '/where/ever/you',
      :pathfile_path => '/where/ever/you/want'
    )

...And then...

    @request.request(
      :merchant_id       => '014295303911111',
      :amount            => '1500',
      :customer_id       => YOUR_CUSTOMER_ID,:automatic_response_url=>'http://YOUR_SITE.com/ANY/LISTENING/URL/YOU/WANT',
      :normal_return_url => 'http://YOUR_SITE.com/NORMAL/FALLBACK/URL',
      :cancel_return_url => 'http://YOUR_SITE.com/CANCEL/URL'
    )
  • Don't forget to check at the 'pathfile' Atos file, and fill requested paths according to your app absolute location on the server

  • Drop the credit card logos in a public dir, then fill this directory's absolute location on the server in the '/lib/atos/param/pathfile' file

  • The '014295303911111' merchant_id I use all the way here is the test merchant_id, obviously, use you own.

FAQs

Package last updated on 07 Jun 2013

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc