Inicio
Documentação
Recursos
Parcerias
Comunidade

Recursos

Confira as atualizaçÔes das nossas soluçÔes e do funcionamento do sistema ou peça suporte técnico.

Parcerias

Conheça nosso programa para agĂȘncias ou desenvolvedores que oferecem serviços de integração e vendedores que desejam contratĂĄ-los.

Comunidade

Fique por dentro das Ășltimas novidades, peça ajuda a outros integradores e compartilhe seu conhecimento.

Client-side - Web Tokenize Checkout V2 - Mercado Pago Developers

Busca inteligente powered by OpenAI 

Como migrar do Web Tokenize Checkout V2

Se sua integração estiver usando a V2 do Web Tokenize Checkout, siga os passos abaixo para migrar para o Checkout Bricks.

Receber pagamentos de cartĂŁo

Client-Side

  1. Encontre na sua estrutura atual o form que chama o Web Tokenize Checkout.

HTML

<div class=tokenizer-container>
<script>
// Agrega credenciales de SDK 
const mp = new MercadoPago('PUBLIC_KEY', {locale: 'es-AR'});
 
// Inicializa el Web Tokenize Checkout
mp.checkout({
  tokenizer: {
    totalAmount: 4000,
    backUrl: 'https://www.mi-sitio.com/procesar-pago'
  },
 render: {
    container: '.tokenizer-container', // Indica dĂłnde se mostrarĂĄ el botĂłn
    label: 'Pagar' // Cambia el texto del botĂłn de pago (opcional)
 }
});
</script>
</div>
  1. Substitua esse formulĂĄrio pela tag que conterĂĄ o Bricks de Card Payment.

HTML

<div id="paymentBrick_container"></div>
  1. Adicione o script responsĂĄvel por carregar o Bricks.

javascript

 
   const mp = new MercadoPago('YOUR_PUBLIC_KEY');
const bricksBuilder = mp.bricks();
const renderPaymentBrick = async (bricksBuilder) => {
   const settings = {
       initialization: {
           amount: 100, //valor do processamento a ser realizado
           payer: {
           email: '<PAYER_EMAIL_HERE>',
       },
       },
       style: {
           theme: 'default' // | 'dark' | 'bootstrap' | 'flat'
       },
       callbacks: {
           onReady: () => {
           // callback chamado quando o Brick estiver pronto
           },
           onSubmit: ({paymentType, formData}) => {
           // callback chamado o usuĂĄrio clicar no botĂŁo de submissĂŁo dos dados
           // ejemplo de envĂ­o de los datos recolectados por el Brick a su servidor
           return new Promise((resolve, reject) => {
               fetch("/processar-pago", {
                   method: "POST",
                   headers: {
                       "Content-Type": "application/json",
                   },
                   body: JSON.stringify(formData)
               })
               .then((response) => {
                   // receber o resultado do pagamento
                   resolve();
               })
               .catch((error) => {
                   // lidar com a resposta de erro ao tentar criar o pagamento
                   reject();
               })
               });
           },
           onError: (error) => {
           // callback chamado para todos os casos de erro do Brick
           },
       },
   };
   window.cardPaymentBrickController = await bricksBuilder.create('payment', 'paymentBrick_container', settings);
};
renderPaymentBrick(bricksBuilder);
  1. No callback de onSubmit do Brick, adicione a mesma URL que utilizava no parñmetro action do seu formulário. É para ela que o Brick enviará os dados do formulário de pagamento.

Usuårios e cartÔes

Client-Side

Nota
O processo de criação de usuårios e cartÔes não tem nenhuma diferença entre o Web Tokenize Checkout e Checkout Bricks.

Receber o pagamento de um usuårio com cartÔes salvos

Para receber o pagamento de um usuårio com cartÔes salvos, é necessårio passar o usuårio e os cartÔes para o Bricks, que realizarå o processo de tokenização e enviarå no callback de onSubmit as informaçÔes para a geração do pagamento.

  1. Encontre na estrutura atual de sua integração o formulårio que chama o Web Tokenize Checkout.

HTML

<script>
  mp.checkout({
    tokenizer: {
        totalAmount: 4000,
        backUrl: 'https://www.mi-sitio.com/process',
        savedCards: {
            cardIds: '1518023392627,1518023332143' // IDs de las tarjetas
            customerId: '209277402-FqRqgEc3XItrxs' // Tu customer ID
        }
    },
    render: {
        container: ‘.tokenizer-container’,
        label: ‘Pagar’
    }
  });
</script>
  1. Substitua esse formulĂĄrio pela tag que conterĂĄ o Brick de Card Payment.

HTML

<script>
   const mp = new MercadoPago('YOUR_PUBLIC_KEY');
const bricksBuilder = mp.bricks();
const renderCardPaymentBrick = async (bricksBuilder) => {
   const settings = {
       initialization: {
           amount: 100, //valor do processamento a ser realizado
           payer: {
           customer_id: "209277402-FqRqgEc3XItrxs",
	card_ids: [“1518023392627”,”1518023332143”]
       },
       },
       style: {
           theme: 'default' // | 'dark' | 'bootstrap' | 'flat'
       },
       callbacks: {
           onReady: () => {
           // callback chamado quando o Brick estiver pronto
           },
           onSubmit: ({paymentType, formData}) => {
           // callback chamado o usuĂĄrio clicar no botĂŁo de submissĂŁo dos dados
           // ejemplo de envĂ­o de los datos recolectados por el Brick a su servidor
           return new Promise((resolve, reject) => {
               fetch("/processar-pago", {
                   method: "POST",
                   headers: {
                       "Content-Type": "application/json",
                   },
                   body: JSON.stringify(formData)
               })
               .then((response) => {
                   // receber o resultado do pagamento
                   resolve();
               })
               .catch((error) => {
                   // lidar com a resposta de erro ao tentar criar o pagamento
                   reject();
               })
               });
           },
           onError: (error) => {
           // callback chamado para todos os casos de erro do Brick
           },
       },
   };
   window.cardPaymentBrickController = await bricksBuilder.create('cardPayment', 'cardPaymentBrick_container', settings);
};
renderCardPaymentBrick(bricksBuilder);
</script>

Com essa configuração, serå possível realizar o processamento do pagamento com os cartÔes salvos.