Payments On Rails

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    1 Favorite

    Payments On Rails - Presentation Transcript

    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. :founded => 1999, :per_year => 3B.dollars, :team => (2..8)
    7. Me?
    8. About </introduction>
    9. <exactonrails> Merchants | E-xact | Payment Network
    10. special && !special
    11. “Non-special” • Standard Rails platform • Plugins - Solr, cache_fu, will_paginate etc. • Capistrano / Webistrano • SQL Backend
    12. Apache Proxy (mod_security, mod_proxy_balancer,...) | ||| lighttpd/fastcgi Rails
    13. “Special” • Mission Critical Financial services • High Volume Transactions Processing • Rails to the “Enterprise”
    14. “Big Rewrite”
    15. Win32 (.NET)
    16. Why Rails?
    17. 2006
    18. 2006 Fall
    19. 2007 Spring
    20. Migrated 5K Customers
    21. Customers
    22. RPM
    23. Primary Provider For </exactonrails>
    24. <api> api.e-xact.com
    25. gem install exact4r
    26. # build a purchase request request = Exact::Request.new({ :transaction_type => \"00\", # purchase :amount => 10.50, :cardholder_name => \"Simon Brown\", :cc_number => \"4111111111111111\", :cc_expiry => \"1005\", # MUST be YYMM format :gateway_id => \"XXXXXXX\", # which gateway to submit the request to :password => \"YYYYYY\" # your password for that gateway }) response = request.submit
    27. Response response.transaction_tag # 1234 response.exact_resp_code # \"00\" response.exact_message # \"Transaction Normal\" response.bank_resp_code # \"00\" response.bank_message # \"APPROVED\"
    28. :rest || :json || :soap
    29. SOAP (legacy)
    30. REST XML (default)
    31. JSON
    32. 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
    33. Transaction set • Purchase • Refund • Pre-authorization, completion • Void • Debit • ....
    34. Tagged Transaction
    35. API | Cardholder Data | E-xact </api>
    36. <payment_pages> Payment Pages
    37. $ 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 ....
    38. $ ./script/install active_merchant (http://activemerchant.org)
    39. patch -p0 < am.patch (http://www.e-xact.com/developers/downloads/#ActiveMerch)
    40. Merchant Site | checkout.e-xact.com | Cardholder Data </payment_pages>
    41. Summary
    42. Questions?
    43. Contact

    E-xact TransactionsE-xact Transactions, 2 years ago

    custom

    2213 views, 1 favs, 2 embeds more stats

    Emil Marceta's talk at RailsConf 2008 (E-xact Trans more

    More Info

    © All Rights Reserved

    Go to text version
    • Total Views 2213
      • 2175 on SlideShare
      • 38 from embeds
    • Comments 0
    • Favorites 1
    • Downloads 0
    Most viewed embeds
    • 36 views on http://www.e-xact.com
    • 2 views on http://www.sbrek.com

    more

    All embeds
    • 36 views on http://www.e-xact.com
    • 2 views on http://www.sbrek.com

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as innappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel

    Categories