Enviar pesquisa
Carregar
Payments On Rails
•
3 gostaram
•
1,829 visualizações
E
E-xact Transactions
Seguir
Emil Marceta's talk at RailsConf 2008 (E-xact Transactions Ltd.)
Leia menos
Leia mais
Tecnologia
Economia e finanças
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 46
Recomendados
A2Lab - Payment Request API
A2Lab - Payment Request API
Juliano Padilha
SilverShop and Omnipay Slides
SilverShop and Omnipay Slides
Roman Schmid
Practical PHP by example Jan Leth-Kjaer
Practical PHP by example Jan Leth-Kjaer
COMMON Europe
Mojolicious
Mojolicious
Lenz Gschwendtner
Paypal REST api ( Japanese version )
Paypal REST api ( Japanese version )
Yoshi Sakai
Activemerchant
Activemerchant
Krzysztof Jabłoński
JavaScript & AJAX in WordPress
JavaScript & AJAX in WordPress
Igor Benić
WooCommerce: payment gateways
WooCommerce: payment gateways
Rodolfo Melogli
Recomendados
A2Lab - Payment Request API
A2Lab - Payment Request API
Juliano Padilha
SilverShop and Omnipay Slides
SilverShop and Omnipay Slides
Roman Schmid
Practical PHP by example Jan Leth-Kjaer
Practical PHP by example Jan Leth-Kjaer
COMMON Europe
Mojolicious
Mojolicious
Lenz Gschwendtner
Paypal REST api ( Japanese version )
Paypal REST api ( Japanese version )
Yoshi Sakai
Activemerchant
Activemerchant
Krzysztof Jabłoński
JavaScript & AJAX in WordPress
JavaScript & AJAX in WordPress
Igor Benić
WooCommerce: payment gateways
WooCommerce: payment gateways
Rodolfo Melogli
Creating REST Applications with the Slim Micro-Framework by Vikram Vaswani
Creating REST Applications with the Slim Micro-Framework by Vikram Vaswani
vvaswani
Web apps without internet
Web apps without internet
MSDEVMTL
Application submission, management and manetization in Firefox Marketplace
Application submission, management and manetization in Firefox Marketplace
Noritada Shimizu
SproutCore and the Future of Web Apps
SproutCore and the Future of Web Apps
Mike Subelsky
Pluginが広げるRailsの魅力
Pluginが広げるRailsの魅力
Yoji Shidara
Joomla virtuemart razorpay payment gateway
Joomla virtuemart razorpay payment gateway
Webkul Software Pvt. Ltd.
Introduction to AngularJS For WordPress Developers
Introduction to AngularJS For WordPress Developers
Caldera Labs
Paypal checkout anytime anywhere paulam chang matt cole
Paypal checkout anytime anywhere paulam chang matt cole
X.commerce
From Node.js noob to not so noob
From Node.js noob to not so noob
reybango
Paypal + symfony
Paypal + symfony
Massimiliano Arione
Single Page Web Apps As WordPress Admin Interfaces Using AngularJS & The Word...
Single Page Web Apps As WordPress Admin Interfaces Using AngularJS & The Word...
Caldera Labs
NationJS: Node Noob to not so Noob
NationJS: Node Noob to not so Noob
reybango
Razorpay payment gateway integration in laravel and vue js 2
Razorpay payment gateway integration in laravel and vue js 2
Katy Slemon
AngularJs - Part 3
AngularJs - Part 3
Nishikant Taksande
AngularJS with Slim PHP Micro Framework
AngularJS with Slim PHP Micro Framework
Backand Cohen
Doc matrimonial
Doc matrimonial
Ramya Rajee
Streamlining Your Applications with Web Frameworks
Streamlining Your Applications with Web Frameworks
guestf7bc30
Build a Better Editing Experience with Advanced Custom Fields - #WCTO16
Build a Better Editing Experience with Advanced Custom Fields - #WCTO16
Jeseph Meyers
Webinar: AngularJS and the WordPress REST API
Webinar: AngularJS and the WordPress REST API
WP Engine UK
Uniface Lectures Webinar - Building Responsive Applications with Uniface: Dep...
Uniface Lectures Webinar - Building Responsive Applications with Uniface: Dep...
Uniface
Ai Tornado Grenade Manual
Ai Tornado Grenade Manual
gutman
In the Loop - Lone Star Ruby Conference
In the Loop - Lone Star Ruby Conference
Lourens Naudé
Mais conteúdo relacionado
Mais procurados
Creating REST Applications with the Slim Micro-Framework by Vikram Vaswani
Creating REST Applications with the Slim Micro-Framework by Vikram Vaswani
vvaswani
Web apps without internet
Web apps without internet
MSDEVMTL
Application submission, management and manetization in Firefox Marketplace
Application submission, management and manetization in Firefox Marketplace
Noritada Shimizu
SproutCore and the Future of Web Apps
SproutCore and the Future of Web Apps
Mike Subelsky
Pluginが広げるRailsの魅力
Pluginが広げるRailsの魅力
Yoji Shidara
Joomla virtuemart razorpay payment gateway
Joomla virtuemart razorpay payment gateway
Webkul Software Pvt. Ltd.
Introduction to AngularJS For WordPress Developers
Introduction to AngularJS For WordPress Developers
Caldera Labs
Paypal checkout anytime anywhere paulam chang matt cole
Paypal checkout anytime anywhere paulam chang matt cole
X.commerce
From Node.js noob to not so noob
From Node.js noob to not so noob
reybango
Paypal + symfony
Paypal + symfony
Massimiliano Arione
Single Page Web Apps As WordPress Admin Interfaces Using AngularJS & The Word...
Single Page Web Apps As WordPress Admin Interfaces Using AngularJS & The Word...
Caldera Labs
NationJS: Node Noob to not so Noob
NationJS: Node Noob to not so Noob
reybango
Razorpay payment gateway integration in laravel and vue js 2
Razorpay payment gateway integration in laravel and vue js 2
Katy Slemon
AngularJs - Part 3
AngularJs - Part 3
Nishikant Taksande
AngularJS with Slim PHP Micro Framework
AngularJS with Slim PHP Micro Framework
Backand Cohen
Doc matrimonial
Doc matrimonial
Ramya Rajee
Streamlining Your Applications with Web Frameworks
Streamlining Your Applications with Web Frameworks
guestf7bc30
Build a Better Editing Experience with Advanced Custom Fields - #WCTO16
Build a Better Editing Experience with Advanced Custom Fields - #WCTO16
Jeseph Meyers
Webinar: AngularJS and the WordPress REST API
Webinar: AngularJS and the WordPress REST API
WP Engine UK
Uniface Lectures Webinar - Building Responsive Applications with Uniface: Dep...
Uniface Lectures Webinar - Building Responsive Applications with Uniface: Dep...
Uniface
Mais procurados
(20)
Creating REST Applications with the Slim Micro-Framework by Vikram Vaswani
Creating REST Applications with the Slim Micro-Framework by Vikram Vaswani
Web apps without internet
Web apps without internet
Application submission, management and manetization in Firefox Marketplace
Application submission, management and manetization in Firefox Marketplace
SproutCore and the Future of Web Apps
SproutCore and the Future of Web Apps
Pluginが広げるRailsの魅力
Pluginが広げるRailsの魅力
Joomla virtuemart razorpay payment gateway
Joomla virtuemart razorpay payment gateway
Introduction to AngularJS For WordPress Developers
Introduction to AngularJS For WordPress Developers
Paypal checkout anytime anywhere paulam chang matt cole
Paypal checkout anytime anywhere paulam chang matt cole
From Node.js noob to not so noob
From Node.js noob to not so noob
Paypal + symfony
Paypal + symfony
Single Page Web Apps As WordPress Admin Interfaces Using AngularJS & The Word...
Single Page Web Apps As WordPress Admin Interfaces Using AngularJS & The Word...
NationJS: Node Noob to not so Noob
NationJS: Node Noob to not so Noob
Razorpay payment gateway integration in laravel and vue js 2
Razorpay payment gateway integration in laravel and vue js 2
AngularJs - Part 3
AngularJs - Part 3
AngularJS with Slim PHP Micro Framework
AngularJS with Slim PHP Micro Framework
Doc matrimonial
Doc matrimonial
Streamlining Your Applications with Web Frameworks
Streamlining Your Applications with Web Frameworks
Build a Better Editing Experience with Advanced Custom Fields - #WCTO16
Build a Better Editing Experience with Advanced Custom Fields - #WCTO16
Webinar: AngularJS and the WordPress REST API
Webinar: AngularJS and the WordPress REST API
Uniface Lectures Webinar - Building Responsive Applications with Uniface: Dep...
Uniface Lectures Webinar - Building Responsive Applications with Uniface: Dep...
Destaque
Ai Tornado Grenade Manual
Ai Tornado Grenade Manual
gutman
In the Loop - Lone Star Ruby Conference
In the Loop - Lone Star Ruby Conference
Lourens Naudé
ddddkkk
ddddkkk
guest522064
Klima Og Sundhed Jordens Dag 17. Marts
Klima Og Sundhed Jordens Dag 17. Marts
Anne Grete Rasmussen
ZeroMQ as scriptable sockets
ZeroMQ as scriptable sockets
Lourens Naudé
Barcamp PT
Barcamp PT
Lourens Naudé
Advanced Fieldcraft
Advanced Fieldcraft
gutman
Qatar Project
Qatar Project
guest522064
Destaque
(8)
Ai Tornado Grenade Manual
Ai Tornado Grenade Manual
In the Loop - Lone Star Ruby Conference
In the Loop - Lone Star Ruby Conference
ddddkkk
ddddkkk
Klima Og Sundhed Jordens Dag 17. Marts
Klima Og Sundhed Jordens Dag 17. Marts
ZeroMQ as scriptable sockets
ZeroMQ as scriptable sockets
Barcamp PT
Barcamp PT
Advanced Fieldcraft
Advanced Fieldcraft
Qatar Project
Qatar Project
Semelhante a Payments On Rails
Implementation of GUI Framework part3
Implementation of GUI Framework part3
masahiroookubo
SproutCore and the Future of Web Apps
SproutCore and the Future of Web Apps
Mike Subelsky
web3j Overview
web3j Overview
Conor Svensson
Distributed Parcel Tracking/Management System Overview
Distributed Parcel Tracking/Management System Overview
Mark Cheeseman
Stripe on Atmoph
Stripe on Atmoph
Nakano Kyohei
java and javascript api dev guide
java and javascript api dev guide
Zenita Smythe
SDKs, the good the bad the ugly - Japan
SDKs, the good the bad the ugly - Japan
tristansokol
FreshBooks API
FreshBooks API
Boris Mann
Ruby on Rails For Java Programmers
Ruby on Rails For Java Programmers
elliando dias
How to avoid hanging yourself with Rails
How to avoid hanging yourself with Rails
Rowan Hick
Building Scalable Websites with Perl
Building Scalable Websites with Perl
Perrin Harkins
Shangz R Brown Presentation
Shangz R Brown Presentation
shangbaby
Metrics-Driven Engineering
Metrics-Driven Engineering
Mike Brittain
Unobtrusive JavaScript
Unobtrusive JavaScript
Vitaly Baum
Monetize your idea! - Pay Pal
Monetize your idea! - Pay Pal
Droidcon Spain
A Journey with React
A Journey with React
FITC
Using jersey exception mapper
Using jersey exception mapper
Anirban Sen Chowdhary
Service Oriented Integration with ServiceMix
Service Oriented Integration with ServiceMix
ghessler
The Future of the Web - Cold Front conference 2016
The Future of the Web - Cold Front conference 2016
Robert Nyman
Monkey man
Monkey man
ShapeBlue
Semelhante a Payments On Rails
(20)
Implementation of GUI Framework part3
Implementation of GUI Framework part3
SproutCore and the Future of Web Apps
SproutCore and the Future of Web Apps
web3j Overview
web3j Overview
Distributed Parcel Tracking/Management System Overview
Distributed Parcel Tracking/Management System Overview
Stripe on Atmoph
Stripe on Atmoph
java and javascript api dev guide
java and javascript api dev guide
SDKs, the good the bad the ugly - Japan
SDKs, the good the bad the ugly - Japan
FreshBooks API
FreshBooks API
Ruby on Rails For Java Programmers
Ruby on Rails For Java Programmers
How to avoid hanging yourself with Rails
How to avoid hanging yourself with Rails
Building Scalable Websites with Perl
Building Scalable Websites with Perl
Shangz R Brown Presentation
Shangz R Brown Presentation
Metrics-Driven Engineering
Metrics-Driven Engineering
Unobtrusive JavaScript
Unobtrusive JavaScript
Monetize your idea! - Pay Pal
Monetize your idea! - Pay Pal
A Journey with React
A Journey with React
Using jersey exception mapper
Using jersey exception mapper
Service Oriented Integration with ServiceMix
Service Oriented Integration with ServiceMix
The Future of the Web - Cold Front conference 2016
The Future of the Web - Cold Front conference 2016
Monkey man
Monkey man
Último
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
RTylerCroy
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
The Digital Insurer
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
Delhi Call girls
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
ThousandEyes
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Miguel Araújo
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
ThousandEyes
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
wesley chun
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Igalia
How to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
naman860154
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
Delhi Call girls
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
UK Journal
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
Enterprise Knowledge
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Anna Loughnan Colquhoun
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Neo4j
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
naman860154
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
Delhi Call girls
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
Remote DBA Services
Último
(20)
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
How to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
Payments On Rails
1.
Payments On Rails
E-xact Transactions (emil@e-xact.com)
2.
<introduction>
Hello
3.
E-xactly, who?
4.
Payment Processor
5.
1-866-733-8613. Vancouver, BC
6.
7.
:founded => 1999, :per_year
=> 3B.dollars, :team => (2..8)
8.
Me?
9.
About </introduction>
10.
<exactonrails>
Merchants | E-xact | Payment Network
11.
special && !special
12.
“Non-special” • Standard Rails
platform • Plugins - Solr, cache_fu, will_paginate etc. • Capistrano / Webistrano • SQL Backend
13.
Apache Proxy (mod_security, mod_proxy_balancer,...)
| ||| lighttpd/fastcgi Rails
14.
“Special” • Mission Critical
Financial services • High Volume Transactions Processing • Rails to the “Enterprise”
15.
“Big Rewrite”
16.
Win32 (.NET)
17.
Why Rails?
18.
2006
19.
2006 Fall
20.
2007 Spring
21.
Migrated 5K Customers
22.
Customers
23.
RPM
24.
Primary Provider For </exactonrails>
25.
<api>
api.e-xact.com
26.
gem install exact4r
27.
# build a
purchase request request = Exact::Request.new({ :transaction_type => quot;00quot;, # purchase :amount => 10.50, :cardholder_name => quot;Simon Brownquot;, :cc_number => quot;4111111111111111quot;, :cc_expiry => quot;1005quot;, # MUST be YYMM format :gateway_id => quot;XXXXXXXquot;, # which gateway to submit the request to :password => quot;YYYYYYquot; # your password for that gateway }) response = request.submit
28.
Response response.transaction_tag
# 1234 response.exact_resp_code # quot;00quot; response.exact_message # quot;Transaction Normalquot; response.bank_resp_code # quot;00quot; response.bank_message # quot;APPROVEDquot;
29.
:rest || :json
|| :soap
30.
SOAP (legacy)
31.
REST XML (default)
32.
JSON
33.
uri = URI.parse('https://api.e-xact.com') http
= Net::HTTP.new(uri.host, uri.port) req_headers= { 'Content-Type' => 'application/json; charset=utf-8' } req = {} req[:amount] = 100.to_s req[:cardholder_name] = 'Fred Hanks' req[:email_address] = 'fred@acme.org' req[:address] = '2000 Elm street' req[:cc_number] = '4111111111111111' req[:cc_expiry] = '0907' req[:transaction_type] = :purchase req[:gateway_id] = 'XXXXXX' req[:password] = 'YYYYYYY' response = http.request_post(uri.path, req.to_json, req_headers) res = ActiveSupport::JSON.decode(response) assert_equal 1, res['transaction_approved'], res.inspect
34.
Transaction set • Purchase •
Refund • Pre-authorization, completion • Void • Debit • ....
35.
Tagged Transaction
36.
API
| Cardholder Data | E-xact </api>
37.
<payment_pages>
Payment Pages
38.
39.
$ rails store
create create app/controllers create app/helpers create app/models create app/views/layouts create config/environments create config/initializers create db create doc create lib create lib/tasks create log ....
40.
$ ./script/install active_merchant
(http://activemerchant.org)
41.
patch -p0 <
am.patch (http://www.e-xact.com/developers/downloads/#ActiveMerch)
42.
43.
Merchant Site
| checkout.e-xact.com | Cardholder Data </payment_pages>
44.
Summary
45.
Questions?
46.
Contact