Not donating due to transaction fees

The current site says:

To keep processing fees below 10%, we only charge your pending donations when the total goes beyond $3.79.

I assume that would still be the case.

That leads to some problems:

Consider a crowd of 5000 patrons donating 1$ each. The project gets nothing!

A patron would have to set a higher pledge or support multiple projects on the platform (assuming payments get combined, what is not always the case on Stripe).

Liberapay solves that by paying in advance until the minimum amount is reached.

That led to the situation that i payed for 12 years in advance. When i change the amount now, the project will get that amount in 12 years, which is not what i want. It should get it in the next payout. That is of course just an issue that can be fixed in the code.

That makes it more complicated for patrons.

Assuming that all 5,000 patrons sign up in the same month, the project will receive nothing for 3 months. Then on the 4th month each patron will reach $4 pending donation, high enough to charge, and the project will receive $20,000.

In practice, patron sign-ups will be spread out, so this particular scenario should not be too much of a problem. While there may be ups and downs on a month-to-month basis, it should be more or less flat.

There are two ways we could do this:

  1. Charge just the minimum in advance, and hold the money ourselves until it is paid out, to whichever projects. This is the wallet approach, and it is not really feasible due to financial regulations – we do not have the person bandwidth to become licensed as a money transmitter.

  2. Charge in advance, and “pre-pay” directly to projects, then don’t charge future months until the pre-paid amount has been “used up”. But what if I (a patron) decide to stop supporting a project? What happens to the pre-paid amount? I also am uncomfortable with giving projects “advances” like this. It feels like there is more potential for accidentally creating a system which could be abused (eg, along with changing goals).

Of course, the current way may be open to “abuse” in the other direction, for a patron who wants to pledge but then tries to avoid ever actually paying out. We could take steps to avoid this, like, if you un-pledge from all projects, your card is immediately charged even if it is under the fee limit. However, even if we did not do this, I think this “donation avoidance” is less problematic because any individual can only “game” the system out of $3.79 (whereas in the other direction, a project could do it to individuals at scale).

Moreover, I don’t really see what incentive a patron has to do this — the whole point of a donation system is… to donate. The idea of pledging but not donating is nonsensical; you might as well just not donate. Yes, a project could create fake users to drive up matching, but this is true (and an issue we will surely have to face at some point) regardless of the processing fee minimum.

A bigger problem, if we opt for the current approach (wait to charge) is that the credit card on file might become invalid for one reason or another before we can charge it, so the project loses out on donations. But remember: our goal is to increase donations by an order of magnitude or more. If we achieve that goal, it will not matter, even if something as crazy as 10-20% of donations are never processed due to this.

2 Appreciations

That’s very bad for a project to budget. People have to eat and pay rent. No income for 3 months is very hard!

But i guess that is a resonable solution.

1 Appreciation