Open alanna opened 3 years ago
I've worked on this topic a few times and, unfortunately, it's impossible to prevent completely with the current design of the contribution flow. Which payment methods are available depends on two things:
So in this flow, if you pick an interval, you would be able to create a recurring contribution from another collective under the same host. That's why we cannot prevent this issue 100% of the time, except by hiding/disabling options in the step profile.
That's actually something we can do: :arrow_right: if a recurring contribution is set and only cross-collective contributions can be used, disable all the other profiles and show a tooltip like This collective only supports cross-collective contributions when contributing recurrently. Please pick another collective under the same host
.
If I go to https://opencollective.com/test-abcd/donate with my account, I can only do one-time contributions. So the good news is: you only see this because you're a collective admin. There's a bug though: this collective is the only one under this host, so you shouldn't be presented with this option, I'll push a fix for that now.
TLDR;
I just hit this again with Ersilia.
I chose a custom contribution from their main page while being logged into my main account.
I don't see any options for frequency. I am trying to give $100 one-time so I put the amount in.
I select Open Collective as the contributor profile.
Then I see this:
I've asked the admin to check their receiving money
settings but really this situation shouldn't be allowed to happen ever.
@Betree this is an Independent Collective and I'm trying to pay by credit card but could do bank transfer if needed. I don't understand why this is happening based on what you said above.
I've asked the admin to check their
receiving money
settings but really this situation shouldn't be allowed to happen ever.
@alanna : Now it seems to be working as they seem to have configured the bank account under the receiving money
section. If they haven't configured both stripe or bank transfers this shows up and ideally I think we should stop the flow in the beginning for custom contributions (for other tiers we already do this) when there's no payment methods configured.
@Betree : Let me know if you agree with this and I can look into adding a condition to stop the flow in the beginning so that we show the There is no payment provider available
warning at the beginning of the flow for custom contributions when there's no payment methods configured. 🤔
I don't see any options for frequency. I am trying to give $100 one-time so I put the amount in.
This is because only the bank transfer method is configured as the payment method and thus recurring payments are not supported.
Yes that makes sense. If a host has no payment methods configured, we should disable contributions so this does not happen.
This case was related to #4772 which is another way we can help this not occur.
@Betree : I have make a PR above which basically shows the same contribution blocker warning if there's no payment method configured on the host regardless of whether it's a custom contribution or a tier contribution.
@alanna I think this is part of what was described there:
That's why we cannot prevent this issue 100% of the time, except by hiding/disabling options in the step profile. That's actually something we can do: arrow_right if a recurring contribution is set and only cross-collective contributions can be used, disable all the other profiles and show a tooltip like This collective only supports cross-collective contributions when contributing recurrently. Please pick another collective under the same host.
We should have disabled Open Collective
as a contributing profile, because there were no payment providers available for this profile. A possible explanation would be that the system thought that you could contribute from another account's balance, which seems impossible since this collective is self-hosted. We need more digging to understand what happens.
@SudharakaP That won't work, because which payment methods are available depends on the contributing profile, which cannot be guessed from the first step. See https://github.com/opencollective/opencollective/issues/4669#issuecomment-920799739. Your PR would prevent contributing to a collective from another collective's balance hosted under the same host if it doesn't have any payment providers set up.
@SudharakaP That won't work, because which payment methods are available depends on the contributing profile, which cannot be guessed from the first step. See #4669 (comment). Your PR would prevent contributing to a collective from another collective's balance hosted under the same host if it doesn't have any payment providers set up.
Ah, that makes sense; didn't thought about that. I've closed the PR for now. 🤔
I'm fixing another problem that trigger this situation: when contributing to a tier with a flexible interval, we used to default to monthly
regardless of the supported payment providers, while hiding the interval picker. As a result, users ended up being prompted with the No payments available
message because they had a monthly interval selected, with no ability to change it.
The new behavior is: when contributing to a tier with a flexible interval, if the host does not support any recurring payment methods, set the contribution interval to null
(one-time contribution).
I found another way this occurs.
If a Collective's host has no payment methods anymore, contributions should be deactivated or its tiers should be hidden or something.
I am having the same trouble with "there is no payment provider available" when there clearly is - I have tried recurring & non-recurring, donation & subscription - in fact, every possible formulation. There is a bank account associated with our own Fiscal Host, so I cannot understand why this is. If one waits long enough, it eventually opens the Checkout page, but it seems there is a bug in the system, & this will confuse people attempting to pay their Membership Fee. Please investigate & resolve. Thank you.
Another issue I have is that the page does not open in a separate page to the referring page, which it is set to do with target=blank. All other referred pages on our website work as they should, so this is a minor, but irritating issue. Thanks for your assistance.
@Tizwoz could you share your collective URL with support@opencollective.com? This issue is not fully resolved, but it's overall well understood, and though the UX is not clear there's a good chance that something is not set up properly. One of the reasons could be, for example, that bank accounts don't work with recurring payments (#2734) so you'd see this error message if you try to contribute to a tier that enforces a recurring contribution.
This is not a nice screen to see after you've gone through the whole process to set up a contribution and you are on the last step:
This shows up when someone is trying to do a recurring contribution but the Collective's Host only has bank transfer available, which is one-time only. And also if the Host has no payment methods available.
We should stop this earlier in the process, so the user does not reach this screen. If there's only bank transfer, then all the recurring options should automatically be disabled and not shown to users. If there are no payment methods, contributions should be disabled.