💳 A plugin to enable as a payment provider for Vendure

Usage no npm install needed!

<script type="module">
  import vendurePagarmePlugin from '';


Vendure Plugin

npm (scoped) semantic-release Crowdin

💳 A plugin to enable as a payment provider for Vendure. Its a WORK IN PROGRESS. In issues you can find what need to be done.

🌟 Feature

This plugin have inside it a lot of stuff:

  • A PaymentMethodHandler to createPayments and configure transaction
  • A PagarmePostbackController controller to receive postback request from
  • A custom field pagarmePaymentMethod on Order to change the Payment Method BEFORE create a payment. You can define to calculate discount on Order based on that.
  • A pagarmeBoletoPromotionAction and pagarmeCreditCardPromotionAction to create promotion based on what payment method selected by the user
  • Refund credit card payments in Admin UI

🚩 Roadmap

  • Add unit and E2E test
  • Cronjob for cancel order after some time
  • CRUD for save bank information for refund
  • CRUD for save credit card's ID to create transactions based on that

⚙️ Install

1. Install and configure Vendure

Here you can find out how to install

2. Install the package

npm install vendure-pagarme-plugin --save

3. Add the plugin in Vendure configuration

import { PagarmePlugin } from 'vendure-pagarme-plugin';
const config: VendureConfig = {
  plugins: [

4. Add this package in your storefront (Optional)

To create a payment with this plugin you will need to fill with metadata in createPayment mutation. If you use Typescript in your storefront you can use the PagarmePaymentMethodMetadata type to know witch fields that will be need. 😁

import { PagarmePaymentMethodMetadata } from 'vendure-pagarme-plugin';

5. Configure

You will need to enable and configure the options to make work. You can edit this in Payment Method section in Vendure Admin UI

6. Enjoy!

It's done!

😍 Do you like?

Please, consider supporting my work as a lot of effort takes place to create this repo! Thanks a lot.

Buy Me A Coffee

🌐 Localization

This project localization its hosted in Crowdin.

❗️ License