Skip to content
This repository has been archived by the owner on Feb 7, 2023. It is now read-only.

Payment

Guillermo Bandrés Catalina edited this page May 23, 2018 · 9 revisions

Payment development

Our current Paypal payment flow looks like this:

  1. User 1 wants to make a payment to User 2.
  2. User 1 fills the performance creation form and proceeds to pay through Paypal's Express Checkout API.
  3. User 1 pays the desired amount, plus Paypal's fee and our fee.
  4. We (currently [email protected]) receive the payment and keep our fee. The payment is stored in database.
  5. We make a payment to User 2 through Paypal's Payouts API for the original amount.
  6. We save the new payment and the performance in database.

For info on Paypal's REST API check the official Paypal documentation here: https://developer.paypal.com/docs/

We currently use Paypal's sandbox mode so both demo users and teachers can test that the payment system works without using actual money, but our code is prepared to switch to live mode when production begins. The payment credentials for the demo account are:

The password for all three accounts is "artinbar"

Each payment made through our app has the following fees:

  • Paypal's transaction fee: 3.5% of the paid amount plus 0,35€
  • Our own fee: 1€ on payments under 100€ and 1% for amounts over 100€

Both of these fees are paid by the payer.