SDK Mercado Pago para Node
Instalación
Plain
$ npm install mercadopago
Soporte a Promises y Callbacks
Cada método soporta promises y callbacks. Por ejemplo:
Javascript
var at = mp.getAccessToken ();
at.then (
function (accessToken) {
console.log (accessToken);
},
function (error) {
console.log (error);
});
es lo mismo que:
Javascript
mp.getAccessToken(function (err, accessToken){
if (err) {
console.log (err);
} else {
console.log (accessToken);
}
});
Para utilizar callbacks, simplemente pasa una función como último parámetro.
Web checkout
Configura tus credenciales
Obtén tu CLIENT_ID y CLIENT_SECRET en los siguientes links:
- Argentina: https://www.mercadopago.com/mla/herramientas/aplicaciones
- Brazil: https://www.mercadopago.com/mla/ferramentas/aplicacoes
- México: https://www.mercadopago.com/mla/herramientas/aplicaciones
- Colombia: https://www.mercadopago.com/mla/herramientas/aplicaciones
- Chile: https://www.mercadopago.com/mla/herramientas/aplicaciones
- Perú: https://www.mercadopago.com/mla/herramientas/aplicaciones
- Uruguay: https://www.mercadopago.com/mla/herramientas/aplicaciones
Javascript
var MP = require ("mercadopago");
var mp = new MP ("CLIENT_ID", "CLIENT_SECRET");
Preferencias
Obtén una preferencia de pago existente
Javascript
mp.getPreference ("PREFERENCE_ID");
Crea una preferencia de pago:
Javascript
var preference = {
"items": [
{
"title": "Test",
"quantity": 1,
"currency_id": "USD",
"unit_price": 10.5
}
]
};
mp.createPreference (preference);
Actualizar una preferencia de pago existente:
Javascript
var preference = {
"items": [
{
"title": "Test Modified",
"quantity": 1,
"currency_id": "USD",
"unit_price": 20.4
}
]
};
mp.updatePreference ("PREFERENCE_ID", preference);
Payments/Collections
Buscar pagos:
Javascript
var filters = {
"id": null,
"site_id": null,
"external_reference": null
};
mp.searchPayment (filters)
.then (
function success (data) {
console.log (JSON.stringify (data, null, 4));
},
function error (err) {
console.log (err);
}
});
Obtener la información de un pago:
Javascript
mp.getPayment (qs["id"])
.then (
function success (data) {
console.log (JSON.stringify (data, null, 4));
},
function error (err) {
console.log (err);
}
});
Cancelar (Sólo para pagos pendientes)
Javascript
mp.cancelPayment ("ID");
Refund (sólo para pagos acreditados)
Javascript
mp.refundPayment ("ID");
Checkout custom
Configura tus credenciales
Obtén tu ACCESS_TOKEN en los siguientes links:
- Argentina: https://www.mercadopago.com/mla/account/credentials
- Brasil: https://www.mercadopago.com/mla/account/credentials
- México: https://www.mercadopago.com/mla/account/credentials
- Colombia: https://www.mercadopago.com/mla/account/credentials
- Perú: https://www.mercadopago.com/mla/account/credentials
- Chile: https://www.mercadopago.com/mla/account/credentials
- Uruguay: https://www.mercadopago.com/mla/account/credentials
Javascript
var MP = require ("mercadopago");
var mp = new MP ("ACCESS_TOKEN");
Crear un pago
Javascript
mp.post ({
"uri": "/v1/payments",
"data": payment_data
}).then (...);
Crear un customer
Javascript
mp.post ({
"uri": "/v1/customers",
"data": {
"email": "email@test.com"
}
}).then (...);
Obtener un customer
Javascript
mp.get ({
"uri": "/v1/customers/CUSTOMER_ID"
}).then (...);
Para más información visita la sección API reference.
Métodos genéricos
Puedes acceder a cualquier otro recurso de la API de Mercado Pago utilizando métodos genéricos:
La estructura básica es:
mp.method(request).then(...)
donde request
puede ser:
Javascript
{
"uri": "The resource URI, relative to https://api.mercadopago.com",
"params": "Optional. Key:Value object with parameters to be appended to the URL",
"data": "Optional. Object or String to be sent in POST and PUT requests",
"headers": "Optional. Key:Value object with custom headers, like content-type: application/x-www-form-urlencoded",
"authenticate": "Optional. Boolean to specify if the GET method has to authenticate with credentials before request. Set it to false when accessing public APIs"
}
Ejmplos:
Javascript
// Obtener un recurso con URL params opcionales. También puedes deshabilitar la autenticación para APIs públicas.
mp.get ({
"uri": "/resource/uri",
"params": {params},
"authenticate": true
});
// Crear un recurso con "data" y URL params opcionales.
mp.post ({
"uri": "/resource/uri",
"data": data,
"params": {params}
});
// Actualizar un recurso con "data"y URL params opcionales.
mp.put ({
"uri": "/resource/uri",
"data": data,
"params": {params}
});
// Eliminar un recurso con "data" y URL params opcionales.
mp.delete ({
"uri": "/resource/uri",
"params": {params}
});
Por ejemplo, si quieres obtener la lista de sitios disponibles (sin parámetros ni autenticación):
Javascript
mp.get ({
"uri": "/sites",
"authenticate": false
}).then (function (sites) {
console.log (sites);
});