cdgco / vwi-billing

Billing Plugin for Vesta Web Interface
https://vwi.cdgtech.one/#/plugins
GNU General Public License v3.0
5 stars 5 forks source link

Billing #3

Open OrdinaryJellyfish opened 6 years ago

OrdinaryJellyfish commented 6 years ago

Could you possibly add billing support? For example, the admin connects a Stripe account and gives each package a certain pricing, and the user selects a package, enters their credit/debit card details, and they are subscribed to the package and automatically charged each month. I might be able to help with this one if you'd like :smile:

cdgco commented 6 years ago

I do like the idea of adding a billing system although this encompasses a massive workload and would also require the addition of a database for either VWI or the billing system alone which I have tried to avoid up until this point for the simplicity of the installation and speed / security of the application.

The biggest problem I believe will be with record-keeping and the development and security required for money processing.

I have started drafting up a basic plan for accomplishing this, but this project will likely take months, and given that I am finishing up the school year and have yet to complete other features like full SSL integration, it seems that I will not reach this project for a while.

OrdinaryJellyfish commented 6 years ago

You don't need a database or need to worry about security if you do it right. Stripe holds the data on their end, and you can grab the data you need by associating the stripe customer with the vesta account using their email. Using Stripe Elements, you aren't receiving any data that needs to be held securely, as it is sent directly to stripe and you are sent back with a token used to charge the customer.

On Tue, May 29, 2018, 10:55 PM Carter Roeser notifications@github.com wrote:

I do like the idea of adding a billing system although this encompasses a massive workload and would also require the addition of a database for either VWI or the billing system alone which I have tried to avoid up until this point for the simplicity of the installation.

The biggest problem I believe will be with record-keeping and the development and security required for money processing.

I have started drafting up a basic plan for accomplishing this, but this project will likely take months, and given that I am finishing up the school year and have yet to complete other features like full SSL integration, it seems that I will not reach this project for a while.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/cdgco/VestaWebInterface/issues/34#issuecomment-393022474, or mute the thread https://github.com/notifications/unsubscribe-auth/Aff9jcPvWk92WN-pbaFeo-S3g3HaWwBIks5t3hhIgaJpZM4USKkB .

cdgco commented 6 years ago

Okay, while that does seem like it will be easier, I still believe a database would be the most efficient method of going about this, considering product / plan listings will have to be noted and linked to a price elsewhere. For example, if there was no list of products and prices then every plan would have to have a fixed price or every new plan that is created would automatically have the same price or no price.

While it could be achievable with a simple config file, every plan would have to have the same price, and every plan would be listed as a paid service while that may not be desirable. Also, thank to all the different countries where people use Vesta & VWI as well as all of the configuration and customization a billing service requires, it would be much easier to store this data in a database.

OrdinaryJellyfish commented 6 years ago

Stripe holds the billing and package data too :)

On Sat, Jun 2, 2018, 1:35 PM Carter Roeser notifications@github.com wrote:

Okay, while that does seem like it will be easier, I still believe a database would be the most efficient method of going about this, considering product / plan listings will have to be noted and linked to a price elsewhere. For example, if there was no list of products and prices then every plan would have to have a fixed price or every new plan that is created would automatically have the same price or no price.

While it could be achievable with a simple config file, every plan would have to have the same price, and every plan would be listed as a paid service while that may not be desirable. Also, thank to all the different countries where people use Vesta & VWI as well as all of the configuration and customization a billing service requires, it would be much easier to store this data in a database.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/cdgco/VestaWebInterface/issues/34#issuecomment-394107511, or mute the thread https://github.com/notifications/unsubscribe-auth/Aff9jTBLe1dykqZSd2nGoN8uyV2tXSRQks5t4tr6gaJpZM4USKkB .

cdgco commented 6 years ago

Again, that does make it easier, and depending on the complexity of their backend, which I do not know, it seems that it may be possible to do it without a db. But I still think if I go about this, I would add a database just to make listings and configuration easier. I will try to take a look at Stripe's API today and see how it works. Also, I was looking at other payment processors earlier, mainly stripe and braintree, but it seems like stripe would be the best option for this application, although braintree does have lower international fees which could be desirable as around half of my users are outside of the US.

OrdinaryJellyfish commented 6 years ago

Stripe does offer more ease of use and control, and they have thousands of currencies accepted. I guess there will need to be a database, but really only to hold simple things such as the Stripe plan associated with the Vesta package.

On Sat, Jun 2, 2018, 1:45 PM Carter Roeser notifications@github.com wrote:

Again, that does make it easier, and depending on the complexity of their backend, which I do not know, it seems that it may be possible to do it without a db. But I still think if I go about this, I would add a database just to make listings and configuration easier. I will try to take a look at Stripe's API today and see how it works. Also, I was looking at other payment processors earlier, mainly stripe and braintree, but it seems like stripe would be the best option for this application, although braintree does have lower international fees which could be desirable as around half of my users are outside of the US.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/cdgco/VestaWebInterface/issues/34#issuecomment-394108247, or mute the thread https://github.com/notifications/unsubscribe-auth/Aff9jWlSATjdEVKPbS5mAzC4XVxcZQEiks5t4t1fgaJpZM4USKkB .

SjamonDaal commented 6 years ago

I don't think that stripe is the best solution for this project. A billing system looks nice to add but there is already a vesta module for WHMCS, this is a way more efficient way to manage your clients, products and payments.

I think the time cdgco would spend for a billing system could be spend better.

Update: I see cdgco is already working on a billing plugin, never mind.