GithubHelp home page GithubHelp logo

marcosgomesneto / medusa-payment-mercadopago Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 0.0 22 KB

Mercadopago Transparent Checkout Provider for Meduas Commerce accept Credit Card and PIX

TypeScript 100.00%
credit-card medusa-plugin mercadopago pix medusa-payment transparent-checkout

medusa-payment-mercadopago's Introduction

npm package

Mercado Pago Transparent Checkout for MedusaJS

Receive payments on your Medusa commerce application using Mercadopago Transparent Checkout.

Features

  • Authorize payments with Credit Card using Transparent Checkout.
  • Authorize payments with PIX (Brazilian) using Transparent Checkout.
  • Support Webhooks
  • Webhook security validation

Prerequisites

Contribute with:


How to Install

1. Run the following command in the directory of the Medusa backend:

#Using npm
npm install @marcosgn/medusa-payment-mercadopago

#Using yarn
yarn add @marcosgn/medusa-payment-mercadopago

2. Set the following environment variables in .env:

MERCADOPAGO_ACCESS_TOKEN=APP_USR...
MERCADOPAGO_WEBHOOK_URL=http....

# Optional, but recommended in production
MERCADOPAGO_WEBHOOK_SECRET=5573326353c523ebbc84af5ad376b860ad5225339d05535c804974b2393d0f30

Generate your token here: Mercadopago developers

3. In medusa-config.js add the following at the end of the plugins array:

const plugins = [
  // ...
  {
    resolve: `@marcosgn/medusa-payment-mercadopago`,
    options: {
      accessToken: process.env.MERCADOPAGO_ACCESS_TOKEN,
      webhookSecret: process.env.MERCADOPAGO_WEBHOOK_SECRET,
      webhookUrl: process.env.MERCADOPAGO_WEBHOOK_URL,
    },
  },
];

Test the Plugin

1. Run the following command in the directory of the Medusa backend to run the backend:

#Using npm
npm run dev

#Using
yarn dev

2. Enable Mercadopago Credit Card or/and Pi in a region in the admin panel. You can refer to this User Guide to learn how to do that. Alternatively, you can use the Admin APIs.

3. Place an order using a storefront or the Store APIs. You should be able to use Mercadopago as a payment method.

Storefront Usage

Transparent checkout documentation for storefront Mercadopago Docs

Credit Card Payment

const client = useMedusaClient();

//Set provider
await client.carts.setPaymentSession(cartId, {
  provider_id: "mercadopago-creditcard",
});

//Update required props in payment session
await client.carts.updatePaymentSession(cartId, paymentProviderId, {
  data: {
    token: "...", //Credit Card Token
    installment: "1",
    cpfCnpj: "000000000000",
    holderName: "John Doe",
    identificationType: "CPF",
    issuerId: "...",
    paymentMethodId: "master",
  },
});

//Complete and capture payment
const response = await client.carts.complete(cartId);

Pix Payment

const client = useMedusaClient();

await client.carts.setPaymentSession(cartId, {
  provider_id: "mercadopago-pix",
});

//Complete and recive PIX Qrcode
const response = await client.carts.complete(cartId);

//Copy and Paste Code
const copyPasteCode = response.data.payment_session.data.qrCode;
//QRCode image in base64 format
const base64Image = response.data.payment_session.data.qrCodeBase64;

medusa-payment-mercadopago's People

Contributors

marcosgomesneto avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.