question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

All e-commerce apps need to accepts payments of some kind. Right now we don’t have any official integrations, so every project has to implement their own. This has the following negative results:

  1. Increased time/cost to implement an app on Vendure
  2. Duplicated work re-implementing e.g. a Stripe integration that could be shared
  3. Reliance on 3rd-party plugins which might not be well-maintained or tested.

Describe the solution you’d like Vendure should ship with support for some of the more popular payment providers. This would be housed in a @vendure/payments-plugin npm package, and developed as part of this monorepo.

This package will contain a number of plugins, one for each supported payment provider.

Prior Art

existing 3rd-party payment plugins

Provider Author Repo Last updated notes
Mollie @martijnvdbrug link 2 months ago
Mollie @stefanvanherwijnen link 6 months ago
Braintree @artcoded-dev link 17 days ago extracted from real-world-vendure
PayUMoney @landofcoder link 12 months ago
Stripe @c0ldfront link 12 months ago
Stripe @gaiusmathew link 12 days ago Based on the c0ldfront repo
RazorPay @Deathwish98 link 2 months ago
Pagar.me @jonyw4 link 10 months ago

Supported Payment Providers

There are many, many payment providers. We cannot support them all, so we need to carefully choose in order to be able to keep this package maintainable. The criteria for inclusion would be:

  1. Popularity - it makes the most sense to support the most commonly-used providers. Popularity can be highly regional, but we should lean towards providers which are popular over the largest territory.
  2. Simplicity - the quality of APIs and complexity of features should be taken into account. It is easier to maintain a simple integration where the vendor’s SDK does most of the work. The less integration code needed, the better. The developer docs need to be clear, high-quality and up-to-date.

References:

Here is an initial list of candidates. Please comment with suggestions or feedback for this list!

Provider Website Coverage
Stripe https://stripe.com EU, N. America, Brazil, India, Australia, Japan (46 countries, see https://stripe.com/global)
Paypal https://www.paypal.com Worldwide (https://www.paypal.com/webapps/mpp/country-worldwide)
Braintree https://www.braintreepayments.com EU, N. America, Australia, some Asia (https://www.braintreepayments.com/at/country-selection)
Mollie https://www.mollie.com EU, UK & Switzerland (https://help.mollie.com/hc/en-us/articles/115002116105-Can-I-use-Mollies-services-in-my-country-)
Klarna https://www.klarna.com/ Sweden, Norway, Finland, Denmark, Germany, Austria, the Netherlands, Belgium, Switzerland, UK & USA (https://www.klarna.com/uk/business/merchant-support/in-which-countries-can-i-use-klarna/)
Razorpay https://razorpay.com/ India
Adyen https://www.adyen.com/ EU, N.America, Brazil, Australia, Singapore (https://www.rapyd.net/blog/what-are-countries-are-supported-by-adyen)
Checkout.com https://www.checkout.com/ EU, UK, USA, M. East & more (https://www.checkout.com/payment-methods)
AliPay https://intl.alipay.com/ China. Cannot find dev docs.
WeChat Pay https://pay.weixin.qq.com/index.php/public/wechatpay China. Dev docs seems to be a PDF

Did you work with any of these providers’ APIs/SDKs? What’s your feedback?

My initial feeling is to support: Stripe, Paypal, Braintree, Mollie. Reasoning:

  • At least 1 provider option for almost all parts of the world
  • All have high-quality docs & developer APIs.
  • All cover a broad range or territories

Action plan

  1. Get feedback on the above suggestions
  2. Finalize initial integrations (max 4)
  3. Find contributors who would like to work on one of the selected integrations

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Reactions:11
  • Comments:15 (12 by maintainers)

github_iconTop GitHub Comments

4reactions
gaiusmathewcommented, Sep 16, 2021

Hi, @michaelbromley, I’m up for PayPal and stripe integration. I’ve already integrated PayPal and Stripe into our project and vendure, so I hope I can contribute to PayPal and Stripe. I’ve also created PayPal and Stripe plugins separately and I’ll push the updated vendure-plugins this week.

Let me know if I can be of further assistance.

3reactions
michaelbromleycommented, Nov 30, 2021

Status update: Mollie & Braintree plugins are now done and ready to be released in v1.4.

Stripe & Paypal can be added to a later release.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Home - Payments Plugin for Stripe
The Accept Stripe Payments plugin allows you to accept credit card payments via the Stripe payment gateway on your WordPress site easily.
Read more >
WooCommerce Payments
Payments made simple, with no monthly fees – designed exclusively for WooCommerce stores. Manage transactions from the comfort of your store.
Read more >
Plugins categorized as payment - WordPress.org
Easily accept payments on your WordPress site via Stripe payment gateway. ... Midtrans-WooCommerce is plugin for Midtrans, Indonesian Payment Gateway.
Read more >
11 Best WordPress Payment Plugins | Powered by Stripe and ...
WP Simple Pay comes with an admirable solution for making the payment system more user-friendly. You can conveniently integrate the plugin to your...
Read more >
7+ Best Stripe Payment Plugins for WordPress Reviewed
The Best Stripe Payment Plugins for WordPress · 1. WPForms · 2. WP Simple Pay Pro · 3. Easy Digital Downloads · 4....
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found