diff --git a/client/index.html b/client/index.html index a5ecde8..947865c 100644 --- a/client/index.html +++ b/client/index.html @@ -7,7 +7,7 @@ - +
diff --git a/client/js/index.js b/client/js/index.js index c9776a4..105e423 100644 --- a/client/js/index.js +++ b/client/js/index.js @@ -34,15 +34,21 @@ document.getElementById("checkout-btn").addEventListener("click", function() { //Create preference when click on checkout button function createCheckoutButton(preference) { - var script = document.createElement("script"); - // The source domain must be completed according to the site for which you are integrating. - // For example: for Argentina ".com.ar" or for Brazil ".com.br". - script.src = "https://www.mercadopago.com.ar/integrations/v1/web-payment-checkout.js"; - script.type = "text/javascript"; - script.dataset.preferenceId = preference; - document.getElementById("button-checkout").innerHTML = ""; - document.querySelector("#button-checkout").appendChild(script); + // For example: for Argentina "es-AR" or for Brazil "es-BR". + const mp = new MercadoPago('PUBLIC_KEY', { + locale: 'es-PE' + }); + // Inicializa el checkout + mp.checkout({ + preference: { + id: preference + }, + render: { + container: '#button-checkout', // Indica dónde se mostrará el botón de pago + label: 'Pagar', // Cambia el texto del botón de pago (opcional) + } + }) } //Handle price update diff --git a/server/node/README.md b/server/node/README.md index 3fe4be6..39bede8 100644 --- a/server/node/README.md +++ b/server/node/README.md @@ -6,7 +6,8 @@ - Node v10 or higher - Read our [testing instructions](https://www.mercadopago.com/developers/en/guides/online-payments/checkout-pro/test-integration) - Setup your credentials: - - Private Access Token on server-side [`server.js`](https://github.com/mercadopago/checkout-payment/tree/master/server/node/server.js#L6) + - Public Key on client-side and locale [`index.js`](https://github.com/mercadopago/checkout-payment-sample/tree/master/client/js/index.js#L39) + - Private Access Token on server-side [`server.js`](https://github.com/mercadopago/checkout-payment-sample/tree/master/server/node/server.js#L6) ### How to run it - npm install diff --git a/server/node/package-lock.json b/server/node/package-lock.json index 677baf3..682fe78 100644 --- a/server/node/package-lock.json +++ b/server/node/package-lock.json @@ -20,12 +20,14 @@ } }, "ajv": { - "version": "4.10.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.10.3.tgz", - "integrity": "sha1-Pk/qlnWxV954iLgN0O1zW4PyjhE=", + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "requires": { - "co": "^4.6.0", - "json-stable-stringify": "^1.0.1" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, "ansi-align": { @@ -414,11 +416,6 @@ "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", "dev": true }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" - }, "collection-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", @@ -1047,19 +1044,6 @@ "requires": { "ajv": "^6.12.3", "har-schema": "^2.0.0" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - } } }, "has-flag": { @@ -1401,24 +1385,11 @@ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "requires": { - "jsonify": "~0.0.0" - } - }, "json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" - }, "jsprim": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", @@ -1500,16 +1471,15 @@ "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" }, "mercadopago": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/mercadopago/-/mercadopago-1.5.1.tgz", - "integrity": "sha512-x9G/4b+dIMNemVA0SCEF/+BAByeoxQi9UfDbe502slYgKYsBy4oNYnoMge3zLMe1O/Rw236u7ETnM2K2cqp9rA==", + "version": "1.5.8", + "resolved": "https://registry.npmjs.org/mercadopago/-/mercadopago-1.5.8.tgz", + "integrity": "sha512-N3mEL4CvTae4dJ23vDRzfvPQR0tkGdR3TMa8jqqTbNhdo33NGs3LCCw1O4z6flsI6yzE4UEHy+JtEjJp9qAZyg==", "requires": { - "ajv": "4.10.3", + "ajv": "^6.12.3", "bluebird": "3.4.7", "moment": "^2.24.0", "request": "^2.88.0", "request-etag": "2.0.3", - "user": "0.0.0", "uuid": "3.0.1" } }, @@ -2606,9 +2576,9 @@ } }, "uri-js": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.0.tgz", - "integrity": "sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "requires": { "punycode": "^2.1.0" } @@ -2634,11 +2604,6 @@ "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", "dev": true }, - "user": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/user/-/user-0.0.0.tgz", - "integrity": "sha1-8n8bI/xRHyqO+kDbVc+6Ejgk4Co=" - }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", diff --git a/server/node/package.json b/server/node/package.json index 9c83642..2449b61 100644 --- a/server/node/package.json +++ b/server/node/package.json @@ -9,7 +9,7 @@ }, "dependencies": { "express": "4.17.1", - "mercadopago": "^1.5.1" + "mercadopago": "^1.5.8" }, "devDependencies": { "nodemon": "1.18.4"