Skip to content

Instantly share code, notes, and snippets.

@muZk
Created October 5, 2020 01:16
Show Gist options
  • Save muZk/e11931b3df6aab7c7dd6dd53058c3e41 to your computer and use it in GitHub Desktop.
Save muZk/e11931b3df6aab7c7dd6dd53058c3e41 to your computer and use it in GitHub Desktop.
MercadoPago React
import React, { useEffect, useState } from 'react';
import { useParams } from "react-router-dom";
const FORM_ID = 'payment-form';
export default function Product() {
const { id } = useParams(); // id de producto
const [preferenceId, setPreferenceId] = useState(null);
useEffect(() => {
// luego de montarse el componente, le pedimos al backend el preferenceId
axios.post('/api/orders', { productId: id }).then((order) => {
setPreferenceId(order.preferenceId);
});
}, [id]);
useEffect(() => {
if (preferenceId) {
// con el preferenceId en mano, inyectamos el script de mercadoPago
const script = document.createElement('script');
script.type = 'text/javascript';
script.src =
'https://www.mercadopago.cl/integrations/v1/web-payment-checkout.js';
script.setAttribute('data-preference-id', preferenceId);
const form = document.getElementById(FORM_ID);
form.appendChild(script);
}
}, [preferenceId]);
return (
<form id={FORM_ID} method="GET" />
);
}
@scherpablo
Copy link

  • cuando presiono el boton pagar del checkout pro , me sale la suma de los precios de los productos, pero no la lista de items a que estos corresponden, esto es asi? o es un error en la integracion?

Hola, tengo el mismo problema y googleando encontré ete post. Pudiste solucionarlo?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment