Class: Mercadopago::Sdk
- Inherits:
-
Object
- Object
- Mercadopago::Sdk
- Defined in:
- lib/mercadopago/sdk.rb
Instance Attribute Summary collapse
- #access_token ⇒ Object
-
#checkout ⇒ Object
Returns the value of attribute checkout.
-
#client_id ⇒ Object
Returns the value of attribute client_id.
-
#client_secret ⇒ Object
Returns the value of attribute client_secret.
-
#sandbox ⇒ Object
Returns the value of attribute sandbox.
Instance Method Summary collapse
- #cancel_payment(payment_id) ⇒ Object
- #create_checkout_preference(data, exclude_methods = nil) ⇒ Object
- #create_test_user(site_id) ⇒ Object
- #get_access_token ⇒ Object
- #get_checkout_preference(id) ⇒ Object
- #get_payment_info(notification_id) ⇒ Object
-
#initialize(client_id, client_secret, sandbox = false) ⇒ Sdk
constructor
A new instance of Sdk.
- #refund_payment(payment_id) ⇒ Object
- #sandbox_prefix ⇒ Object
- #search_payment(payment_id) ⇒ Object
- #search_payments_where(params) ⇒ Object
- #update_checkout_preference(preference_id, data) ⇒ Object
Constructor Details
#initialize(client_id, client_secret, sandbox = false) ⇒ Sdk
Returns a new instance of Sdk.
12 13 14 15 16 |
# File 'lib/mercadopago/sdk.rb', line 12 def initialize(client_id, client_secret, sandbox=false) @client_id = client_id @client_secret = client_secret @sandbox = sandbox end |
Instance Attribute Details
#access_token ⇒ Object
31 32 33 |
# File 'lib/mercadopago/sdk.rb', line 31 def access_token @access_token || get_access_token end |
#checkout ⇒ Object
Returns the value of attribute checkout.
9 10 11 |
# File 'lib/mercadopago/sdk.rb', line 9 def checkout @checkout end |
#client_id ⇒ Object
Returns the value of attribute client_id.
9 10 11 |
# File 'lib/mercadopago/sdk.rb', line 9 def client_id @client_id end |
#client_secret ⇒ Object
Returns the value of attribute client_secret.
9 10 11 |
# File 'lib/mercadopago/sdk.rb', line 9 def client_secret @client_secret end |
#sandbox ⇒ Object
Returns the value of attribute sandbox.
9 10 11 |
# File 'lib/mercadopago/sdk.rb', line 9 def sandbox @sandbox end |
Instance Method Details
#cancel_payment(payment_id) ⇒ Object
86 87 88 89 |
# File 'lib/mercadopago/sdk.rb', line 86 def cancel_payment(payment_id) url = "/collections/#{payment_id}?access_token=#{access_token}" Rest::exec(:put, url, {:status => "cancelled"}, true ) end |
#create_checkout_preference(data, exclude_methods = nil) ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/mercadopago/sdk.rb', line 35 def create_checkout_preference(data, exclude_methods=nil) unless exclude_methods.nil? data[:payment_methods] = { :excluded_payment_methods => exclude_methods } end url = "/checkout/preferences?access_token="+access_token response = Rest::exec(:post, url, data, true) if response[:code] = 201 @checkout = response else response end end |
#create_test_user(site_id) ⇒ Object
76 77 78 79 |
# File 'lib/mercadopago/sdk.rb', line 76 def create_test_user(site_id) url = "users/test_user?access_token=#{access_token}" Rest::exec(:post, url, { :site_id => site_id }, true ) end |
#get_access_token ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/mercadopago/sdk.rb', line 18 def get_access_token url = "/oauth/token" data = { :grant_type => "client_credentials", :client_id => @client_id, :client_secret => @client_secret } result = Rest::exec(:post, url, data) if result[:code] == 200 @access_token = result["access_token"] end end |
#get_checkout_preference(id) ⇒ Object
55 56 57 58 |
# File 'lib/mercadopago/sdk.rb', line 55 def get_checkout_preference(id) url = sandbox_prefix + "/checkout/preferences/#{preference_id}?access_token=#{access_token}" Rest::exec(:get, url, nil, true) end |
#get_payment_info(notification_id) ⇒ Object
60 61 62 63 |
# File 'lib/mercadopago/sdk.rb', line 60 def get_payment_info(notification_id) url = sandbox_prefix + "/collections/notifications/#{notification_id}?access_token=#{access_token}" Rest::exec(:get, url, nil, true) end |
#refund_payment(payment_id) ⇒ Object
81 82 83 84 |
# File 'lib/mercadopago/sdk.rb', line 81 def refund_payment(payment_id) url = "/collections/#{payment_id}?access_token=#{access_token}" Rest::exec(:put, url, {:status => "refunded"}, true ) end |
#sandbox_prefix ⇒ Object
91 92 93 |
# File 'lib/mercadopago/sdk.rb', line 91 def sandbox_prefix @sandbox ? "/sandbox":"" end |
#search_payment(payment_id) ⇒ Object
65 66 67 68 |
# File 'lib/mercadopago/sdk.rb', line 65 def search_payment(payment_id) url = sandbox_prefix + "/collections/#{payment_id}?access_token=#{access_token}" Rest::exec(:get, url, nil, true) end |