Payments plugin
See original GitHub issueAll 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:
- Increased time/cost to implement an app on Vendure
- Duplicated work re-implementing e.g. a Stripe integration that could be shared
- 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
- The real-world-vendure repo has a working (but perhaps not full-featured) Braintree integration.
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:
- 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.
- 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:
- Wikipedia List of online payment service providers
- Saleor integrations
- Sylius store payments section
- Magento Marketplace payments section
- Shopware payment integrations
Here is an initial list of candidates. Please comment with suggestions or feedback for this list!
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
- Get feedback on the above suggestions
- Finalize initial integrations (max 4)
- Find contributors who would like to work on one of the selected integrations
Issue Analytics
- State:
- Created 2 years ago
- Reactions:11
- Comments:15 (12 by maintainers)
Top GitHub Comments
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.
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.