BreakOutEvent / breakout-backend

The backend for BreakOut
GNU Affero General Public License v3.0
12 stars 0 forks source link

Add support for tracking and payment of the registration fee #81

Open florianschmidt1994 opened 8 years ago

florianschmidt1994 commented 8 years ago

The MVP in this case is to support generating tokens which can be used to check which participants payed for their team via different payment services. The most important method here it via bank transfer. The method of tracking payments with tokens should also be usable for the donations, if those should at some point run on our own payment system. The next steps are adding support for other payment methods, such as Paypal or CC. First POCs showed that Braintreepayment has a nice to use SDK which should allow an easy way of providing support for Paypal and CC

florianschmidt1994 commented 8 years ago

One part of this is #67

florianschmidt1994 commented 8 years ago

Idea for the process of paying the registration fee would be something along the lines

  1. The participant (creator) creates a new team
  2. An invoice will be added to the newly created team
  3. Anywhere along this process can another participant (invitee) be invited to this team and join it
  4. Any of these two participants can do a payment which will added to the invoice: The current rule for splitting the invoice is either 1x the full amount or 2x half of the amount. These rules should be implemented in a flexible way to allow the logic to be reused for further payment processes.
  5. If the sum of all payments matches the invoice, the invoice and therefore the registration fee of the team will be marked as "payed"

Remark: I don't think we should add the amount of the registration fee as part of the source code and rather put it in the ignored config files. I also wouldn't disclose the concrete amount anywhere in the documentation or issues

Any opinions @Ardobras @thepiwo ?

florianschmidt1994 commented 8 years ago

Payment should only be allowed when a team has the required two members

thepiwo commented 8 years ago

i like this idea

florianschmidt1994 commented 8 years ago

I will remove this from milestone 1.0 as Braintree Payments are of the table now and therefore all payments will be added by administrators by hand.