SDK Mercado Pago para Ruby
Instalación
gem install mercadopago-sdk
Smart Checkout
Configura tus credenciales
Obtén tu CLIENT_ID y CLIENT_SECRET en el siguiente link.
Ruby
require 'mercadopago.rb'
$mp = MercadoPago.new('CLIENT_ID', 'CLIENT_SECRET')
Preferencias
Obtén una preferencia de pago existente
Ruby
preference = $mp.get_preference('PREFERENCE_ID')
puts $preferenceResult
Crea una preferencia de pago
Ruby
preference_data = {
"items": [
{
"title": "testCreate",
"quantity": 1,
"unit_price": 10.2,
"currency_id": "CLP"
}
]
}
preference = $mp.create_preference(preference_data)
puts preference
Actualizar una preferencia de pago existente:
Ruby
preferenceDataToUpdate = Hash["items" => Array(Array["title"=>"testUpdated", "quantity"=>1, "unit_price"=>2])]
preferenceUpdate = $mp.update_preference("PREFERENCE_ID", preferenceDataToUpdate)
puts preferenceUpdate
Payments/Collections
Buscar pagos:
Ruby
filters = Array["id"=>null, "site_id"=>null, "external_reference"=>null]
searchResult = $mp.search_payment(filters)
puts searchResult
Obtener la información de un pago:
Ruby
paymentInfo = $mp.get_payment("ID")
puts paymentInfo
Cancelar (Sólo para pagos pendientes)
Ruby
result = $mp.cancel_payment("ID");
// Show result
puts result
Refund (only for accredited payments)
Ruby
result = $mp.refund_payment("ID");
// Show result
puts result
Checkout custom
Configura tus credenciales
Obtén tu ACCESS_TOKEN en la sección de Credenciales.
Ruby
require 'mercadopago.rb'
$mp = MercadoPago.new('ACCESS_TOKEN')
Crear un pago
Ruby
$mp.post ("/v1/payments", payment_data);
Crear un customer
Ruby
$mp.post ("/v1/customers", Hash["email" => "email@test.com"]);
Obtener un customer
Ruby
$mp.get ("/v1/customers/CUSTOMER_ID");
Para más información visita la sección [API reference]https://www.mercadopago.cl/developers/es/reference).
Métodos genéricos
Puedes acceder a cualquier otro recurso de la API de Mercado Pago utilizando métodos genéricos:
Ruby
// Obtener un recurso con URL params opcionales. También puedes deshabilitar la autenticación para APIs públicas.
$mp.get ("/resource/uri", [params], [authenticate=true])
// Crear un recurso con "data"y URL params opcionales.
$mp.post ("/resource/uri", data, [params])
// Actualizar un recurso con "data"y URL params opcionales.
$mp.put ("/resource/uri", data, [params])
// Eliminar un recurso con "data" y URL params opcionales.
$mp.delete ("/resource/uri", [params])
Por ejemplo, si quieres obtener la lista de sitios disponibles (sin parámetros ni autenticación):
Ruby
$sites = $mp.get ("/sites", null, false)
puts $sites